SlideShare a Scribd company logo
1 of 23
The Automation Challenge:
Kubernetes Operators vs Helm Charts
Ana-Maria Mihalceanu
@ammbra1508
Hello! I am Ana
Java Champion, Certified Architect
Developer Advocate @ RedHat
“Control” enthusiast
@ammbra1508
”Know well what leads you forward and what holds you
back, and choose the path that leads to wisdom”
@ammbra1508
Buddha
(Some) Kubernetes Features
@ammbra1508
Automated rollouts and rollbacks
Batch execution
Self-healing
Horizontal scaling
Service discovery and Load balancing
Secret and configuration management
Storage orchestration
The Story of a Microservice
@ammbra1508
</>
Application code Docker file
Kubernetes objects
in yaml format
The Story of a Microservice
@ammbra1508
</>
Application code Docker file
Kubernetes objects
in yaml format
The Story of a Microservice
@ammbra1508
</>
Application code Docker file
Kubernetes objects
in yaml format
Kubernetes Package Manager
@ammbra1508
Manage and update multiple
Kubernetes configurations
templates Deploy many configs as a
SINGLE application
Parametrize for multiple
environments support
Helm Show Time
@ammbra1508
Helm Advantages
@ammbra1508
Check
In a template, you can check nested values at every
level
Deploy
Many configurations can be deployed through a single
chart instance.
Separate Non-final values are separated from the actual objects.
Prototype Easily prototype an application installation.
Distinctive Helm Aspects (1)
@ammbra1508
deployment.yaml
Reusability is encouraged via include, _helpers.tpl, tpl
Automatically roll deployments via annotations
_helpers.tpl
Distinctive Helm Aspects (2)
@ammbra1508
deployment.yaml
Automatically roll deployments via annotations
Instruct Helm to keep resources upon uninstall
service.yaml
Next steps
@ammbra1508
WHAT HAPPENS AT THE
MATURITY OF THE SYSTEM?
@ammbra1508
Benefits of using Operators
@ammbra1508
Package human operational knowledge
Clients like kubectl and dashboard automatically work with Operators
The resources created via Operators are secured and use HTTPS
Can be used to create backups or for configuring your cluster
Cloud native tools can be maintained via operators
What’s next?
@ammbra1508
Maintain Maintained the PostgreSQL database via the operator.
Isolate Kept Helm charts for installing the application.
Deploy Followed the deployment instructions.
Decide https://postgres-operator.readthedocs.io/en/latest/
Discover https://operatorhub.io/
Create an Operator
@ammbra1508
KUDO (Kubernetes Universal Declarative Operator)
kubebuilder
Metacontroller along with WebHooks that you implement yourself
Operator Framework
Final view
@ammbra1508
From Helm Charts to
Operators
@ammbra1508
Publish Helm Charts to a Repo
@ammbra1508
$ git checkout gh-pages
$ helm package ticket-store
$ mv ticket-store-0.1.0.tgz docs
$ helm repo index docs --url https://ammbra.github.io/helm-vs-operators
$ git add .
$ git commit –am “published charts”
$ git push origin
Create an Operator from Helm Charts
@ammbra1508
$ helm repo add store https://ammbra.github.io/helm-vs-operators/
$ mkdir operator
$ cd operator
$ operator-sdk init --plugins helm --helm-chart store/ticket-store
$ kubectl apply -f config/samples/charts_v1alpha1_ticketstore.yaml
Takeaways
@ammbra1508
Helm Operators
Have a custom packaging format. Include many complex configuration data
within the package.
You are deploying a stateless application and
are happy with its settings.
Can deploy a stateful application and
maintain it in a completely automatic way.
Great for checking an application
deployment via its release information.
Can deploy an application configured in a
particular way across a cluster to achieve
high availability.
Have annotations that can trigger automatic
deployments.
Useful for operations related to backups or
cluster configuration.
@ammbra1508
Code made available at
https://github.com/ammbra/helm-vs-operators

More Related Content

What's hot

What's hot (20)

Best practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on CloudBest practices for developing your Magento Commerce on Cloud
Best practices for developing your Magento Commerce on Cloud
 
Meetup #3: Migrating an Oracle Application from on-premise to AWS
Meetup #3: Migrating an Oracle Application from on-premise to AWSMeetup #3: Migrating an Oracle Application from on-premise to AWS
Meetup #3: Migrating an Oracle Application from on-premise to AWS
 
