Installing Commons
AHD Commons provides middleware and monitoring tools that are required by Data.
Prerequisites
To install Commons, you'll need appropriate AWS IAM credentials from Smeup. If you don't have them yet, stop this installation process and come back once you do.
You will need an Helm CLI installation connected to your EKS cluster of choice.
Follow the official AWS Documentation to connect to your EKS Cluster.
1. Adding the AHD Helm Repository
Add the AHD Helm Repository with the following command:
helm repo add smartkit https://repo.smeup.cloud/nexus/repository/smartkit
To fetch the latest releases of AHD Commons, run:
helm repo update
2. Update Helm Repositories
Update your Helm repositories to get the latest available chart versions.
helm repo update
3. Prepare Commons Configurations
Create a configuration file named commons-values.yaml
Inside the file, paste the following content:
ecrCredentials:
# -- Access Key ID of the AWS IAM User
accessKey: ""
# -- Secret Access Key ID of the AWS IAM User
secretKey: ""
csiDriverSmb:
# -- Install SMB Driver, required for CIFS Mounts
enabled: false
argo-cd:
# -- Install ArgoCD
enabled: true
Fill out the various fields:
ecrCredentials
should be filled with the Access Key and Secret Key of the AWS IAM user given to you by Smeup.csiDriverSmb.enabled
should be set totrue
only if you need to use CIFS network mounts (e.g., from webup), otherwise leave it asfalse
argo-cd.enabled
should be set to true to enable ArgoCD. Set tofalse
only if you want to manage AHD VM from an existing ArgoCD (i.e. from an existing AHD VM with ArgoCD enabled)
Traefik Ingress Controller
If you already have a working Ingress Controller inside your cluster, skip this step
If you plan on using Traefik as your Ingress Controller, add the following code to your commons-values.yaml
file:
traefik:
install: true
installMiddleware: true
service:
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: nlb
service.beta.kubernetes.io/aws-load-balancer-ssl-cert: <Replace this with your certificate ARN>
service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http
service.beta.kubernetes.io/aws-load-balancer-ssl-ports: "443,3500"
service.beta.kubernetes.io/aws-load-balancer-proxy-protocol: "*"
- Replace the
service.beta.kubernetes.io/aws-load-balancer-ssl-cert
value with the ARN of a certificate relative to the Domain Name that you will use to connect to Data.
4. Install the Latest Version of Commons
Install Commons:
helm install commons smartkit/commons --values commons-values.yaml
5. Validate Installation
Check if everything is working correctly by running k get pod
You should see a pod called commons-ecr-first-job-<random-id>
with the Status Completed
.
smeup@smartkit:~$ k get pod
NAME READY STATUS RESTARTS AGE
commons-ecr-first-job-zg2cs 0/1 Completed 0 10s
If the pod status is Running
or Pending
, wait a few seconds before trying the k get pod
command again.