Dependencies
Overview
Axual uses various backend components such as Kubernetes Operators to improve the deployment of the platform. Installation of these components is not part of the Axual Platform Helm charts but should ideally be provided by an infrastructure team or installed via the official Helm charts.
Many of these dependencies require the installation of Kubernetes Custom Resource Definitions (CRDs) that require elevated cluster permissions to install. |
Strimzi
When installing the Axual Platform Streaming layer,
that contains the Apache Kafka brokers,
installation and management of the brokers is done using the Strimzi Operator.
The Strimzi Cluster Operator can manage
and maintain Kafka clusters declaratively
that fully fits our Ways of deploying Axual (Best practices).
Strimzi is partially developed by Red Hat,
and in 2024 Strimzi became a CNCF incubator project.
Cert Manager
Although TLS is commonly used, working with TLS certificates can quickly get complex and error-prone due to the number of certificates used and their regular replacement interval.
Cert-manager allows for automated generation and (re-)issuing of certificates without any manual intervention, this can save an operator quite some work in the long run.
Reloader
Re-issuing Certificates and refreshing Secrets will be done by cert-manager, but restarting Pods is not part of its responsibilities. That’s where Stakater Reloader can be used to make certificate rolling completely automated, so that Pods are restarted once a new certificate is issued.
Ingress
Exposing a Service on Kubernetes can be done in various ways (LoadBalancer, Route, etc), but an Ingress is most commonly used. However, Kubernetes leaves Ingress implementation details to Ingress Controllers that need to be installed separately. For example: Adding an Ingress controller
External DNS
ExternalDNS synchronizes exposed Kubernetes Services and Ingresses with DNS providers.
Prometheus Stack
The Prometheus stack containing Prometheus, Grafana and AlertManager is commonly used to deal with Monitoring & Metrics on a Kubernetes cluster.