Add-Ons
Warning
Add-Ons have been disabled. They can no longer be installed, updated or deleted. This guide will show you different options to delete or continue to use the installed resources.
Contents of an Addon
Every addon is installed into a separate namespace prefixed with syseleven-.
In every such namespace you will find:
- An installed Helm release
Most of the addons are installed through a Helm release.
Using a local Helm 3 client, you can find it like so:
Once the addon has been "deactivated", this release will no longer be updated continuously on config changes.
To get the manifests of all resources that are part of that Helm release, run:
- Resources installed without Helm
Some resources are not managed by Helm. To list these resources, run:
kubectl get role,clusterrole,rolebinding,clusterrolebinding,sa,cm,secret,daemonset,prometheusrule,servicemonitor,podmonitor,mutatingwebhookconfiguration,crd,psp -A -l addons.syseleven.de/name="<addon name>"
- A Secret
<namespace>-helm-infowith the following data:
Info
This is only applicable to addons using Helm
chartRepository: The Helm chart repository used to install the addon contentschartName: The name of the chart in the repositorychartVersion: The version of the chart that's installed-
values: A YAML document with all the values used to install the current revision of the Helm releaseThe data is stored in base64 encoded binary. To retrieve it as plaintext, you may run the following:
Remove the resources manually
Info
This is equivalent to choosing to clean up resources when you delete the addon:
- Uninstall the Helm release to ensure, all cluster-scoped resources and resources in other namespaces are cleaned up.
- Delete the namespace to remove all resources that are left.
Run:
helm -n syseleven-<addon name> uninstall syseleven-<addon name>
kubectl delete namespace syseleven-<addon-name>
Manage the Helm release in version control
This is the best way to continue using the addon, but manage it yourself.
- Store the Helm values in a file under version control
- Use the Helm client to upgrade the release on changes
Run:
# store the name in a variable to simplify commands
ADDON=<addon name>
NAMESPACE=syseleven-${ADDON}
kubectl -n ${NAMESPACE} get secret syseleven-${ADDON}-helm-info -o jsonpath='{.data.values}' | base64 --decode > values.yaml
HELM_REPO=$(kubectl -n ${NAMESPACE} get secret syseleven-${ADDON}-helm-info -o jsonpath='{.data.chartRepository}' | base64 --decode)
HELM_CHART_NAME=$(kubectl -n ${NAMESPACE} get secret syseleven-${ADDON}-helm-info -o jsonpath='{.data.chartName}' | base64 --decode)
HELM_CHART_VERSION=$(kubectl -n ${NAMESPACE} get secret syseleven-${ADDON}-helm-info -o jsonpath='{.data.chartVersion}' | base64 --decode)
HELM_RELEASE_NAME=syseleven-${ADDON}
helm upgrade --install -n ${NAMESPACE} ${HELM_RELEASE_NAME} --repo ${HELM_REPO} ${HELM_CHART_NAME} --version ${HELM_CHART_VERSION} -f values.yaml
Addons with a GUI
Addons that come with a user interface will no longer be available on their URL. Grafana login with Keycloak will not be possible either. You can however create an ingress by yourself.
To be able to login to Grafana, edit the configmap syseleven-monitoring-grafana and set disable_login_form = false.
Then, restart Grafana.
You can find the admin login in the secret syseleven-monitoring-grafana.
# Edit and set disable_login_form = false
kubectl -n syseleven-monitoring edit cm syseleven-monitoring-grafana
# Restart
kubectl -n syseleven-monitoring rollout restart deployment syseleven-monitoring-grafana
# Get admin user and password
kubectl -n syseleven-monitoring get secret syseleven-monitoring-grafana -o jsonpath='{.data}'
# Decode the secret, for example:
echo 'c3lzZWxldmVuCg==' | base64 --decode
# Do a port-forward to login (if there is no ingress yet)
kubectl -n syseleven-monitoring port-forward svc/syseleven-monitoring-grafana 8080:80
Migrate to MetaKube Accelerator
For each MetaKube addon there's a MetaKube Accelerator Building Block. Benefit from our experience:
- Same flexibility and more
- Frequent updates
- Carefully curated
- Dependencies, version changes and migrations taken care of
To switch to MetaKube Accelerator, contact our Support.