DNS and Certificate Inventory Reference
This reference lists the DNS names each exposed Axual component needs, the two certificate authorities the platform expects, the certificates to request from each of them, and what the platform truststore has to contain.
Type |
Reference |
Goal |
Draw up the list of DNS names and certificates to request before an installation starts. |
Audience |
Infrastructure engineers who can register DNS names and request certificates from the organisation’s certificate authority. |
When to use |
When planning a new installation, or when adding an externally exposed component to an existing one. |
The names and addresses below are indicative. Every deployment substitutes its own domain, and the exact set of exposed components depends on which layers are installed.
DNS names
Each externally reachable component needs a DNS name resolving to the load balancer or ingress that fronts it. The rows below use company.org as the example domain and esp- as the example prefix.
The ports below are the Kafka listener ports the load balancer or ingress forwards to. Only 9094 is always present: 9095 exists when the SASL/SCRAM listener is enabled and 9096 when the inter-cluster listener is enabled. For the full set of listeners, the internal ports every component listens on, and the flows between them, see Listen ports per component.
| Component | Layer | DNS name | IP address | Port | Protocol | Exposed by |
|---|---|---|---|---|---|---|
Broker 1 |
Streaming |
esp-broker-0.company.org |
Custom LB IP |
9094, and 9095 when enabled |
mTLS+TCP, SASL |
Load balancer |
Broker 2 |
Streaming |
esp-broker-1.company.org |
Custom LB IP |
9094, and 9095 when enabled |
mTLS+TCP, SASL |
Load balancer |
Broker 3 |
Streaming |
esp-broker-2.company.org |
Custom LB IP |
9094, and 9095 when enabled |
mTLS+TCP, SASL |
Load balancer |
Broker bootstrap |
Streaming |
esp-broker-bootstrap.company.org |
Custom LB IP |
9094, and 9095 when enabled |
mTLS+TCP, SASL |
Load balancer |
API Gateway |
Governance |
esp-gateway.company.org |
Ingress LB IP |
443 |
HTTPS |
Ingress |
Apicurio Registry |
Streaming |
esp-schemas.company.org |
Ingress LB IP |
443 |
HTTPS |
Ingress |
Rest Proxy |
Streaming |
esp-restproxy.company.org |
Custom LB IP |
443 |
mTLS+HTTPS |
Load balancer |
Broker 1 internal (optional) |
Streaming |
esp-broker-0-internal.company.org |
Custom LB IP |
9096 |
mTLS+TCP, SASL |
Load balancer |
Certificate authorities
The platform expects two certificate authorities, one for anything an external client reaches and one for traffic that never leaves the cluster.
| Public Key Infrastructure (PKI) | Purpose |
|---|---|
Enterprise PKI |
Trusted by the platform for its external interface components. Signs the server and client certificates of external-facing components, and the application certificates of clients connecting to the platform. |
PKIESP (internal) |
A custom certificate authority for internal certificates, preferably managed by cert-manager. Signs the private listener certificates of the Apache Kafka brokers on ports 9091 and 9093. Its private key is also installed in the Operator. Never exposed to externally connecting applications, and included in the platform package. |
| With a Service Mesh in place, the internal PKI and its certificates are no longer required, because the mesh secures component-to-component traffic without each component holding its own mTLS material. |
Certificates to request
Certificates are required for service-to-service mutual TLS (mTLS) inside the Kubernetes cluster, and for external traffic from producers and consumers to Apache Kafka, Apicurio Registry and Rest Proxy.
In the table below, <prefix> is either of the following:
-
<tenant-short-name>-<instance-name>, giving names such ascustomer-dta-platform-manager. The tenant short name is the value of.Values.global.tenant.shortNameand the instance name the value of.Values.global.instance.name. -
The name of the chart, so a chart named
axualgivesaxual-platform-manager.
| Subject | Issuer | Component | Subject Alternative Names | Certificate type |
|---|---|---|---|---|
CN=internal-server-only |
PKIESP |
|
|
Server |
CN=esp-company-server |
Enterprise PKI |
|
|
Server |
| cert-manager can issue and renew the internal certificates automatically. Where the organisation already runs cert-manager, integrate with that instance rather than deploying a second one. See cert-manager for what the platform expects of it. |
Truststore contents
The platform needs one truststore, as a Kubernetes Secret or a JKS file, holding both certificate authorities: the Enterprise PKI and the internal PKIESP. The platform package ships a sample truststore.jks containing the internal PKI, to which the Enterprise PKI is added.
For the Secret shape a truststore takes on Kubernetes, see Truststore (CA) Secrets.