5 Tips to Successfully
Migrate your Database to
Kubernetes
Guy Menahem, Solution Engineer @Komodor
Nic Vermandé, Principal Developer Advocate @Ondat
Agenda Your Speakers:
What to expect today:
● A bit of history & predictions
● Kubernetes Patterns for stateful apps
● Special considerations for databases
● Demos
Guy Menahem,
Solution Engineer
Komodor
Nic Vermandé,
Principal Dev
Advocate Ondat
Is It a Good Idea to Run Your
Database in Kubernetes?
Deployment vs StatefulSets
Deployment vs StatefulSets
Cloud Databases on the Rise
MQ Cloud Database Management Systems:
● By 2022, 75% of all databases will be deployed or migrated to a cloud platform, with
only 5% ever considered for repatriation to on-premises.
● By 2023, cloud preference for data management will reduce the vendor landscape
while the growth in multicloud increases the complexity for data governance and
integration.
● By 2023, cloud DBMS revenue will account for 50% of the total DBMS market revenue.
BTW We’re
a 2021 Gartner
Cool Vendor!
Stateful Containers on the Rise
https://www.datadoghq.com/container-report
K8s Troubleshooting Today
Understand who
changed what
Check the CI
pipeline
Check pods
status
Check the CI
pipeline
Check current
alert
Explore relevant
exceptions
Review alert’s
metrics
Check account
activity
Review the latest
code changes
K8s Troubleshooting Today
Too often, it devolves into
A process of elimination,
Driven by more guesswork
Than insight.
Collect cross
systems events
Provide a complete overview of all services
and their relations in a single place
For each service, we build a comprehensive
timeline: deploys, config changes, alerts and more
How Does Komodor Work?
Troubleshoot Statefulsets With Pod Logs
Komodor’s Pod Logs & Events feature
offers quick access to all of the
pod-level data you`ll need for
troubleshooting, including:
● Overview of all pods running the
service
● Pod details, similar to what you
would get with kubectl describe
● Live view of all events
● Pod containers’ logs
StatefulSet with Ondat Persistent Volumes
Statefulsets Demo
Tip 1 - K8s Patterns for your Platform
- Use Kubernetes StatefulSets to deploy your Database
- Use a Database Operator to tune your Database deployment configuration
Tip 1 - K8s Patterns for your App
- In your application, make sure to leverage the right mechanisms to make it platform-aware:
- Downward API
- Environment Variables
- Volumes
Container A
Env_A1
Env_A2
Container B
K8S API call
/etc/annotations
/etc/labels
Volume A
Pod
API Server
Pod Configuration
+
Runtime
Information
Inject
Query
Mount
Source: Ibryam B., and Huß R., 2019,
Kubernetes Patterns, O’Reilly Media Inc.,
Sebastopol
Tip 2: Compare Costs
- EBS or other cloud persistent disks are expensive as performance requirements increase
- PaaS solutions add another proprietary abstraction layer and leads to vendor lock-in
Tip 3: Shift Left with GitOps Principles
● What is Shift Left?
● What is GitOps?
● Why do you need to adopt these paradigms?
"Bring application components
and infrastructure dependencies
early in the DevOps process and
SDLC to detect and fix issues
before deploying the artifact"
Get Control with GitOps
Build
Application
Code
Dev
Get Control with GitOps
Build
Deploy
Kustomize
Application
Code
Kubernetes
Manifests
Dev
Platform
Tip 3: Shift Left with GitOps Principles
● Save on operational costs and time-to-deploy
● Agility, nimbler to move
● Reliable, Higher Quality Software
● Anything “as-a-Service”
● Improve Security and Compliance
● Policy-as-Code
Why do you need to adopt these paradigms?
● Add visibility (Performance, I/O, Backups, etc.)
● Make sure you got the right troubleshooting tools
● Test, automate and practice!
● Build your DB expertise
Tip 4: Build Your Stack For Doomsday
● Operator - Capabilities, Community/Enterprise, Upgrades
● Failovers - How? Downtime?
● Day 2 Operations
● K8s Friendly
Tip 5: Choose your DB Wisely
Demo - Deploy & Operate
a Database Cluster
Key Takeaways
● Kubernetes primitives and ecosystem are ready to
Stateful Apps
● Enterprises can take advantage of Kubernetes to run
their critical databases, saving on multiple dimensions
● But there are still challenges:
- Data service layer
- Monitoring and microservices correlation
Get Started Now
ondat.io
Try Out Komodor Now
Q&A
See You Next Time!

Ondat komodor webinar

  • 1.
    5 Tips toSuccessfully Migrate your Database to Kubernetes Guy Menahem, Solution Engineer @Komodor Nic Vermandé, Principal Developer Advocate @Ondat
  • 2.
    Agenda Your Speakers: Whatto expect today: ● A bit of history & predictions ● Kubernetes Patterns for stateful apps ● Special considerations for databases ● Demos Guy Menahem, Solution Engineer Komodor Nic Vermandé, Principal Dev Advocate Ondat
  • 3.
    Is It aGood Idea to Run Your Database in Kubernetes?
  • 4.
  • 5.
  • 6.
    Cloud Databases onthe Rise MQ Cloud Database Management Systems: ● By 2022, 75% of all databases will be deployed or migrated to a cloud platform, with only 5% ever considered for repatriation to on-premises. ● By 2023, cloud preference for data management will reduce the vendor landscape while the growth in multicloud increases the complexity for data governance and integration. ● By 2023, cloud DBMS revenue will account for 50% of the total DBMS market revenue. BTW We’re a 2021 Gartner Cool Vendor!
  • 7.
    Stateful Containers onthe Rise https://www.datadoghq.com/container-report
  • 8.
    K8s Troubleshooting Today Understandwho changed what Check the CI pipeline Check pods status Check the CI pipeline Check current alert Explore relevant exceptions Review alert’s metrics Check account activity Review the latest code changes
  • 9.
    K8s Troubleshooting Today Toooften, it devolves into A process of elimination, Driven by more guesswork Than insight.
  • 10.
    Collect cross systems events Providea complete overview of all services and their relations in a single place For each service, we build a comprehensive timeline: deploys, config changes, alerts and more How Does Komodor Work?
  • 11.
    Troubleshoot Statefulsets WithPod Logs Komodor’s Pod Logs & Events feature offers quick access to all of the pod-level data you`ll need for troubleshooting, including: ● Overview of all pods running the service ● Pod details, similar to what you would get with kubectl describe ● Live view of all events ● Pod containers’ logs
  • 12.
    StatefulSet with OndatPersistent Volumes
  • 13.
  • 14.
    Tip 1 -K8s Patterns for your Platform - Use Kubernetes StatefulSets to deploy your Database - Use a Database Operator to tune your Database deployment configuration
  • 15.
    Tip 1 -K8s Patterns for your App - In your application, make sure to leverage the right mechanisms to make it platform-aware: - Downward API - Environment Variables - Volumes Container A Env_A1 Env_A2 Container B K8S API call /etc/annotations /etc/labels Volume A Pod API Server Pod Configuration + Runtime Information Inject Query Mount Source: Ibryam B., and Huß R., 2019, Kubernetes Patterns, O’Reilly Media Inc., Sebastopol
  • 16.
    Tip 2: CompareCosts - EBS or other cloud persistent disks are expensive as performance requirements increase - PaaS solutions add another proprietary abstraction layer and leads to vendor lock-in
  • 17.
    Tip 3: ShiftLeft with GitOps Principles ● What is Shift Left? ● What is GitOps? ● Why do you need to adopt these paradigms? "Bring application components and infrastructure dependencies early in the DevOps process and SDLC to detect and fix issues before deploying the artifact"
  • 18.
    Get Control withGitOps Build Application Code Dev
  • 19.
    Get Control withGitOps Build Deploy Kustomize Application Code Kubernetes Manifests Dev Platform
  • 20.
    Tip 3: ShiftLeft with GitOps Principles ● Save on operational costs and time-to-deploy ● Agility, nimbler to move ● Reliable, Higher Quality Software ● Anything “as-a-Service” ● Improve Security and Compliance ● Policy-as-Code Why do you need to adopt these paradigms?
  • 21.
    ● Add visibility(Performance, I/O, Backups, etc.) ● Make sure you got the right troubleshooting tools ● Test, automate and practice! ● Build your DB expertise Tip 4: Build Your Stack For Doomsday
  • 22.
    ● Operator -Capabilities, Community/Enterprise, Upgrades ● Failovers - How? Downtime? ● Day 2 Operations ● K8s Friendly Tip 5: Choose your DB Wisely
  • 23.
    Demo - Deploy& Operate a Database Cluster
  • 24.
    Key Takeaways ● Kubernetesprimitives and ecosystem are ready to Stateful Apps ● Enterprises can take advantage of Kubernetes to run their critical databases, saving on multiple dimensions ● But there are still challenges: - Data service layer - Monitoring and microservices correlation
  • 25.
  • 26.
  • 27.
  • 28.