This workshop will help to understand how to install, configure and use an in house Observability stack while understanding how to operate all the components at the same time as connecting all of them together and how to use these components to get the most from metrics, traces and logs in your organization
Overview of operating observability components
- Prometheus
- Alertmanager
- Grafana
- HA deployments
- Service discovery
- Relabeling
- Long term storage
- Understanding its CRDs and how to use them - https://github.com/prometheus-operator/prometheus-operator/blob/master/Documentation
- Strategies for CI/CD
- PromQL
- Alert unit testing
- HA deployments
- Routes
- Receivers
- Receivers tree - Test data
- Templates (for Slack)
- Do I need a DB?
- HA deployments
- Authentication
- Understanding the different metrics and which panels we should use
- Creating a dashboard through the UI
- Creating dashboards programmatically
- Strategies for CI/CD
- Instrumentation
- Jaeger, Zipkin and OpenTelemetry
- Storage
- Components
- Storage
- Retention
- Grafana dashboards
- CLI
- Components
- Storage
- Retention
$ helm upgrade --install --wait \
-n monitoring karma \
-f ./helm/stable/karma/1.5.2/values.yaml \
--version 1.5.2 \
stable/karma
$ helm upgrade --install --wait \
-n monitoring karma \
-f ./helm/stable/karma/1.5.2/values.yaml \
--version 1.5.2 \
stable/karma
At the moment of writting this agenda Karma Helm chart does not support ingresses without host
field.
Defining this breaks the other ingresses wihtout hostname when using KinD.
To fix this we just need to remove the field from the deployed ingress
$ KUBE_EDITOR=vi kubectl edit ingress -n monitoring karma
To make it work we need to remove the host
field from the ingress rule