Skip to content

Kubernetes Operator Samples using Go, the Operator SDK and OLM

License

Notifications You must be signed in to change notification settings

thomassuedbroecker/operator-sample-go

 
 

Repository files navigation

Kubernetes Operator Patterns and Best Practises

This project contains Kubernetes operator samples that demonstrate best practices how to develop operators with Golang, Operator SDK including Kubebuilder and the Operator Lifecycle Manager Framework.

Table of content

  • Example applications
  • Example operators
  • Get started
  • Documentation

Example applications

Therefor the project includes two example application implementations, which will deployed and operated by the different examples for operator implementations.

Example operators

The repo contains four operators:

  1. Application operator: Deploys and manages a simple microservice application.
  2. Database operator: Deploys and manages a simple database. Used by the application.
  3. operator-application-scaler: TBD
  4. operator-database-backup: TBD

Get started

The easiest way to get started is to run the application operator which uses prebuilt images of the database controller, the microservice and all other required components.

There are three ways to run the application operator:

  1. Local Go Operator
  2. Kubernetes Operator manually deployed
  3. Kubernetes Operator deployed via OLM
    • via operator-sdk
    • via kubectl

Documentation

Overview and Scenarios

Basic Capabilities

Advanced Capabilities

Development and Deployment

Golang

To start developing operators, we recommend to get familiar with the Kubernetes Operator Metamodel first.

Resources

About

Kubernetes Operator Samples using Go, the Operator SDK and OLM

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 67.1%
  • Java 11.4%
  • Makefile 11.1%
  • Shell 6.9%
  • Dockerfile 3.5%