Installation into existing Kubernetes cluster (EKS, AKS, GKE)
Prerequisites:
You need to have access to an existing cluster with
kubectl
oroc
You need to have Helm 3 installed. See https://helm.sh/docs/intro/install/
You need to have a suitable Ingress controller to route traffic to 3YM services.
https://kubernetes.io/docs/concepts/services-networking/ingress/ & https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/
Folder Structure
The installation package contains two folders: chart
and images
. The images
directory contains the docker images of the application. The chart
directory contains the helm chart, which can be used to install the application into a Kubernetes cluster
- package.tgz
- chart
- order-management-<version>.tgz
- images
- <service1>.tgz
- <service2>.tgz
- ...
- load_images.sh
- values.yaml
Step 1: Load docker images
First, you need to load the images to a place where they can be pulled by your Kubernetes cluster. The load_images.sh
script does that on a host where docker
is installed. If you use your own registry, you need to upload the docker images there, and later specify the path to your registry in the values.yaml
file. Please make sure to keep image names and tags and as they are.
Private image registries
For private docker registries, please refer to the official Kubernetes documentation on how to pull images from your cluster.https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
After you set your Docker credentials as a Secret called regcred
in the cluster you can update the values.yaml
with your registry url and [regcred]
global:
# Specify the path to your registry here
imageRegistry: myregistry.domain.xyz
# If you use a non-public registry, specify the name of the secret that contains the credentials here
# (as a single-element list). See https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry
imagePullSecrets: [regcred]
Step 2: Update values.yaml
In the values.yaml
file which is part of the package, fill in the missing values.
Step 3: Install the application
To install the application in the default namespace:
helm install order-management chart/order-management*.tgz --values values.yaml
or Install the application in a specified namespace:
helm install --namespace EXAMPLE order-management chart/order-management-*.tgz -f=values.yaml
Update the application to the next version
helm upgrade order-management chart/order-management-*.tgz -f=values.yaml
Uninstall the application
helm uninstall order-management chart/order-management-*.tgz -f=values.yaml