Karma
- By Leon
Channel | Version | Revision | Published | Runs on |
---|---|---|---|---|
latest/edge | 8 | 8 | 10 May 2022 |
juju deploy karma-k8s --channel edge
You will need Juju 2.9 to be able to run this command. Learn how to upgrade to Juju 2.9.
Deploy Kubernetes operators easily with Juju, the Universal Operator Lifecycle Manager. Need a Kubernetes cluster? Install MicroK8s to create a full CNCF-certified Kubernetes system in under 60 seconds.
Platform:
Karma Operator (k8s)
Description
Alertmanager UI is useful for browsing alerts and managing silences, but it's lacking as a dashboard tool - karma aims to fill this gap. This charm deploys and manages Karma in a Kubernetes environment.
See the Karma source for the details on Karma itself.
Usage
To use Karma, you need to have at least one Alertmanager instance that you wish to view. These need to be either related to Karma, or you can use the karma-alertmanager-proxy charm configured to point to a remote Alertmanager instance, and relate that to karma. For more information see INTEGRATING.
You also need to have a working Kubernetes environment, and have bootstrapped a Juju controller of version 2.9+, with a model ready to use with the Kubernetes cloud.
Example deployment:
juju deploy karma-k8s
Then you could relate to alertmanager:
juju deploy alertmanager-k8s
juju relate alertmanager-k8s karma-k8s
or to a remote alertmanager via an alertmanager proxy:
juju deploy karma-alertmanager-proxy-k8s --config url="http://somewhere:9093"
juju relate karma-alertmanager-proxy-k8s karma-k8s
You could add an ingress for the karma web interface (see INTEGRATING for more information):
# ingress for karma web interface
juju deploy nginx-ingress-integrator
juju relate karma-k8s nginx-ingress-integrator
Scale Out Usage
Karma is an alertmanager client and therefore is not designed to operate as an HA cluster internally. For this reason there is no difference in availability between deploying multiple karma apps vs multiple karma units, although the latter would be easier to configure.
To add additional Karma units for high availability,
juju add-unit karma-k8s
Dashboard
To access Karma, use a web browser pointing to http://service-address:8080
.
Relations
Currently, supported relations are:
dashboard
, via which karma-operator receives information about alertmanager units, e.g. from alertmanager-operator or karma-alertmanager-proxy-operator.ingress
, for interfacing with nginx-ingress-integrator.
OCI Images
This charm can be used with the following image:
ghcr.io/prymitive/karma:v0.90