Einstellungen

Wir respektieren Ihr Recht auf Privatsphäre. Sie können sich dafür entscheiden, einige Arten von Cookies nicht zuzulassen. Ihre Cookie-Einstellungen gelten für unsere gesamte Website.

 

Wir verwenden Cookies auf unserer Website, um unseren Datenverkehr zu analysieren und damit ihre Usererfahrung zu verbessern. Diese Cookies sind aber nicht notwendig, um unsere Seiten korrekt abzurufen.  Datenschutzerklärung.

Developing Operators for Kubernetes

Deutsch
Dieser Vortrag wird auf Deutsch gehalten. / This Talk will be held in German.

The aim of this workshop is to develop an operator which is a custom controller for automating tasks on Kubernetes clusters. Developing operators is an increasingly popular approach in the Kubernetes community. Many operators have been developed including for etcd, Prometheus, and Kafka.

Agenda


  • from 10.00 welcome desk open – coffee and snacks

  • 11.00 a.m.: start

    • Explain what is an operator in the Kubernetes world.

    • Explain CRD (Custom Resource Definition), TPR (Third Party Resource) replacement.

    • Explain the task we want to complete during the workshop.

    • Discussion and questions about the operators and the task.

  • 12.30 p.m. - 1.30 p.m.: lunchbreak

    • Implement the “noop” operator capable of creating/consuming CRD/CRO using client-go library (https://github.com/kubernetes/client-go).

    • Questions.

    • Present working solution.

  • 3.00 p.m. - 3.15 p.m.: coffeebreak

    • Implement the operator logic.

    • Questions.

    • Present working solution.

  • 4.30 p.m. - 4.45 p.m.: coffeebreak

    • Continue with the exercise.

    • Or if time: Discuss operatorkit library https://github.com/giantswarm/operatorkit and how it can make implementing the operator easier.

  • appr. 6.00 p.m. : end



Technical requirements:


Laptop with installed software:

Please make sure the cluster created by the minikube is working. You can check that by issuing kubectl cluster-info. It should look like:

  • $ kubectl config use-context minikube Switched to context "minikube".

  • $ kubectl cluster-info Kubernetes master is running at
    [https://192.168.64.21:8443](https://192.168.64.21:8443)

  • To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

* The workshop exercises will use Go but experience in any modern language such as Java, or Python is sufficient.
* Some experience or knowledge of Kubernetes is needed, as this is an intermediate workshop and not an introduction to Kubernetes.
* A laptop with WiFi and Go 1.8, Docker and the latest version of Minikube installed is necessary to participate.

During this workshop the attendee will automate tasks within Kubernetes by creating an operator. An operator is a custom controller that responds to events on a Kubernetes cluster. The attendee will also define third party resources which are a way of extending the Kubernetes API.

Paweł Kopiczko
Paweł Kopiczko
is a Platform Engineer at Giant Swarm where he works on Giantnetes - a platform for running managed Kubernetes clusters on bare metal and in the cloud.
Ross Fairbanks
Ross Fairbanks
is a Platform Engineer at Giant Swarm where he works on Giantnetes - a platform for running managed Kubernetes clusters on bare metal and in the cloud.

Gold-Sponsor


 

CLC-Newsletter

Du möchtest über die CLC auf dem Laufenden gehalten werden?

Anmelden