25
Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes

Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

  • Upload
    others

  • View
    10

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

Ravikumar Alluboyina

Senior Product Architect, Robin.io

Data Protection for Application Running on Kubernetes

Page 2: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Spectrum of Applications

Web Apps SQL Databases NoSQL Databases Big Data

StatelessApplications

StatefulApplications

Page 3: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Application Composition

Deployment Replica set

Pod ServicePVC

ConfigMap

Secret

https://github.com/helm/charts/tree/master/stable/mysql

Page 4: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Application Composition .. The complexity

https://github.com/helm/charts

MySQL MariaDB MongoDB

ElasticSearch ELK Stack

Page 5: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Data Protection

› Environment› Highly virtualized using containers› Highly consolidated› Multiple abstraction layers (Kubernetes, Docker, CRI, CNI, CSI)› Large scale› Multi Datacenter or Geo distributed› Distributed applications

› Protect from› Poor resource planning› User errors› Hardware failures / Data center failures

Page 6: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Resource Planning

Page 7: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Cassandra Deployment

data2 data3

CSI

Software Defined Storage

data1Replica-1

Replica-2Replica-3

Still resilient to disk failure ???

Page 8: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Let’s protect Cassandra …

data2 data2

CSI

Software Defined Storage

data1Replica-1

Replica-2Replica-3

Page 9: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Compute anti-affinity

DN1 DN2DN3

Location AwarenessRack / DC

Storage & Compute Affinity

ZK2ZK1ZK3

IO patternsQoS

CM

High Availability

RACK-1

RACK-2

Hadoop Deployment

NM NMGWGW

HBase

Hive

Kudu KuduKudu

KuduM KuduM

KuduMSolr

Page 10: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Application Planning Challenges

› Data-heavy applications deal with Multiple volumes› Every volume will have different IO characteristics› Consolidation (packing) makes the problem even harder› Application Replication (Cassandra / Mongo) makes the allocation tricky

What are we looking for…..???

Application Aware Storage Provisioning

Page 11: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.ioConfidential – Restricted Distribution

User Errors

Page 12: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Let us talk Data Protection

Deployment Replica set

Pod ServicePVC

ConfigMap

SecretPVC PVC PVC PVC

Timeline

DB Checkpoints

Volume Checkpoints

Page 13: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Volume snapshots

Deployment Replica set

Pod ServicePVC

ConfigMap

Secret

PVC

Secret

PVCPVC PVC

ConfigMap

PVCPVC PVCPVC

Rollback to this snapshotIn

itial

snap

shot

Data

chan

ges

Pass

wor

d Ch

ange

Conf

ig ch

ange

s

Page 14: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.ioConfidential – Restricted Distribution

What is the problem here ?

Page 15: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Volume snapshots

Deployment Replica set

Pod ServicePVC

ConfigMap

SecretSecret

PVC

ConfigMap

PVCPVCPVCConfig Drift !!!

Page 16: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Let us fix it …

PVC

Deployment Replica set

Pod ServicePVC

ConfigMap

Secret

PVCPVC

Secret

PVC

PVC

PVC

ConfigMap

PVC

PVC

PVC

Initi

al sn

apsh

ot

Data

chan

ges

Pass

wor

d Ch

ange

Conf

ig ch

ange

s

Page 17: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Recap (Data Protection)

› Snapshots and backups are not just data dumps› Not all application have checkpoints and snapshots› Data snapshots are prone to config drift issues› Consistency group is a very critical construct› Application buffers / FS page cache will need to be flushed to disk

What are we looking for…..???

Application Snapshots

Page 18: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

ROBIN

Google GKE/Anthos

Protect an entire Application, not just Storage Volumes

app2-snap2app1-snap2app1-snap1

APP 1

LocalBackup Target

Remote (Cloud)Backup Target

APP 2

1

2

4

$ robin snapshot app1 snap1

1 Maintain periodic checkpoints of your entire app with data

$ robin rollback snap1 app1

2 Rollback entire app+data to healthy state to recover from corruptions or user errors

$ robin backup snap1 target

3 Backup entire app+data as into external backup targets

$ robin restore target snap1

4 Restore entire app+data to healthy state from catastrophic hardware and datacenter failures

3 ›ROBIN Backups are fully self-contained

›Entire app resources can be restoredin the same or different data centeror cloud even if the source iscompletely destroyed

1 DATA PersistentVolumeClaims

2 CONFIG ConfigMap, Secret, Labels, …

3 METADATA Pods, StatefulSets, Services, …

Page 19: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.ioConfidential – Restricted Distribution

Hardware / Site Failures

Page 20: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Application Backups

› Why do we need this?

› Hardware refresh› Datacenter migration› Vendor lock-in› Performance› Test / Dev setups› Upgrade firedrills

Page 21: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

Application Backups

PVC

PVC

PVC

PVC

PVC

PVC

Initi

al

snap

shot

Data

ch

ange

s

Pass

wor

d Ch

ange

Conf

ig

chan

ges

PVC

PVC

PVC

PVC

PVC

PVC

Initi

al

snap

shot

Data

ch

ange

s

Pass

wor

d Ch

ange

Conf

ig

chan

ges

Time: • Avoid full rehydration to Block• Rehydrate on demand

Cost:• Use Object store (Cheap)• Send differentials

Page 22: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

CLOUD OBJECT STORE(S3, GCS, AzureBlob)

On-prem

Google Anthos

Collaborate on Applications using a Git-like workflow

Snapshot 13 months ago

Snapshot 23 days ago

Snapshot 3yesterday

ROBIN

Google Cloud Platform

GKE

ROBIN

AWS

Google Anthos

ROBIN

STEP1: robin snapshot mysql mysql-snap

STEP3: robin push mysql-snap gcs://bucket

STEP4: robin pull gcs://bucket/mysql-snap mysql

APP

APP

APP

STEP2: robin clone mysql-snap testdev-mysqlCLONE

Use Cases:• Clone databases from prod to dev/test for running reports• Validate upgrades before applying to production• Enable git like push/pull for geo-dispersed teams to collaborate

Page 23: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

Robin Architecture Overview

VirtualNetworking

App-awareStorage

Robin’s built-in enterprise-grade

storage stackSnapshots, Clones, QoS,

Replication, Backup,Data rebalancing, Tiering,

Thin-provisioning,Encryption, Compression

Built-in flexible networkingOVS, Calico,VLAN, Overlay networking,Persistent IPs

Application Workflow Manager

Kubernetes

1-click application Deploy, Snapshot, Clone, Scale, Upgrade, BackupApplication workflows configure Kubernetes, Storage & Networking

Works any where

GoogleCloud Platform

Page 24: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

robin.io

DEPLOYMENT PROOF POINTS

11 billion security events ingested and analyzed a day(Elasticsearch, Logstash, Kibana, Kafka)

6 petabytes under active management in a single ROBIN cluster(Cloudera, Impala, Kafka, Druid)

400 Oracle RAC databases managed by a single ROBIN cluster(Oracle, Oracle RAC)

ROBIN software allows you run complex Big Data and Databases on Kubernetes(Storage + Networking + Application Workflow Management + Kubernetes)

Page 25: Ravikumar Alluboyina Senior Product Architect, Robin€¦ · Ravikumar Alluboyina Senior Product Architect, Robin.io Data Protection for Application Running on Kubernetes. ... anti-affinity

ROBIN.IO

Supercharge Kubernetes to Deliver Big Data and Databases as-a-Service1-click Deploy, Scale, Snapshot, Clone, Upgrade, Backup, Migrate