...
Excerpt | |||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||
Container ImagesUsage Engine Private Edition consists of the following container images hosted in the Digital Route AWS ECR registry:
Where Note! Since Usage Engine Private Edition 3.1, the container images have multi-architecture support (AMD and ARM). Hosting Container Images in Your Own Container RegistryIf you have your own container registry, it is recommended that you host the Usage Engine Private Edition container images there rather than in the Digital Route AWS ECR registry. In order to access the container images in the Digital Route AWS ECR registry, you will need to authenticate yourself first. Here is how you can do this using the
Where Once authenticated, you can pull the container images, re-tag them and then finally push them to your own container image repository. Depending on how your container registry is configured, you probably need to set up an image pull secret that allows the Kubernetes cluster to pull the container images from your container registry in runtime. Image Pull Secret for Digital Route AWS ECROn the other hand, if you do not have your own container image registry, then you need to set up an image pull secret that allows the Kubernetes cluster to pull the container images from the Digital Route AWS ECR in runtime. Such a secret can be created like this:
Where Since AWS ECR credentials expire after 12 hours, the image pull secret needs to be refreshed regularly. This can be automated through a cron job. The following yaml spec is an example of such a cron job:
Where Simply put the above yaml spec into a file called
|
...
Excerpt | |||||
---|---|---|---|---|---|
| |||||
Cert-manager must be backed by a certificate authority (CA) to sign the certificates. Once configured with a CA, cert-manager will automatically sign and renew certificates for the system as needed. Configuring cert-manager with a CA is done by creating an Refer to https://cert-manager.io/docs/configuration/ for a all the details. It’s also possible to use an issuer specifiction that will issue a self-signed certificate:
|
Excerpt | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
Insert excerpt | General Usage Engine Private Edition Preparations (4.3) | General Usage Engine Private Edition Preparations (4.3)
| ||||||||
Regardless of the chosen issuer specification, to create the issuer, simply put the specification in a yaml file (here we call it
Based on the example above the created
|
Excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
| common
| |||||||
nopanel | true |
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Please note that the ClusterIssuer
mentioned above is only recommended for testing purposes and not for production. In the coming section, we will create a ClusterIssuer
of ACME type
, which is generally used in production environment.
Note!
If your
deployment is intended for a production or production-like environment,
skip the self-signed ClusterIssuer
creation below.
Regardless of the chosen issuer specification, to create the issuer, simply put the specification in a yaml file (here we call it example-issuer.yaml
), and then execute a command like this:
Code Block | ||
---|---|---|
| ||
kubectl apply -f example-issuer.yaml |
Based on the example above the created ClusterIssuer
can be inspected like this:
language | bash |
---|
Insert excerpt | ||||||||
---|---|---|---|---|---|---|---|---|
|
Excerpt | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||
SecretIf you do not want to automate the certificate provisioning with cert-manager, you can instead manually install a public certificate in a Kubernetes The This is an example script that can generate a
Note that this will generate a self-signed certificate, which is not suitable for use in publicly exposed interfaces. Once the
|
Excerpt | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||
Bootstrapping Configuring Kubernetes Secrets for System Credentials
Usage Engine Private Edition uses a number of system credentials in order to function as expected. These system credentials are kept in a Kubernetes secret called This secret can be populated in three different ways:
Info | Note! The three options are not mutually exclusive. It is possible to populate some credentials in advance, some through helm values, and let some be automatically generated. Here follows an explanation of the system credentials used by Usage Engine Private Edition:
This is an example of how to create and populate the secret with some credentials:
To inspect the content of the secret, simply execute the following command:
To retrieve a given credential in cleartext, simply execute a command like this (where “jdbcPassword” in the template parameter is the credential you would like to inspect):
|
...