SlideShare a Scribd company logo
Use GitLab with Chaos Engineering to Harden your Applications
+
OpenEBS 1.3 New Features
Your Presenters:
Philippe Theriault Uma Mukkara Brian Matheson
@phil_Theriault @uma_mukkara @brian_matheson
Philippe Theriault
CRO
MayaData Inc
Uma Mukkara
COO
MayaData Inc
Brian Matheson
Developer Advocate
MayaData Inc
Agenda
● Introduction
● Quick review of OpenEBS
● What’s new with 1.3 Release
● Cloud-native CI/CD for stateful applications & chaos
engineering
● Demo
● Q&A
CAS - Container
Attached Storage
+
OpenEBS
The only
Cloud Native Storage
solution architected for
Cloud Native Workloads
Built on Kubernetes for Kubernetes
OpenEBS Enterprise Solves 2 Big Problems
Deploying and managing stateful
applications on Kubernetes is difficult
Stateful applications on Kubernetes
are not agile because data has gravity
The Problem with Stateful Apps & Storage
microservice
microservice microservice microservice
microservicemicroservice
INSIDE K8s
Very Agile
OUTSIDE K8s
Locked in place
Let’s Keep it in Kubernetes
microservice
microservice microservice microservice
microservicemicroservice
INSIDE K8s
Very Agile
Applications have
changed and someone
forgot to tell storage
CAS = Container Attached Storage
No HA
Lock-in
No Snapshots
Simple, familiar
App granularity
K8S native
100% user space
DAS/Local PV OpenEBS CAS
K8s Node K8s Node
App AppApp
PV PV
App
PV
App App
Not agile
Lock-in
Incompatible
Snapshots
Storage Server
Vol Vol Vol
PV
CAS
Pod(s)
NAS/EBS
PV
K8s Node
PV
CAS
Pod(s)
App
PV PV
App
PV
App
CAS
Pod(s)
CAS
Pod(s)
Architecture Comparison
CAS
Pod(s)
+ Simple
+ Teams are autonomous
+ Additive to underlying
systems or cloud volumes
or JBODs
+ Target Users:
○ SRE
○ App Developer
○ Storage Admin
OpenEBS Architecture
What is OpenEBS
What is OpenEBS
Your complete solution for building, testing, running, managing and
monitoring stateful applications on Kubernetes with data
migration, high availability, backup and disaster recovery.
A complete Data Agility Solution
STORE AND PROTECT VALIDATE AND HARDEN UNDERSTAND AND CONTROL
CONTAINER ATTACHED STORAGE CHAOS ENGINEERING DATA MIGRATION, HA, DR
All the features provided by a
Storage Admin
Delivered as Kubernetes-Native
Services
Adopters on Github and new logo
is now
OpenEBS 1.3
Release Features
Overview of OpenEBS 1.3 Changes
● Support for Kubernetes 1.16 APIs
● Enhancements
○ Support for an initial version of NDM prometheus metrics
exporter - Details here
○ Auto Scaling of cStor Pools - Details here
○ Design for CSI driver for Jiva - Details here
● Bug fixes
● Local PV on top of ZFS pools -Details here
● OpenEBS on Digital Ocean Marketplace
New blog posts
https://blog.mayadata.io/
https://blog.openebs.io/
Use GitLab with
Chaos Engineering
to Harden your
Applications
Use cases involving GitLab and OpenEBS
Use OpenEBS as persistent store for GitLab
Data DevOps
Keep the CI data closer to reality
Immediate access to failed environments
PIPELINES
SRE/DevOPS
ADMIN
STAGE
CLUSTER
SEED
DATA
SEED
DATA
CI CLUSTER
DATA
SNAPSHOTS
(DMAAS)
Data DevOps (GitLab and OpenEBS)
PIPELINES
SPIN UP DEBUG ENVIRONMENT (cStor
Snaps and clones)
ACCESS AND DEBUG
DEVELOPER
CODE MERGE
Data DevOps (GitLab and OpenEBS)
Chaos Engineering for Kubernetes
(Litmus)
● Reliability is too important. Outages of services costs $$$
Reliability
Finding weaknesses is key
Failure testing in CI pipelines is not good enough
Failure testing breaks a system in some
preconceived way, but doesn’t explore the wide
open field of weird, unpredictable things that could
happen - Ali Basiri, Chaos Engineering Expert
Break things on purpose - In production
Find weaknesses
Fix them
Repeat the process
Failure testing vs Chaos testing
Failure testing in CI pipelines is not good enough
Break things on purpose - In production
● Find weaknesses
● Fix them
● Repeat the process
Failure testing stops at CI pipelines
Chaos testing extends to Pre-Prod and
Production environments
* Images and content authored by: Mark McBride, Turbine Labs
Chaos Engineering Loop
Practice chaos engineering to increase resiliency
Resiliency Achieved by
CI Pipelines
Functional
Tests
Failure Tests
+
Achieved by
Staging / Production
Good CI
Random
Chaos+
Chaos Engineering
● My code is 1%. Rest is not controlled by me.
● Linux is the least dynamic stack
● Rest is all microservices, based - highly dynamic
Then, how to achieve Resilience ?
Cloud-Native environment
Cloud Native
APIs
POD Deployment
PVC Statefulset
SVC CRDs
For
Development
For Chaos Testing
Cloud Native
APIs
?
Cloud-native
Application
Cloud-Native Chaos Engineering
Cloud Native
APIs
POD Deployment
PVC Statefulset
SVC CRDs
For Chaos Testing
Cloud Native
APIs
Chaos
Engine
Chaos
Experiment
Chaos Result
New CRDs
Cloud-native
Application
For
Development
Cloud-Native Chaos Engineering
apiVersion: v1
kind: Pod
metadata:
name: percona-pod
labels:
app: percona
spec:
containers:
- name: percona
image: percona:2.4
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
Name: demo-vol1-claim
spec:
storageClassName: openebs-
jiva-default
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5G
Create POD
Create PV
Inject Chaos
Cloud Native
Developer
apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
name: engine-percona
spec:
appinfo:
appns: default
applabel: "app=percona"
experiments:
- name: replica-kill
spec:
components:
- name: read-only
spec:
components:
Cloud-Native Chaos Engineering
www.litmuschaos.io
LitmusChaos
Chaos
Libraries
hub.litmuschaos.io
Chaos
Operator
kubectl apply -f https://litmuschaos.github.io/pages/litmus-
operator-v0.7.0.yaml
Chaos
Charts
Pipeline/
Apps
Chaos
container
Install Litmus
Install Charts
Inject Chaos
How Litmus is used ?
hub.litmuschaos.io
ChaosHub
ChaosHub
ChaosHub
Development and CI pipelines
Convert failure tests into
Chaos Experiments
ChaosHub
Use Chaos Experiments in
Staging
Use Chaos Experiments in
Production
Chaos charts life cycle
● GitHub Stars - 406 ( https://github.com/litmuschaos/litmus/stargazers )
● Contributors - 63 (https://github.com/litmuschaos/litmus/graphs/contributors )
● Slack - #litmus channel on kubernetes slack community (60 members)
○ https://kubernetes.slack.com/messages/CNXNB0ZTN
● Release cadence - 15th of every month
● Current release 0.7
● Community meetup -
○ Twice in a month https://docs.google.com/spreadsheets/d/15svGB99bDcSTkwAYttH1QzP5WJSb-dFKbPzl-
9WqmXM/edit#gid=1935377096
Community and releases
● A simple tool (generate_chart.py) is developed for developer onboarding
● Convert the business logic in the failure test case into ansible and bootstrap it into a
litmus chaos experiment
● https://docs.litmuschaos.io/docs/next/devguide/
● https://github.com/litmuschaos/litmus/tree/master/contribute/developer_guide
Contributing to Chaos Charts
https://openebs.ci/
Who is using Litmus now?
Who is using Litmus now?
LitmusChaos for GitLab
hub.litmuschaos.io
GitLab Remote Templates (https://github.com/litmuschaos/litmus/tree/master/ci/gitlab/templates)
.pod_failure_template:
image: litmuschaos/gitlab-runner:demo
script:
- kubectl get crds | grep chaos
- sed -i "s|%APP_NS|$app_ns|g; s|%APP_LABEL|$app_label|g; s|%APP_KIND|$app_kind|g;
s|%APP_SVC_ACC|$app_svc_account|g" /gitlab/pod-templates/chaosengine.yaml
- kubectl apply -f /gitlab/pod-templates/chaosengine.yaml
- sleep 60 #wait for chaos job instantiation & result CR creation
- /gitlab/utils/result_check.sh engine-pod-delete
Chaos charts are wrapped in GitLab Remote
templates for easy insertion in .gitlab.ci.yaml
Remote Templates for GitLab
Deploy
APP
Functional
Test
Cleanup
ci.yml
Admin
Add GitLab template for
chaos stage
LitmusChaos for GitLab in action
Deploy
APP
Functional
Test
CleanupChaos Test
ci.yml
Admin
Add GitLab template for
chaos stage
LitmusChaos for GitLab in action
Let us RECAP common use cases
Use OpenEBS for running GitLab OnPrem
Use OpenEBS as storage for apps in GitLab pipelines
Use Litmus to inject chaos in pipelines
OpenEBS
What’s Coming?
Roadmap for 1.4 and after
+ OpenEBS approach for K8S Autoscale for cStor, jiva, LocalPV
+ OpenEBS KUDO Operator
+ cStor Snapshot and Clone support using CSI
+ NDM [Fix] - Initial support for device topology
+ ARM builds for OpenEBS Jiva and Local PV.
+ Moving Velero Plugin support to Beta
+ Local PV - PV metrics
OpenEBS Public Release Planning
Q & A
Get Started
Why MayaData OpenEBS Enterprise Platform
OpenEBS Community OpenEBS Enterprise Platform
Support Self Up to 24 x 7
Performance enhancement X Yes
Bug / patches / updates X Priority and personalized
OpenEBS Director
Basic - 7 days logs / 3 nodes
SaaS
Advanced - Up to 13 months
SaaS and On-Premises
DMaaS, RBAC, Backup &
Migration
X Yes
You support the
development of OpenEBS
X Yes
Starting at $ 63/Month
➔ $ 63 per month
➔ Up to 10 hours of professional
assistance to set up OpenEBS
Enterprise Platform.
➔ Expert advice on how to deal with
Stateful Applications on Kubernetes
➔ Enterprise class support
➔ Yaml for most popular use cases
➔ Intro training
➔ Personalized ROI document
Get Started - Go to mayadata.io
Get Started - Go to mayadata.io
+ Quick chat with our engineer about your use cases
+ We are on Slack and you can have a private channel
+ We will setup your Premium support and OpenEBS Director Account
+ We will show you the full potential and tune the performance
+ We will assist with your pilot or POC.
+ We will make you successful, we know storage and K8s very well!
Thank You

More Related Content

PPTX
Chaos engineering
PPTX
Chaos engineering & Gameday on AWS
PDF
GameDay - Achieving resilience through Chaos Engineering
PDF
Introduction to Chaos Engineering with Microsoft Azure
PDF
Applying principles of chaos engineering to serverless (reinvent DVC305)
PDF
Cloud-native .NET Microservices mit Kubernetes
PDF
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
PPTX
Persistent Storage for stateful applications on Kubernetes made easy with Ope...
Chaos engineering
Chaos engineering & Gameday on AWS
GameDay - Achieving resilience through Chaos Engineering
Introduction to Chaos Engineering with Microsoft Azure
Applying principles of chaos engineering to serverless (reinvent DVC305)
Cloud-native .NET Microservices mit Kubernetes
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Persistent Storage for stateful applications on Kubernetes made easy with Ope...

Similar to Use GitLab with Chaos Engineering to Harden your Applications + OpenEBS 1.3 New Features (20)

PPTX
d2iq, d2iq konvoy, day 2 operations, lifecycle management, mayadata, mayadata...
PDF
Cloud-Native Operations with Kubernetes and CI/CD
PDF
Docker and Cloud - Enables for DevOps - by ACA-IT
PDF
'DOCKER' & CLOUD: ENABLERS For DEVOPS
PDF
The path to a serverless-native era with Kubernetes
PPTX
Data Agility for Devops - OSI 2018
PDF
A Hitchhiker’s Guide to the Cloud Native Stack. #CDS17
PDF
A hitchhiker‘s guide to the cloud native stack
PDF
給 RD 的 Kubernetes 初體驗
PDF
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
PDF
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
PDF
Java one kubernetes, jenkins and microservices
PDF
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
PDF
Hardening Your CI/CD Pipelines with GitOps and Continuous Security
PDF
Microservices with Kubernetes, Docker, and Jenkins
PDF
Javaone kubernetesjenkins
PDF
Microservices with Docker, Kubernetes, and Jenkins
PDF
Completing the Microservices Puzzle: Kubernetes, Prometheus and FreshTracks.io
PPTX
Episode 4: Operating Kubernetes at Scale with DC/OS
PDF
GCP Meetup #3 - Approaches to Cloud Native Architectures
d2iq, d2iq konvoy, day 2 operations, lifecycle management, mayadata, mayadata...
Cloud-Native Operations with Kubernetes and CI/CD
Docker and Cloud - Enables for DevOps - by ACA-IT
'DOCKER' & CLOUD: ENABLERS For DEVOPS
The path to a serverless-native era with Kubernetes
Data Agility for Devops - OSI 2018
A Hitchhiker’s Guide to the Cloud Native Stack. #CDS17
A hitchhiker‘s guide to the cloud native stack
給 RD 的 Kubernetes 初體驗
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
Kubo (Cloud Foundry Container Platform): Your Gateway Drug to Cloud-native
Java one kubernetes, jenkins and microservices
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
Hardening Your CI/CD Pipelines with GitOps and Continuous Security
Microservices with Kubernetes, Docker, and Jenkins
Javaone kubernetesjenkins
Microservices with Docker, Kubernetes, and Jenkins
Completing the Microservices Puzzle: Kubernetes, Prometheus and FreshTracks.io
Episode 4: Operating Kubernetes at Scale with DC/OS
GCP Meetup #3 - Approaches to Cloud Native Architectures
Ad

More from MayaData Inc (13)

PDF
MayaData Datastax webinar - Operating Cassandra on Kubernetes with the help ...
PPTX
Webinar: Data Protection for Kubernetes
PPTX
Kubera Launch Webinar: Kubernetes native management of Kubernetes native data
PPTX
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
PPTX
Save 60% of Kubernetes storage costs on AWS & others with OpenEBS
PPTX
Webinar: Using Litmus Chaos Engineering and AI for auto incident detection
PPTX
Webinar: Building a multi-cloud Kubernetes storage on GitLab
PPTX
OpenEBS Technical Workshop - KubeCon San Diego 2019
PPTX
Webinar OpenEBS 0.8.1 Release presentation
PPTX
How to Run Containerized Enterprise SQL Applications in the Cloud with NuoDB ...
PPTX
Webinar MayaData OpenEBS 1.1 release
PDF
Container Attached Storage with OpenEBS - CNCF Paris Meetup
PPTX
Webinar:Kubecon Barcelona Update + OpenEBS 0.9 release
MayaData Datastax webinar - Operating Cassandra on Kubernetes with the help ...
Webinar: Data Protection for Kubernetes
Kubera Launch Webinar: Kubernetes native management of Kubernetes native data
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
Save 60% of Kubernetes storage costs on AWS & others with OpenEBS
Webinar: Using Litmus Chaos Engineering and AI for auto incident detection
Webinar: Building a multi-cloud Kubernetes storage on GitLab
OpenEBS Technical Workshop - KubeCon San Diego 2019
Webinar OpenEBS 0.8.1 Release presentation
How to Run Containerized Enterprise SQL Applications in the Cloud with NuoDB ...
Webinar MayaData OpenEBS 1.1 release
Container Attached Storage with OpenEBS - CNCF Paris Meetup
Webinar:Kubecon Barcelona Update + OpenEBS 0.9 release
Ad

Recently uploaded (20)

PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
STKI Israel Market Study 2025 version august
PDF
Hybrid model detection and classification of lung cancer
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
Chapter 5: Probability Theory and Statistics
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
DOCX
search engine optimization ppt fir known well about this
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
A novel scalable deep ensemble learning framework for big data classification...
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
Architecture types and enterprise applications.pdf
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPT
Geologic Time for studying geology for geologist
A comparative study of natural language inference in Swahili using monolingua...
STKI Israel Market Study 2025 version august
Hybrid model detection and classification of lung cancer
Zenith AI: Advanced Artificial Intelligence
Chapter 5: Probability Theory and Statistics
A contest of sentiment analysis: k-nearest neighbor versus neural network
search engine optimization ppt fir known well about this
Group 1 Presentation -Planning and Decision Making .pptx
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
O2C Customer Invoices to Receipt V15A.pptx
1 - Historical Antecedents, Social Consideration.pdf
A novel scalable deep ensemble learning framework for big data classification...
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
Architecture types and enterprise applications.pdf
Web Crawler for Trend Tracking Gen Z Insights.pptx
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Geologic Time for studying geology for geologist

Use GitLab with Chaos Engineering to Harden your Applications + OpenEBS 1.3 New Features

  • 1. Use GitLab with Chaos Engineering to Harden your Applications + OpenEBS 1.3 New Features
  • 2. Your Presenters: Philippe Theriault Uma Mukkara Brian Matheson @phil_Theriault @uma_mukkara @brian_matheson Philippe Theriault CRO MayaData Inc Uma Mukkara COO MayaData Inc Brian Matheson Developer Advocate MayaData Inc
  • 3. Agenda ● Introduction ● Quick review of OpenEBS ● What’s new with 1.3 Release ● Cloud-native CI/CD for stateful applications & chaos engineering ● Demo ● Q&A
  • 4. CAS - Container Attached Storage + OpenEBS
  • 5. The only Cloud Native Storage solution architected for Cloud Native Workloads Built on Kubernetes for Kubernetes
  • 6. OpenEBS Enterprise Solves 2 Big Problems Deploying and managing stateful applications on Kubernetes is difficult Stateful applications on Kubernetes are not agile because data has gravity
  • 7. The Problem with Stateful Apps & Storage microservice microservice microservice microservice microservicemicroservice INSIDE K8s Very Agile OUTSIDE K8s Locked in place
  • 8. Let’s Keep it in Kubernetes microservice microservice microservice microservice microservicemicroservice INSIDE K8s Very Agile
  • 9. Applications have changed and someone forgot to tell storage
  • 10. CAS = Container Attached Storage
  • 11. No HA Lock-in No Snapshots Simple, familiar App granularity K8S native 100% user space DAS/Local PV OpenEBS CAS K8s Node K8s Node App AppApp PV PV App PV App App Not agile Lock-in Incompatible Snapshots Storage Server Vol Vol Vol PV CAS Pod(s) NAS/EBS PV K8s Node PV CAS Pod(s) App PV PV App PV App CAS Pod(s) CAS Pod(s) Architecture Comparison CAS Pod(s)
  • 12. + Simple + Teams are autonomous + Additive to underlying systems or cloud volumes or JBODs + Target Users: ○ SRE ○ App Developer ○ Storage Admin OpenEBS Architecture
  • 13. What is OpenEBS What is OpenEBS
  • 14. Your complete solution for building, testing, running, managing and monitoring stateful applications on Kubernetes with data migration, high availability, backup and disaster recovery.
  • 15. A complete Data Agility Solution STORE AND PROTECT VALIDATE AND HARDEN UNDERSTAND AND CONTROL CONTAINER ATTACHED STORAGE CHAOS ENGINEERING DATA MIGRATION, HA, DR
  • 16. All the features provided by a Storage Admin Delivered as Kubernetes-Native Services
  • 17. Adopters on Github and new logo is now
  • 19. Overview of OpenEBS 1.3 Changes ● Support for Kubernetes 1.16 APIs ● Enhancements ○ Support for an initial version of NDM prometheus metrics exporter - Details here ○ Auto Scaling of cStor Pools - Details here ○ Design for CSI driver for Jiva - Details here ● Bug fixes ● Local PV on top of ZFS pools -Details here ● OpenEBS on Digital Ocean Marketplace
  • 21. Use GitLab with Chaos Engineering to Harden your Applications
  • 22. Use cases involving GitLab and OpenEBS
  • 23. Use OpenEBS as persistent store for GitLab
  • 24. Data DevOps Keep the CI data closer to reality Immediate access to failed environments
  • 26. PIPELINES SPIN UP DEBUG ENVIRONMENT (cStor Snaps and clones) ACCESS AND DEBUG DEVELOPER CODE MERGE Data DevOps (GitLab and OpenEBS)
  • 27. Chaos Engineering for Kubernetes (Litmus)
  • 28. ● Reliability is too important. Outages of services costs $$$ Reliability
  • 29. Finding weaknesses is key Failure testing in CI pipelines is not good enough Failure testing breaks a system in some preconceived way, but doesn’t explore the wide open field of weird, unpredictable things that could happen - Ali Basiri, Chaos Engineering Expert Break things on purpose - In production Find weaknesses Fix them Repeat the process
  • 30. Failure testing vs Chaos testing Failure testing in CI pipelines is not good enough Break things on purpose - In production ● Find weaknesses ● Fix them ● Repeat the process Failure testing stops at CI pipelines Chaos testing extends to Pre-Prod and Production environments
  • 31. * Images and content authored by: Mark McBride, Turbine Labs Chaos Engineering Loop
  • 32. Practice chaos engineering to increase resiliency Resiliency Achieved by CI Pipelines Functional Tests Failure Tests + Achieved by Staging / Production Good CI Random Chaos+ Chaos Engineering
  • 33. ● My code is 1%. Rest is not controlled by me. ● Linux is the least dynamic stack ● Rest is all microservices, based - highly dynamic Then, how to achieve Resilience ? Cloud-Native environment
  • 34. Cloud Native APIs POD Deployment PVC Statefulset SVC CRDs For Development For Chaos Testing Cloud Native APIs ? Cloud-native Application Cloud-Native Chaos Engineering
  • 35. Cloud Native APIs POD Deployment PVC Statefulset SVC CRDs For Chaos Testing Cloud Native APIs Chaos Engine Chaos Experiment Chaos Result New CRDs Cloud-native Application For Development Cloud-Native Chaos Engineering
  • 36. apiVersion: v1 kind: Pod metadata: name: percona-pod labels: app: percona spec: containers: - name: percona image: percona:2.4 kind: PersistentVolumeClaim apiVersion: v1 metadata: Name: demo-vol1-claim spec: storageClassName: openebs- jiva-default accessModes: - ReadWriteOnce resources: requests: storage: 5G Create POD Create PV Inject Chaos Cloud Native Developer apiVersion: litmuschaos.io/v1alpha1 kind: ChaosEngine metadata: name: engine-percona spec: appinfo: appns: default applabel: "app=percona" experiments: - name: replica-kill spec: components: - name: read-only spec: components: Cloud-Native Chaos Engineering
  • 38. Chaos Libraries hub.litmuschaos.io Chaos Operator kubectl apply -f https://litmuschaos.github.io/pages/litmus- operator-v0.7.0.yaml Chaos Charts Pipeline/ Apps Chaos container Install Litmus Install Charts Inject Chaos How Litmus is used ?
  • 42. Development and CI pipelines Convert failure tests into Chaos Experiments ChaosHub Use Chaos Experiments in Staging Use Chaos Experiments in Production Chaos charts life cycle
  • 43. ● GitHub Stars - 406 ( https://github.com/litmuschaos/litmus/stargazers ) ● Contributors - 63 (https://github.com/litmuschaos/litmus/graphs/contributors ) ● Slack - #litmus channel on kubernetes slack community (60 members) ○ https://kubernetes.slack.com/messages/CNXNB0ZTN ● Release cadence - 15th of every month ● Current release 0.7 ● Community meetup - ○ Twice in a month https://docs.google.com/spreadsheets/d/15svGB99bDcSTkwAYttH1QzP5WJSb-dFKbPzl- 9WqmXM/edit#gid=1935377096 Community and releases
  • 44. ● A simple tool (generate_chart.py) is developed for developer onboarding ● Convert the business logic in the failure test case into ansible and bootstrap it into a litmus chaos experiment ● https://docs.litmuschaos.io/docs/next/devguide/ ● https://github.com/litmuschaos/litmus/tree/master/contribute/developer_guide Contributing to Chaos Charts
  • 46. Who is using Litmus now?
  • 48. hub.litmuschaos.io GitLab Remote Templates (https://github.com/litmuschaos/litmus/tree/master/ci/gitlab/templates) .pod_failure_template: image: litmuschaos/gitlab-runner:demo script: - kubectl get crds | grep chaos - sed -i "s|%APP_NS|$app_ns|g; s|%APP_LABEL|$app_label|g; s|%APP_KIND|$app_kind|g; s|%APP_SVC_ACC|$app_svc_account|g" /gitlab/pod-templates/chaosengine.yaml - kubectl apply -f /gitlab/pod-templates/chaosengine.yaml - sleep 60 #wait for chaos job instantiation & result CR creation - /gitlab/utils/result_check.sh engine-pod-delete Chaos charts are wrapped in GitLab Remote templates for easy insertion in .gitlab.ci.yaml Remote Templates for GitLab
  • 49. Deploy APP Functional Test Cleanup ci.yml Admin Add GitLab template for chaos stage LitmusChaos for GitLab in action
  • 50. Deploy APP Functional Test CleanupChaos Test ci.yml Admin Add GitLab template for chaos stage LitmusChaos for GitLab in action
  • 51. Let us RECAP common use cases Use OpenEBS for running GitLab OnPrem Use OpenEBS as storage for apps in GitLab pipelines Use Litmus to inject chaos in pipelines
  • 53. Roadmap for 1.4 and after + OpenEBS approach for K8S Autoscale for cStor, jiva, LocalPV + OpenEBS KUDO Operator + cStor Snapshot and Clone support using CSI + NDM [Fix] - Initial support for device topology + ARM builds for OpenEBS Jiva and Local PV. + Moving Velero Plugin support to Beta + Local PV - PV metrics OpenEBS Public Release Planning
  • 54. Q & A
  • 56. Why MayaData OpenEBS Enterprise Platform OpenEBS Community OpenEBS Enterprise Platform Support Self Up to 24 x 7 Performance enhancement X Yes Bug / patches / updates X Priority and personalized OpenEBS Director Basic - 7 days logs / 3 nodes SaaS Advanced - Up to 13 months SaaS and On-Premises DMaaS, RBAC, Backup & Migration X Yes You support the development of OpenEBS X Yes
  • 57. Starting at $ 63/Month ➔ $ 63 per month ➔ Up to 10 hours of professional assistance to set up OpenEBS Enterprise Platform. ➔ Expert advice on how to deal with Stateful Applications on Kubernetes ➔ Enterprise class support ➔ Yaml for most popular use cases ➔ Intro training ➔ Personalized ROI document
  • 58. Get Started - Go to mayadata.io
  • 59. Get Started - Go to mayadata.io + Quick chat with our engineer about your use cases + We are on Slack and you can have a private channel + We will setup your Premium support and OpenEBS Director Account + We will show you the full potential and tune the performance + We will assist with your pilot or POC. + We will make you successful, we know storage and K8s very well!