Monitor Azure Kubernetes Cluster With Prometheus by Mamta Jha
Monitor Azure Kubernetes Cluster With Prometheus by Mamta JhaMonitor Azure Kubernetes Cluster With Prometheus by Mamta Jha
Monitor Azure Kubernetes Cluster With Prometheus by Mamta Jha
 
AWS Community Day Bangkok 2019 - How AWS Parallel Cluster can accelerate high...
AWS Community Day Bangkok 2019 - How AWS Parallel Cluster can accelerate high...AWS Community Day Bangkok 2019 - How AWS Parallel Cluster can accelerate high...
AWS Community Day Bangkok 2019 - How AWS Parallel Cluster can accelerate high...
 
Magento 2 with Remote Storage
Magento 2 with Remote StorageMagento 2 with Remote Storage
Magento 2 with Remote Storage
 
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
Project Frankenstein: A multitenant, horizontally scalable Prometheus as a se...
 
Cloud Community Engineering - Holiday readiness
Cloud Community Engineering - Holiday readinessCloud Community Engineering - Holiday readiness
Cloud Community Engineering - Holiday readiness
 
Continuous Delivery for Kubernetes Apps with Helm and ChartMuseum
Continuous Delivery for Kubernetes Apps with Helm and ChartMuseumContinuous Delivery for Kubernetes Apps with Helm and ChartMuseum
Continuous Delivery for Kubernetes Apps with Helm and ChartMuseum
 
Magento Cloud Docker - Universal configuration with Oleh Posyniak
Magento Cloud Docker - Universal configuration with Oleh PosyniakMagento Cloud Docker - Universal configuration with Oleh Posyniak
Magento Cloud Docker - Universal configuration with Oleh Posyniak
 
Azure Cosmos DB Kafka Connectors | Abinav Rameesh, Microsoft
Azure Cosmos DB Kafka Connectors | Abinav Rameesh, MicrosoftAzure Cosmos DB Kafka Connectors | Abinav Rameesh, Microsoft
Azure Cosmos DB Kafka Connectors | Abinav Rameesh, Microsoft
 
Cloudify and terraform integration
Cloudify and terraform integrationCloudify and terraform integration
Cloudify and terraform integration
 
DevOps with Azure, Kubernetes, and Helm Webinar
DevOps with Azure, Kubernetes, and Helm WebinarDevOps with Azure, Kubernetes, and Helm Webinar
DevOps with Azure, Kubernetes, and Helm Webinar
 
Serverless
ServerlessServerless
Serverless
 
[GS네오텍] Google Kubernetes Engine
[GS네오텍]  Google Kubernetes Engine [GS네오텍]  Google Kubernetes Engine
[GS네오텍] Google Kubernetes Engine
 
Tabtale story: Building a publishing and monitoring mobile games architecture...
Tabtale story: Building a publishing and monitoring mobile games architecture...Tabtale story: Building a publishing and monitoring mobile games architecture...
Tabtale story: Building a publishing and monitoring mobile games architecture...
 
Netflix Cloud Platform and Open Source
Netflix Cloud Platform and Open SourceNetflix Cloud Platform and Open Source
Netflix Cloud Platform and Open Source
 
Using Terraform for AWS as the IaC tool
Using Terraform for AWS as the IaC toolUsing Terraform for AWS as the IaC tool
Using Terraform for AWS as the IaC tool
 
Intro to the Google Cloud for Developers
Intro to the Google Cloud for DevelopersIntro to the Google Cloud for Developers
Intro to the Google Cloud for Developers
 
Serverless
ServerlessServerless
Serverless
 
Performance Testing with Tsung
Performance Testing with TsungPerformance Testing with Tsung
Performance Testing with Tsung
 

Similar to The automation challenge Kubernetes operators vs Helm charts

