Upgrade to Pro — share decks privately, control downloads, hide ads and more …

GitOps Happy Hour - Operators in a GitOps World

Red Hat Livestreaming
December 03, 2020
170

GitOps Happy Hour - Operators in a GitOps World

Join Christian Hernandez, GitOps Extraordinaire, for a journey through how to achieve GitOps in any number of ways. The occasional Red Hatters and special guest will join us too.

https://openshift.tv

Red Hat Livestreaming

December 03, 2020
Tweet

Transcript

  1. Operators in a GitOps World 1 Christian Hernandez Senior Principal

    Technical Marketing Manager Cloud Platforms Business Unit @christianh814
  2. • Overview of Operators • Overview of Operator Lifecycle Management

    • Where Operators fit in the bigger GitOps picture It’s a GitOps World 2
  3. Flexible app architectures Uniform deploy and debug No reinvention of

    core concepts Truly hybrid Operators codify operational knowledge and workflows to automate life-cycle management of containerized applications with Kubernetes Kubernetes-native day 2 management
  4. • Codify operational knowledge and software lifecycle • Software-as-a-Service consumption

    model The purpose of Operators 5 Embed ops knowledge from the experts Operator v1.1.2 Deployments StatefulSets Autoscalers Secrets Config maps
  5. Operators in action 7 Custom Resource Developer / OpenShift User

    Deployments StatefulSets Autoscalers Secrets ConfigMaps PersistentVolumes K8s API apiVersion: etcd.database.coreos.com/v1beta2 kind: EtcdCluster metadata: name: example-etcd-cluster spec: size: 5 version: 3.2.13 Custom Kubernetes Controller Watch Events Reconciliation + Custom Resource Definition Kubernetes Operator Native Kubernetes Resources
  6. Operator updates 8 OPERATOR LIFECYCLE MANAGER YourOperator v1.2 YourOperator v1.3

    YourOperator v2.0 YourOperator v2.1 Subscription for YourOperator Time Version YourApp v3.0 YourApp v3.1 YourApp v3.1 Operator Catalog
  7. • OperatorHub.io launched by Red Hat, AWS, Microsoft and Google

    • OpenShift Operator Certification • OperatorHub integrated into OpenShift 4 COMMUNITY OPERATORS OperatorHub and certified Operators OPENSHIFT CERTIFIED OPERATORS
  8. • Operators ◦ Codify Operational/Software-lifecycle knowledge ◦ Built on Kubernetes

    primitives (CRDs) ◦ SDK: Golang, Ansible, Helm, more to come! ◦ Meant for Automating applications ◦ OpenShift 4 is built on top of Operators • Manage Operators with OLM ◦ An operator for Operators ◦ Control versions and upgrades ◦ Catalog/SaaS experience In Summary 10
  9. • What are Operators, really? ◦ Custom Resource saved in

    YAML ◦ Automation triggered by the CR (the YAML) ◦ Changes are made by editing the CR (YAML) ◦ Other changes are reconciled back to the desired state ◦ Easily Replicated to other clusters • What is GitOps? ◦ Manifests are saved in git (YAML) ◦ Automation/sync tool reads manifest (YAML) ◦ Changes are made by PRing the YAML ◦ Other changes are reconciled back to the desired state. ◦ Easily Replicated to other clusters So Many Automation Tools! 12
  10. How To Interface with Operators/OLM 13 CLUSTER VERSION OPERATOR YAML

    MACHINE CONFIG OPERATOR CLUSTER OPERATORS DNS, Authentication, Console, Ingress, Network, Registry, Monitoring, Logging, etc. OpenShift Nodes
  11. It’s Just YAML! 14 CLUSTER VERSION OPERATOR YAML MACHINE CONFIG

    OPERATOR CLUSTER OPERATORS DNS, Authentication, Console, Ingress, Network, Registry, Monitoring, Logging, etc. OpenShift Nodes
  12. • Operators are YAML Driven • YAML for the Operator

    function should live in Git • The point of demarcation is the handoff of this YAML You manage the manifest with GitOps as you normally would, while allowing the automation of Operators to be performed. The Point Of Demarcation 15
  13. • Cluster Operators and the CVO • Machine Config Operators

    ◦ RHCOS MachineSet Configs ◦ Windows MachineSet Configs ◦ MachineSet Autoscalers • Machine Configs • Machine Config Pools Other Things To Consider 16