This operator is in charge of handling the setup and configuration of the Giant Swarm observability platform.
It reconciles cluster.cluster.x-k8s.io objects and makes sure each Cluster is provided with:
- TODO(atlas) update this section
It will look for kubernetes Secrets and use them as alertmanager configs if they meet these criteria:
- a label
observability.giantswarm.io/kind: alertmanager-config - an annotation or label
observability.giantswarm.io/tenantset to the tenant that the alertmanager config should be loaded in.
Current limitations:
- no support for merging configs for the same tenant. Creating 2 secrets for the same tenant will result in an unexpected behavior as the operator could unknowingly replace one with the other.
- each alertmanager config belongs to one and only one tenant
It will look for kubernetes ConfigMaps and use them as dashboards if they meet these criteria:
- a label
app.giantswarm.io/kind: "dashboard" - an annotation or label
observability.giantswarm.io/organizationset to the organization the dasboard should be loaded in.
Current limitations:
- no support for folders
- each dashboard belongs to one and only one organization
Get the code and build it via:
git clone https://github.com/giantswarm/observability-operator.git
cd observability-operator
makeSee make help for help.
If you want to run the operator locally against an existing cluster, you can use make local which will use hack/bin/run-local.sh to setup a local instance for the operator.
TODO(atlas): Fill this out
This operator was built using kubebuilder.