Kubernetes Cluster API - managing the infrastructure of multi clusters (k8s ...
Kubernetes Cluster API - managing the infrastructure of  multi clusters (k8s ...Kubernetes Cluster API - managing the infrastructure of  multi clusters (k8s ...
Kubernetes Cluster API - managing the infrastructure of multi clusters (k8s ...
Tobias Schneck
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
Sébastien Le Gall
 

Similar to The automation challenge Kubernetes operators vs Helm charts (20)

The automation challenge: Kubernetes Operators vs Helm Charts
The automation challenge: Kubernetes Operators vs Helm ChartsThe automation challenge: Kubernetes Operators vs Helm Charts
The automation challenge: Kubernetes Operators vs Helm Charts
 
The Automation Challenge Kubernetes Operators vs Helm Charts.pdf
The Automation Challenge Kubernetes Operators vs Helm Charts.pdfThe Automation Challenge Kubernetes Operators vs Helm Charts.pdf
The Automation Challenge Kubernetes Operators vs Helm Charts.pdf
 
Kubernetes Application Deployment with Helm - A beginner Guide!
Kubernetes Application Deployment with Helm - A beginner Guide!Kubernetes Application Deployment with Helm - A beginner Guide!
Kubernetes Application Deployment with Helm - A beginner Guide!
 
Kubernetes Cluster API - managing the infrastructure of multi clusters (k8s ...
Kubernetes Cluster API - managing the infrastructure of  multi clusters (k8s ...Kubernetes Cluster API - managing the infrastructure of  multi clusters (k8s ...
Kubernetes Cluster API - managing the infrastructure of multi clusters (k8s ...
 
MuleSoft Surat Meetup#42 - Runtime Fabric Manager on Self Managed Kubernetes ...
MuleSoft Surat Meetup#42 - Runtime Fabric Manager on Self Managed Kubernetes ...MuleSoft Surat Meetup#42 - Runtime Fabric Manager on Self Managed Kubernetes ...
MuleSoft Surat Meetup#42 - Runtime Fabric Manager on Self Managed Kubernetes ...
 
A 60-minute tour of AWS Compute (November 2016)
A 60-minute tour of AWS Compute (November 2016)A 60-minute tour of AWS Compute (November 2016)
A 60-minute tour of AWS Compute (November 2016)
 
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
ApacheCon NA - Apache Camel K: connect your Knative serverless applications w...
 
ОЛЕГ МАЦЬКІВ «Crash course on Operator Framework» Lviv DevOps Conference 2019
ОЛЕГ МАЦЬКІВ «Crash course on Operator Framework» Lviv DevOps Conference 2019ОЛЕГ МАЦЬКІВ «Crash course on Operator Framework» Lviv DevOps Conference 2019
ОЛЕГ МАЦЬКІВ «Crash course on Operator Framework» Lviv DevOps Conference 2019
 
helm101.pdf
helm101.pdfhelm101.pdf
helm101.pdf
 
Helm.pptx
Helm.pptxHelm.pptx
Helm.pptx
 
ApacheCon NA - Apache Camel K: a cloud-native integration platform
ApacheCon NA - Apache Camel K: a cloud-native integration platformApacheCon NA - Apache Camel K: a cloud-native integration platform
ApacheCon NA - Apache Camel K: a cloud-native integration platform
 
Helm Security Webinar
Helm Security WebinarHelm Security Webinar
Helm Security Webinar
 
2022-05-23-DevOps pro Europe - Managing Apps at scale.pdf
2022-05-23-DevOps pro Europe - Managing Apps at scale.pdf2022-05-23-DevOps pro Europe - Managing Apps at scale.pdf
2022-05-23-DevOps pro Europe - Managing Apps at scale.pdf
 
Altinity Cluster Manager: ClickHouse Management for Kubernetes and Cloud
Altinity Cluster Manager: ClickHouse Management for Kubernetes and CloudAltinity Cluster Manager: ClickHouse Management for Kubernetes and Cloud
Altinity Cluster Manager: ClickHouse Management for Kubernetes and Cloud
 
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueCloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
 
Rohit yadav cloud stack internals
Rohit yadav   cloud stack internalsRohit yadav   cloud stack internals
Rohit yadav cloud stack internals
 
Cleveland_Meetup_July21_2022
Cleveland_Meetup_July21_2022Cleveland_Meetup_July21_2022
Cleveland_Meetup_July21_2022
 
MuleSoft Meetup Roma - Runtime Fabric Series (From Zero to Hero) - Sessione 2
MuleSoft Meetup Roma - Runtime Fabric Series (From Zero to Hero) - Sessione 2MuleSoft Meetup Roma - Runtime Fabric Series (From Zero to Hero) - Sessione 2
MuleSoft Meetup Roma - Runtime Fabric Series (From Zero to Hero) - Sessione 2
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
 
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
Devoxx UK 2018 - A cloud application journey with helm and kubernetesDevoxx UK 2018 - A cloud application journey with helm and kubernetes
Devoxx UK 2018 - A cloud application journey with helm and kubernetes
 

More from Ana-Maria Mihalceanu

DevoxxUK 2021 Techniques for maintainable Quarkus applications
DevoxxUK 2021 Techniques for maintainable Quarkus applicationsDevoxxUK 2021 Techniques for maintainable Quarkus applications
DevoxxUK 2021 Techniques for maintainable Quarkus applications
Ana-Maria Mihalceanu
 

More from Ana-Maria Mihalceanu (20)

Surveillance de la sécurité des applications Java avec les outils du JDK e...
Surveillance de la sécurité des applications Java  avec les outils du JDK e...Surveillance de la sécurité des applications Java  avec les outils du JDK e...
Surveillance de la sécurité des applications Java avec les outils du JDK e...
 
A Glance At The Java Performance Toolbox
A Glance At The Java Performance ToolboxA Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
Monitoring Java Application Security with JDK Tools and JFR Events.pdf
Monitoring Java Application Security with JDK Tools and JFR Events.pdfMonitoring Java Application Security with JDK Tools and JFR Events.pdf
Monitoring Java Application Security with JDK Tools and JFR Events.pdf
 
Enhancing Productivity and Insight A Tour of JDK Tools Progress Beyond Java 17
Enhancing Productivity and Insight  A Tour of JDK Tools Progress Beyond Java 17Enhancing Productivity and Insight  A Tour of JDK Tools Progress Beyond Java 17
Enhancing Productivity and Insight A Tour of JDK Tools Progress Beyond Java 17
 
Java 21 Language Features and Beyond
Java 21 Language Features and BeyondJava 21 Language Features and Beyond
Java 21 Language Features and Beyond
 
From Java 17 to 21- A Showcase of JDK Security Enhancements
From Java 17 to 21- A Showcase of JDK Security EnhancementsFrom Java 17 to 21- A Showcase of JDK Security Enhancements
From Java 17 to 21- A Showcase of JDK Security Enhancements
 
Java 21 and Beyond- A Roadmap of Innovations
Java 21 and Beyond- A Roadmap of InnovationsJava 21 and Beyond- A Roadmap of Innovations
Java 21 and Beyond- A Roadmap of Innovations
 
A Glance At The Java Performance Toolbox
 A Glance At The Java Performance Toolbox A Glance At The Java Performance Toolbox
A Glance At The Java Performance Toolbox
 
A Glance At The Java Performance Toolbox.pdf
 A Glance At The Java Performance Toolbox.pdf A Glance At The Java Performance Toolbox.pdf
A Glance At The Java Performance Toolbox.pdf
 
A Glance At The Java Performance Toolbox-TIA.pdf
 A Glance At The Java Performance Toolbox-TIA.pdf A Glance At The Java Performance Toolbox-TIA.pdf
A Glance At The Java Performance Toolbox-TIA.pdf
 
A Glance At The Java Performance Toolbox.pdf
 A Glance At The Java Performance Toolbox.pdf A Glance At The Java Performance Toolbox.pdf
A Glance At The Java Performance Toolbox.pdf
 
A Glance At The Java Performance Toolbox.pdf
 A Glance At The Java Performance Toolbox.pdf A Glance At The Java Performance Toolbox.pdf
A Glance At The Java Performance Toolbox.pdf
 
How Java 19 Influences the Future of Your High-Scale Applications .pdf
How Java 19 Influences the Future of Your High-Scale Applications .pdfHow Java 19 Influences the Future of Your High-Scale Applications .pdf
How Java 19 Influences the Future of Your High-Scale Applications .pdf
 
Exploring Quarkus on JDK 17
Exploring Quarkus on JDK 17Exploring Quarkus on JDK 17
Exploring Quarkus on JDK 17
 
Cloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground upCloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground up
 
Cloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground upCloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground up
 
Cloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground upCloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground up
 
Cloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground upCloud native resiliency patterns from the ground up
Cloud native resiliency patterns from the ground up
 
DevoxxUK 2021 Techniques for maintainable Quarkus applications
DevoxxUK 2021 Techniques for maintainable Quarkus applicationsDevoxxUK 2021 Techniques for maintainable Quarkus applications
DevoxxUK 2021 Techniques for maintainable Quarkus applications
 
Techniques for maintainable Quarkus applications
Techniques for maintainable Quarkus applicationsTechniques for maintainable Quarkus applications
Techniques for maintainable Quarkus applications
 

Recently uploaded

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

The automation challenge Kubernetes operators vs Helm charts

  • 1. The Automation Challenge: Kubernetes Operators vs Helm Charts Ana-Maria Mihalceanu @ammbra1508
  • 2. Hello! I am Ana Java Champion, Certified Architect Developer Advocate @ RedHat “Control” enthusiast @ammbra1508
  • 3. ”Know well what leads you forward and what holds you back, and choose the path that leads to wisdom” @ammbra1508 Buddha
  • 4. (Some) Kubernetes Features @ammbra1508 Automated rollouts and rollbacks Batch execution Self-healing Horizontal scaling Service discovery and Load balancing Secret and configuration management Storage orchestration
  • 5. The Story of a Microservice @ammbra1508 </> Application code Docker file Kubernetes objects in yaml format
  • 6. The Story of a Microservice @ammbra1508 </> Application code Docker file Kubernetes objects in yaml format
  • 7. The Story of a Microservice @ammbra1508 </> Application code Docker file Kubernetes objects in yaml format
  • 8. Kubernetes Package Manager @ammbra1508 Manage and update multiple Kubernetes configurations templates Deploy many configs as a SINGLE application Parametrize for multiple environments support
  • 10. Helm Advantages @ammbra1508 Check In a template, you can check nested values at every level Deploy Many configurations can be deployed through a single chart instance. Separate Non-final values are separated from the actual objects. Prototype Easily prototype an application installation.
  • 11. Distinctive Helm Aspects (1) @ammbra1508 deployment.yaml Reusability is encouraged via include, _helpers.tpl, tpl Automatically roll deployments via annotations _helpers.tpl
  • 12. Distinctive Helm Aspects (2) @ammbra1508 deployment.yaml Automatically roll deployments via annotations Instruct Helm to keep resources upon uninstall service.yaml
  • 14. WHAT HAPPENS AT THE MATURITY OF THE SYSTEM? @ammbra1508
  • 15. Benefits of using Operators @ammbra1508 Package human operational knowledge Clients like kubectl and dashboard automatically work with Operators The resources created via Operators are secured and use HTTPS Can be used to create backups or for configuring your cluster Cloud native tools can be maintained via operators
  • 16. What’s next? @ammbra1508 Maintain Maintained the PostgreSQL database via the operator. Isolate Kept Helm charts for installing the application. Deploy Followed the deployment instructions. Decide https://postgres-operator.readthedocs.io/en/latest/ Discover https://operatorhub.io/
  • 17. Create an Operator @ammbra1508 KUDO (Kubernetes Universal Declarative Operator) kubebuilder Metacontroller along with WebHooks that you implement yourself Operator Framework
  • 19. From Helm Charts to Operators @ammbra1508
  • 20. Publish Helm Charts to a Repo @ammbra1508 $ git checkout gh-pages $ helm package ticket-store $ mv ticket-store-0.1.0.tgz docs $ helm repo index docs --url https://ammbra.github.io/helm-vs-operators $ git add . $ git commit –am “published charts” $ git push origin
  • 21. Create an Operator from Helm Charts @ammbra1508 $ helm repo add store https://ammbra.github.io/helm-vs-operators/ $ mkdir operator $ cd operator $ operator-sdk init --plugins helm --helm-chart store/ticket-store $ kubectl apply -f config/samples/charts_v1alpha1_ticketstore.yaml
  • 22. Takeaways @ammbra1508 Helm Operators Have a custom packaging format. Include many complex configuration data within the package. You are deploying a stateless application and are happy with its settings. Can deploy a stateful application and maintain it in a completely automatic way. Great for checking an application deployment via its release information. Can deploy an application configured in a particular way across a cluster to achieve high availability. Have annotations that can trigger automatic deployments. Useful for operations related to backups or cluster configuration.
  • 23. @ammbra1508 Code made available at https://github.com/ammbra/helm-vs-operators