SlideShare a Scribd company logo
Operator development
made easy with Helm
Olaf Meyer
Senior Consultant
29.07.2021
Operator development made easy with Helm Page 2 of 17
Who am I and what do I do for living?
I’m a consultant at ConSol. I support &
advise customers how to use OpenShift
and Kubernetes and how to run
applications on these platforms.
My interest is how to accelerate the
development cycles for cloud native
applications.
Twitter: @ola_mey
Operator development made easy with Helm Page 3 of 17
About Consol Software GmbH
Software
Engineering
Whether with modern
software architecture,
cloud-native software, IT
integration or customized
CI/CD pipelines –
we understand our
technological
know-how as an offer to
master the challenges of
digitalization.
IT Solutions
We develop IT solutions
with a high utility value
and pursue ideas beyond
our current business. The
results? For example our
software ConSol CM, our
open source offer for test
automation or
Red Hat Solutions.
IT Operations
Managed services, IT
operations or support –
at ConSol you choose
exactly the services that
an efficient IT requires.
For any project size,
whether on premises or
in the cloud. Individual
SLAs ensure calculable
costs at all times.
IT Consulting
No matter whether
coaching, consulting in
a special field or
complete management
of your IT project: With
more than 30 years of
competence, our
consulting services are
above all tailored to
you and realizable.
Operator development made easy with Helm Page 4 of 17
Agenda
• What are Operators?
• Why is this interesting for me as a DevOps Engineer?
• Why should I care about Helm Operators, if I could use Go or ….
• When not to use Operators?
• How to combine Operators with GitOps?
• Demo
• Summary
Operator development made easy with Helm Page 5 of 17
What are Operators?
The term was coined in the article „Introducing Operators: Putting Operational
Knowledge into Software“ by Brandon Philips of CoreOS on 3rd
November 2016.
Definition of Operators from this article:
„We call this new class of software Operators. An Operator is an application-
specific controller that extends the Kubernetes API to create, configure, and
manage instances of complex stateful applications on behalf of a Kubernetes
user. It builds upon the basic Kubernetes resource and controller concepts but
includes domain or application-specific knowledge to automate common
tasks.“
Operator development made easy with Helm Page 6 of 17
What are Operators?
https://github.com/cncf/tag-app-delivery/blob/master/operator-wg/whitepaper/Operator-WhitePaper_v1-0.md
Operator development made easy with Helm Page 7 of 17
What are Operators?
Frameworks that help you create Operators (a not complete list)
• Operator Framework (https://operatorframework.io/)
• Kopf - Kubernetes Operator Pythonic Framework
(https://github.com/nolar/kopf)
• Kubebuilder (https://book.kubebuilder.io/)
• Metacontroller (https://metacontroller.github.io/metacontroller/)
• Kubernetes Universal Declarative Operator (https://kudo.dev/)
• Charmed Operator Framework (https://juju.is/)
• Shell-operator (https://github.com/flant/shell-operator)
• Write your own ...
Operator development made easy with Helm Page 8 of 17
Operator Framework
3 Pillars of the Operator Framework
1) Operator SDK
– Helm
– Ansible
– Go (Scaffolding by kubebuilder)
2) Operator Lifecycle Manager
3) Operatorhub.io
Operator development made easy with Helm Page 9 of 17
Operator Capability Levels
https://sdk.operatorframework.io/docs/overview/operator-capabilities/
Operator development made easy with Helm Page 10 of 17
Why use helm to create Operators?
• Helm is a broadly adopted framework for packaging of K8s applications
• Easy to learn and to read → Good starting point to create Operators
• Can later still be used for creating and updating K8S resources in other
Operators
• Defined CRD allow documentation and validation of user input
Operator development made easy with Helm Page 11 of 17
When not use helm to create Operators?
• Operator manages for K8s and non-K8S resources
• Deployment and updates require complex data- or application migration
Operator development made easy with Helm Page 12 of 17
When not create Operators?
• Only a few instances of the applications need to be installed
• No or seldom updates of existing applications
Operator development made easy with Helm Page 13 of 17
Demo(s)
1) Create helm Operator from a Nginx Helm-Chart
2) Combine two Operators with ArgoCD
– Project setup Operator → Creates namespaces, quota, limit ranges and
admin user based on CR
– Deploys example applications Java, NodeJs and Rails based on CR
Operator development made easy with Helm Page 14 of 17
Demo(s)
Operator development made easy with Helm Page 15 of 17
Summary
• Creating (Helm) Operators is easy
• Do not underestimate the effort for testing and documentation
– Applies to all kinds of Operators
• CRDs are handled like every other resource in K8S
• A journey of a Helm operator to OperatorHub.io and back again
(https://labs.consol.de/development/2021/05/03/helm_based_operator.html)
Thank you!
Olaf Meyer
Twitter: @ola_mey
ConSol
Consulting & Solutions Software
GmbH
St.-Cajetan-Str. 43
D-81669 München
Tel.: +49-89-45841-100
info@consol.de
www.consol.de
Twitter: @consol_de

More Related Content

What's hot

OSDC 2018 - Distributed monitoring
OSDC 2018 - Distributed monitoringOSDC 2018 - Distributed monitoring
OSDC 2018 - Distributed monitoring
Gianluca Arbezzano
 
A mini adventure in Minikube devopsdays CT 2017
A mini adventure in Minikube devopsdays CT 2017A mini adventure in Minikube devopsdays CT 2017
A mini adventure in Minikube devopsdays CT 2017
Whitney Tennant
 
Kubernetes 1.16 and rancher 2.3 enhancements
Kubernetes 1.16 and rancher 2.3 enhancementsKubernetes 1.16 and rancher 2.3 enhancements
Kubernetes 1.16 and rancher 2.3 enhancements
Saiyam Pathak
 
Kubernetes Deployments: A "Hands-off" Approach
Kubernetes Deployments: A "Hands-off" ApproachKubernetes Deployments: A "Hands-off" Approach
Kubernetes Deployments: A "Hands-off" Approach
Rodrigo Reis
 
Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...
Red Hat Developers
 
WTF Do We Need a Service Mesh?
WTF Do We Need a Service Mesh? WTF Do We Need a Service Mesh?
WTF Do We Need a Service Mesh?
Anton Weiss
 
Kubernetes: The evolution of distributed systems | DevNation Tech Talk
Kubernetes: The evolution of distributed systems | DevNation Tech TalkKubernetes: The evolution of distributed systems | DevNation Tech Talk
Kubernetes: The evolution of distributed systems | DevNation Tech Talk
Red Hat Developers
 
Deploying Kong with Mesosphere DC/OS
Deploying Kong with Mesosphere DC/OSDeploying Kong with Mesosphere DC/OS
Deploying Kong with Mesosphere DC/OS
Mesosphere Inc.
 
Automate The Creation/Transformation of Infrastructure as Code Artifacts with...
Automate The Creation/Transformation of Infrastructure as Code Artifacts with...Automate The Creation/Transformation of Infrastructure as Code Artifacts with...
Automate The Creation/Transformation of Infrastructure as Code Artifacts with...
Konveyor Community
 
Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...
Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...
Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...
Platform9
 
Kubernetes Helm: Why It Matters
Kubernetes Helm: Why It MattersKubernetes Helm: Why It Matters
Kubernetes Helm: Why It Matters
Platform9
 
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Red Hat Developers
 
Top 5 Considerations for Successful Deployment of Kubernetes
Top 5 Considerations for Successful Deployment of KubernetesTop 5 Considerations for Successful Deployment of Kubernetes
Top 5 Considerations for Successful Deployment of Kubernetes
Platform9
 
Docker - Build, Ship and Run Any App, Anywhere Hollywood edition
Docker - Build, Ship and Run Any App, Anywhere Hollywood editionDocker - Build, Ship and Run Any App, Anywhere Hollywood edition
Docker - Build, Ship and Run Any App, Anywhere Hollywood edition
Brian Christner
 
Cloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization ServicesCloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization Services
Anfernee Bonds
 
Deploying Anything as a Service (XaaS) Using Operators on Kubernetes
Deploying Anything as a Service (XaaS) Using Operators on KubernetesDeploying Anything as a Service (XaaS) Using Operators on Kubernetes
Deploying Anything as a Service (XaaS) Using Operators on Kubernetes
All Things Open
 
Migrating from oracle soa suite to microservices on kubernetes
Migrating from oracle soa suite to microservices on kubernetesMigrating from oracle soa suite to microservices on kubernetes
Migrating from oracle soa suite to microservices on kubernetes
Konveyor Community
 
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCPstackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
NETWAYS
 
Getting Started with Kafka on k8s
Getting Started with Kafka on k8sGetting Started with Kafka on k8s
Getting Started with Kafka on k8s
VMware Tanzu
 
[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API
Lakmal Warusawithana
 

What's hot (20)

OSDC 2018 - Distributed monitoring
OSDC 2018 - Distributed monitoringOSDC 2018 - Distributed monitoring
OSDC 2018 - Distributed monitoring
 
A mini adventure in Minikube devopsdays CT 2017
A mini adventure in Minikube devopsdays CT 2017A mini adventure in Minikube devopsdays CT 2017
A mini adventure in Minikube devopsdays CT 2017
 
Kubernetes 1.16 and rancher 2.3 enhancements
Kubernetes 1.16 and rancher 2.3 enhancementsKubernetes 1.16 and rancher 2.3 enhancements
Kubernetes 1.16 and rancher 2.3 enhancements
 
Kubernetes Deployments: A "Hands-off" Approach
Kubernetes Deployments: A "Hands-off" ApproachKubernetes Deployments: A "Hands-off" Approach
Kubernetes Deployments: A "Hands-off" Approach
 
Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...
 
WTF Do We Need a Service Mesh?
WTF Do We Need a Service Mesh? WTF Do We Need a Service Mesh?
WTF Do We Need a Service Mesh?
 
Kubernetes: The evolution of distributed systems | DevNation Tech Talk
Kubernetes: The evolution of distributed systems | DevNation Tech TalkKubernetes: The evolution of distributed systems | DevNation Tech Talk
Kubernetes: The evolution of distributed systems | DevNation Tech Talk
 
Deploying Kong with Mesosphere DC/OS
Deploying Kong with Mesosphere DC/OSDeploying Kong with Mesosphere DC/OS
Deploying Kong with Mesosphere DC/OS
 
Automate The Creation/Transformation of Infrastructure as Code Artifacts with...
Automate The Creation/Transformation of Infrastructure as Code Artifacts with...Automate The Creation/Transformation of Infrastructure as Code Artifacts with...
Automate The Creation/Transformation of Infrastructure as Code Artifacts with...
 
Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...
Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...
Cost-effective Compute Clusters with Spot and Pre-emptible Instances - KubeCo...
 
Kubernetes Helm: Why It Matters
Kubernetes Helm: Why It MattersKubernetes Helm: Why It Matters
Kubernetes Helm: Why It Matters
 
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
 
Top 5 Considerations for Successful Deployment of Kubernetes
Top 5 Considerations for Successful Deployment of KubernetesTop 5 Considerations for Successful Deployment of Kubernetes
Top 5 Considerations for Successful Deployment of Kubernetes
 
Docker - Build, Ship and Run Any App, Anywhere Hollywood edition
Docker - Build, Ship and Run Any App, Anywhere Hollywood editionDocker - Build, Ship and Run Any App, Anywhere Hollywood edition
Docker - Build, Ship and Run Any App, Anywhere Hollywood edition
 
Cloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization ServicesCloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization Services
 
Deploying Anything as a Service (XaaS) Using Operators on Kubernetes
Deploying Anything as a Service (XaaS) Using Operators on KubernetesDeploying Anything as a Service (XaaS) Using Operators on Kubernetes
Deploying Anything as a Service (XaaS) Using Operators on Kubernetes
 
Migrating from oracle soa suite to microservices on kubernetes
Migrating from oracle soa suite to microservices on kubernetesMigrating from oracle soa suite to microservices on kubernetes
Migrating from oracle soa suite to microservices on kubernetes
 
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCPstackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
stackconf 2021 | How we finally migrated an eCommerce-Platform to GCP
 
Getting Started with Kafka on k8s
Getting Started with Kafka on k8sGetting Started with Kafka on k8s
Getting Started with Kafka on k8s
 
[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API[Lakmal] Automate Microservice to API
[Lakmal] Automate Microservice to API
 

Similar to "Operator development made easy with Helm"

IBM RedHat OCP Vs xKS.pptx
IBM RedHat OCP Vs xKS.pptxIBM RedHat OCP Vs xKS.pptx
IBM RedHat OCP Vs xKS.pptx
ssuser666667
 
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
GRUC
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021
NeerajKumar1965
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
Phil Estes
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday Docker
Sakari Hoisko
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
Marco Ferrigno
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps Paradigm
NaLUG
 
CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...
CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...
CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...
Daniel Bryant
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018
Krishna-Kumar
 
Tech Talk - Cloud Transformation in 2017
Tech Talk - Cloud Transformation in 2017Tech Talk - Cloud Transformation in 2017
Tech Talk - Cloud Transformation in 2017
Alex Rhea
 
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
Srijan Technologies
 
Docker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - PresentationDocker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - Presentation
Alex Vranceanu
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
Dev_Events
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
Jake Peyser
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
Paula Peña (She, Her, Hers)
 
Cloud to Edge
Cloud to EdgeCloud to Edge
Cloud to Edge
Wesley Reisz
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle Developers
 
Slide DevSecOps Microservices
Slide DevSecOps Microservices Slide DevSecOps Microservices
Slide DevSecOps Microservices
Hendri Karisma
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
sbbabu
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
Jitendra Bafna
 

Similar to "Operator development made easy with Helm" (20)

IBM RedHat OCP Vs xKS.pptx
IBM RedHat OCP Vs xKS.pptxIBM RedHat OCP Vs xKS.pptx
IBM RedHat OCP Vs xKS.pptx
 
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
 
Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021Nyc mule soft_meetup_13_march_2021
Nyc mule soft_meetup_13_march_2021
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday Docker
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps Paradigm
 
CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...
CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...
CloudNativeLondon 2018: "In Search of the Perfect Cloud Native Developer Expe...
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018
 
Tech Talk - Cloud Transformation in 2017
Tech Talk - Cloud Transformation in 2017Tech Talk - Cloud Transformation in 2017
Tech Talk - Cloud Transformation in 2017
 
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
[Srijan Wednesday Webinars] How to Build a Cloud Native Platform for Enterpri...
 
Docker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - PresentationDocker Birthday #5 Meetup Cluj - Presentation
Docker Birthday #5 Meetup Cluj - Presentation
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Cloud to Edge
Cloud to EdgeCloud to Edge
Cloud to Edge
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018
 
Slide DevSecOps Microservices
Slide DevSecOps Microservices Slide DevSecOps Microservices
Slide DevSecOps Microservices
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
 

More from ConSol Consulting & Solutions Software GmbH

"Messaging with Quarkus"
"Messaging with Quarkus""Messaging with Quarkus"
"Remote development of Quarkus applications"
"Remote development of Quarkus applications""Remote development of Quarkus applications"
"Remote development of Quarkus applications"
ConSol Consulting & Solutions Software GmbH
 
„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“
ConSol Consulting & Solutions Software GmbH
 
"Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation""Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation"
ConSol Consulting & Solutions Software GmbH
 
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen..."Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
ConSol Consulting & Solutions Software GmbH
 
"Remote development of Quarkus applications"
"Remote development of Quarkus applications""Remote development of Quarkus applications"
"Remote development of Quarkus applications"
ConSol Consulting & Solutions Software GmbH
 
"Operator development made easy with Helm"
"Operator development made easy with Helm""Operator development made easy with Helm"
"Operator development made easy with Helm"
ConSol Consulting & Solutions Software GmbH
 
„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“
ConSol Consulting & Solutions Software GmbH
 
App Security with Keycloak and Quarkus
App Security with Keycloak and QuarkusApp Security with Keycloak and Quarkus
App Security with Keycloak and Quarkus
ConSol Consulting & Solutions Software GmbH
 
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworksConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol Consulting & Solutions Software GmbH
 
Keynote: Cloud native; DevOps,...
Keynote: Cloud native; DevOps,...Keynote: Cloud native; DevOps,...
Keynote: Cloud native; DevOps,...
ConSol Consulting & Solutions Software GmbH
 
Digitalisierung mit ConSol CM
Digitalisierung mit ConSol CMDigitalisierung mit ConSol CM
Digitalisierung mit ConSol CM
ConSol Consulting & Solutions Software GmbH
 
Monitoring klassisch oder Cloud
Monitoring klassisch oder CloudMonitoring klassisch oder Cloud
Monitoring klassisch oder Cloud
ConSol Consulting & Solutions Software GmbH
 
Testautomatisierung
TestautomatisierungTestautomatisierung
OpenShift Evolution
OpenShift EvolutionOpenShift Evolution
Monitoring klassisch oder Cloud
Monitoring klassisch oder CloudMonitoring klassisch oder Cloud
Monitoring klassisch oder Cloud
ConSol Consulting & Solutions Software GmbH
 
Go serverless!
Go serverless!Go serverless!
Cloud-Native ohne Vendor Lock-in mit Kubernetes
Cloud-Native ohne Vendor Lock-in mit KubernetesCloud-Native ohne Vendor Lock-in mit Kubernetes
Cloud-Native ohne Vendor Lock-in mit Kubernetes
ConSol Consulting & Solutions Software GmbH
 
Cloud-Migrations
Cloud-MigrationsCloud-Migrations
Case Study Telefonica
Case Study TelefonicaCase Study Telefonica

More from ConSol Consulting & Solutions Software GmbH (20)

"Messaging with Quarkus"
"Messaging with Quarkus""Messaging with Quarkus"
"Messaging with Quarkus"
 
"Remote development of Quarkus applications"
"Remote development of Quarkus applications""Remote development of Quarkus applications"
"Remote development of Quarkus applications"
 
„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“
 
"Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation""Kubernetes as Driver of Generic IT Automation"
"Kubernetes as Driver of Generic IT Automation"
 
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen..."Using Automation Tools To Deploy And Operate Applications In Real World Scen...
"Using Automation Tools To Deploy And Operate Applications In Real World Scen...
 
"Remote development of Quarkus applications"
"Remote development of Quarkus applications""Remote development of Quarkus applications"
"Remote development of Quarkus applications"
 
"Operator development made easy with Helm"
"Operator development made easy with Helm""Operator development made easy with Helm"
"Operator development made easy with Helm"
 
„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“„GitOps with Flux and Flagger“
„GitOps with Flux and Flagger“
 
App Security with Keycloak and Quarkus
App Security with Keycloak and QuarkusApp Security with Keycloak and Quarkus
App Security with Keycloak and Quarkus
 
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworksConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
ConSol_IBM_webcast_quarkus_the_blue_hedgehog_of_java_web_frameworks
 
Keynote: Cloud native; DevOps,...
Keynote: Cloud native; DevOps,...Keynote: Cloud native; DevOps,...
Keynote: Cloud native; DevOps,...
 
Digitalisierung mit ConSol CM
Digitalisierung mit ConSol CMDigitalisierung mit ConSol CM
Digitalisierung mit ConSol CM
 
Monitoring klassisch oder Cloud
Monitoring klassisch oder CloudMonitoring klassisch oder Cloud
Monitoring klassisch oder Cloud
 
Testautomatisierung
TestautomatisierungTestautomatisierung
Testautomatisierung
 
OpenShift Evolution
OpenShift EvolutionOpenShift Evolution
OpenShift Evolution
 
Monitoring klassisch oder Cloud
Monitoring klassisch oder CloudMonitoring klassisch oder Cloud
Monitoring klassisch oder Cloud
 
Go serverless!
Go serverless!Go serverless!
Go serverless!
 
Cloud-Native ohne Vendor Lock-in mit Kubernetes
Cloud-Native ohne Vendor Lock-in mit KubernetesCloud-Native ohne Vendor Lock-in mit Kubernetes
Cloud-Native ohne Vendor Lock-in mit Kubernetes
 
Cloud-Migrations
Cloud-MigrationsCloud-Migrations
Cloud-Migrations
 
Case Study Telefonica
Case Study TelefonicaCase Study Telefonica
Case Study Telefonica
 

Recently uploaded

AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
Gerardo Pardo-Castellote
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
Hironori Washizaki
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
Peter Muessig
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
Hornet Dynamics
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
lorraineandreiamcidl
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Undress Baby
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
pavan998932
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
Remote DBA Services
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 

Recently uploaded (20)

AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
DDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systemsDDS-Security 1.2 - What's New? Stronger security for long-running systems
DDS-Security 1.2 - What's New? Stronger security for long-running systems
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 
SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024SWEBOK and Education at FUSE Okinawa 2024
SWEBOK and Education at FUSE Okinawa 2024
 
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsUI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
UI5con 2024 - Boost Your Development Experience with UI5 Tooling Extensions
 
E-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet DynamicsE-commerce Development Services- Hornet Dynamics
E-commerce Development Services- Hornet Dynamics
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptxLORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
LORRAINE ANDREI_LEQUIGAN_HOW TO USE WHATSAPP.pptx
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdfRevolutionizing Visual Effects Mastering AI Face Swaps.pdf
Revolutionizing Visual Effects Mastering AI Face Swaps.pdf
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
What is Augmented Reality Image Tracking
What is Augmented Reality Image TrackingWhat is Augmented Reality Image Tracking
What is Augmented Reality Image Tracking
 
Oracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptxOracle Database 19c New Features for DBAs and Developers.pptx
Oracle Database 19c New Features for DBAs and Developers.pptx
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 

"Operator development made easy with Helm"

  • 1. Operator development made easy with Helm Olaf Meyer Senior Consultant 29.07.2021
  • 2. Operator development made easy with Helm Page 2 of 17 Who am I and what do I do for living? I’m a consultant at ConSol. I support & advise customers how to use OpenShift and Kubernetes and how to run applications on these platforms. My interest is how to accelerate the development cycles for cloud native applications. Twitter: @ola_mey
  • 3. Operator development made easy with Helm Page 3 of 17 About Consol Software GmbH Software Engineering Whether with modern software architecture, cloud-native software, IT integration or customized CI/CD pipelines – we understand our technological know-how as an offer to master the challenges of digitalization. IT Solutions We develop IT solutions with a high utility value and pursue ideas beyond our current business. The results? For example our software ConSol CM, our open source offer for test automation or Red Hat Solutions. IT Operations Managed services, IT operations or support – at ConSol you choose exactly the services that an efficient IT requires. For any project size, whether on premises or in the cloud. Individual SLAs ensure calculable costs at all times. IT Consulting No matter whether coaching, consulting in a special field or complete management of your IT project: With more than 30 years of competence, our consulting services are above all tailored to you and realizable.
  • 4. Operator development made easy with Helm Page 4 of 17 Agenda • What are Operators? • Why is this interesting for me as a DevOps Engineer? • Why should I care about Helm Operators, if I could use Go or …. • When not to use Operators? • How to combine Operators with GitOps? • Demo • Summary
  • 5. Operator development made easy with Helm Page 5 of 17 What are Operators? The term was coined in the article „Introducing Operators: Putting Operational Knowledge into Software“ by Brandon Philips of CoreOS on 3rd November 2016. Definition of Operators from this article: „We call this new class of software Operators. An Operator is an application- specific controller that extends the Kubernetes API to create, configure, and manage instances of complex stateful applications on behalf of a Kubernetes user. It builds upon the basic Kubernetes resource and controller concepts but includes domain or application-specific knowledge to automate common tasks.“
  • 6. Operator development made easy with Helm Page 6 of 17 What are Operators? https://github.com/cncf/tag-app-delivery/blob/master/operator-wg/whitepaper/Operator-WhitePaper_v1-0.md
  • 7. Operator development made easy with Helm Page 7 of 17 What are Operators? Frameworks that help you create Operators (a not complete list) • Operator Framework (https://operatorframework.io/) • Kopf - Kubernetes Operator Pythonic Framework (https://github.com/nolar/kopf) • Kubebuilder (https://book.kubebuilder.io/) • Metacontroller (https://metacontroller.github.io/metacontroller/) • Kubernetes Universal Declarative Operator (https://kudo.dev/) • Charmed Operator Framework (https://juju.is/) • Shell-operator (https://github.com/flant/shell-operator) • Write your own ...
  • 8. Operator development made easy with Helm Page 8 of 17 Operator Framework 3 Pillars of the Operator Framework 1) Operator SDK – Helm – Ansible – Go (Scaffolding by kubebuilder) 2) Operator Lifecycle Manager 3) Operatorhub.io
  • 9. Operator development made easy with Helm Page 9 of 17 Operator Capability Levels https://sdk.operatorframework.io/docs/overview/operator-capabilities/
  • 10. Operator development made easy with Helm Page 10 of 17 Why use helm to create Operators? • Helm is a broadly adopted framework for packaging of K8s applications • Easy to learn and to read → Good starting point to create Operators • Can later still be used for creating and updating K8S resources in other Operators • Defined CRD allow documentation and validation of user input
  • 11. Operator development made easy with Helm Page 11 of 17 When not use helm to create Operators? • Operator manages for K8s and non-K8S resources • Deployment and updates require complex data- or application migration
  • 12. Operator development made easy with Helm Page 12 of 17 When not create Operators? • Only a few instances of the applications need to be installed • No or seldom updates of existing applications
  • 13. Operator development made easy with Helm Page 13 of 17 Demo(s) 1) Create helm Operator from a Nginx Helm-Chart 2) Combine two Operators with ArgoCD – Project setup Operator → Creates namespaces, quota, limit ranges and admin user based on CR – Deploys example applications Java, NodeJs and Rails based on CR
  • 14. Operator development made easy with Helm Page 14 of 17 Demo(s)
  • 15. Operator development made easy with Helm Page 15 of 17 Summary • Creating (Helm) Operators is easy • Do not underestimate the effort for testing and documentation – Applies to all kinds of Operators • CRDs are handled like every other resource in K8S • A journey of a Helm operator to OperatorHub.io and back again (https://labs.consol.de/development/2021/05/03/helm_based_operator.html)
  • 17. Olaf Meyer Twitter: @ola_mey ConSol Consulting & Solutions Software GmbH St.-Cajetan-Str. 43 D-81669 München Tel.: +49-89-45841-100 info@consol.de www.consol.de Twitter: @consol_de