Infrastructure Requirements
This reference lists what the Axual Platform needs from the infrastructure it runs on: the Kubernetes cluster requirements, and the DNS names and certificates a deployment has to have in place.
Type |
Reference |
Goal |
Check whether a target cluster meets what the platform needs, before designing a deployment. |
Audience |
Infrastructure engineers and Platform Operators designing or reviewing a deployment. |
When to use |
At the start of an installation, and when reviewing an existing cluster against the requirements. |
The platform runs on Kubernetes and on OpenShift. Both are supported and run production workloads, and the platform is listed on the Red Hat Ecosystem Catalog. For how the platform behaves under failure, see Resilience.
The examples throughout this documentation use kubectl. The equivalent OpenShift commands work the same way: replace kubectl with oc.
|
Requirements
Treat these as the starting point for the infrastructure design of a new installation, to be refined with the team that owns the cluster. They group into three kinds: what the cluster itself must provide, what you must be able to reach or be granted, and prerequisites significant enough to have their own guide. Services the platform needs running somewhere, such as a database and Vault, the integrations a production installation is expected to have in place, such as an identity provider or a GitOps workflow, and every other dependency Axual does not ship, are covered in Dependencies instead.
Cluster capacity
What the Kubernetes or OpenShift cluster itself must provide, independent of the Axual Platform.
| Category | Requirement | Remarks |
|---|---|---|
Kubernetes Version |
> 1.24 |
EKS, AKS, GKE, Rancher, OpenShift are supported. |
Kubernetes Nodes |
A Production environment needs three groups of Nodes:
|
For a proof of concept (POC), 4 nodes of 4 CPU, 16G are enough. Further reading on Kafka cluster setups: Apache Kafka design covers the broker architecture, replication and durability guarantees these figures assume. |
Persistent Volumes |
See Storage & State for how each component uses the storage it is given. |
|
Network Connectivity |
|
Access grants
What you must be able to reach or be granted, rather than a capacity to size.
| Category | Requirement | Remarks |
|---|---|---|
Kubernetes permissions |
See Preparations for creating the namespace and its image pull Secret. |
|
Helm Chart Repository |
Axual distributes the platform as Helm charts, so the Helm chart repository must be reachable from the Kubernetes cluster or from a deployment tool.
See Working with Helm Charts for getting access and pulling a chart. |
|
Image Registry |
|
Prerequisites with their own guide
These three are significant enough to have a dedicated how-to rather than a table row. Listed here so the requirement is not invisible from this reference, each points at the guide instead of repeating it.
-
Load Balancers or Ingress: expose Kafka brokers, the Kafka bootstrap and Rest Proxy through load balancers or another highly available technology, because an ingress controller can be a single point of failure. Non-critical components, including the API Gateway and Apicurio Registry, can go through Ingresses instead; both need SSL passthrough on ports 80 and 443, because callers authenticate with mutual TLS (mTLS). Nginx Ingress Controller and OpenShift Routes are supported. See Install an Ingress Controller.
The community-maintained ingress-nginxcontroller was deprecated in March 2026, so the controller to use on a new cluster is not the one the older instructions install. -
Certificates: every connection between Axual components is authenticated with mutual TLS, so a component has nothing to start with until its certificate exists. Provide a root Certificate Authority (CA) the platform adds to its truststore, and one every client application can obtain a certificate from; cert-manager and Stakater Reloader are supported and preferred for issuing and renewing them. See How to Prepare Certificates and DNS Before Installing.
-
DNS: every exposed component needs a name that resolves from inside the Kubernetes cluster and from anywhere in the company that reaches it, including employee desktops for Self-Service and every server running a producer or consumer application. A certificate is issued for the hostname a client resolves, so DNS and Certificates are prepared together. See the same guide, How to Prepare Certificates and DNS Before Installing.
DNS names and certificates
The DNS names to register and the certificates to request are listed separately, because they are an inventory the infrastructure team works from rather than a design constraint. See DNS and Certificate Inventory Reference.
Related pages
-
Resilience covers how the platform behaves when a node or an Availability Zone fails, which is what the node layout above is sized for.
-
Storage & State covers what each component writes to the volumes this reference asks you to provide.