- cert-manager - cert-manager is a Kubernetes add-on to automate the management and issuance of TLS certificates from various issuing sources.
All data storages will be deployed in the data
namespace.
Run the following command to create the namespace:
kubectl create namespace data
All Armada components will be deployed in the armada
namespace.
Run the following command to create the namespace:
kubectl create namespace armada
Apache Pulsar is the event bus and message broker used by Armada components.
Run the following commands to install Pulsar:
helm repo add apache https://pulsar.apache.org/charts
helm install pulsar apache/pulsar -f dev/quickstart/pulsar.values.yaml --namespace data
Redis is a key-value store used by Armada components for caching.
Run the following commands to install Redis:
helm repo add dandydev https://dandydeveloper.github.io/charts
helm install redis dandydev/redis-ha -f dev/quickstart/redis.values.yaml --namespace data
Postgres is a relational database used by Armada components.
Run the following commands to install Postgres:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install postgres bitnami/postgresql -f dev/quickstart/postgres.values.yaml --namespace data
ingress-nginx
is an Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer.
Run the following commands to install NGINX Controller:
helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
helm install nginx ingress-nginx/ingress-nginx --namespace kube-system
The kube-prometheus-stack
chart provides a collection of Kubernetes manifests, Grafana dashboards, and Prometheus rules combined with documentation and scripts to provide easy to operate end-to-end Kubernetes cluster monitoring with Prometheus using the Prometheus Operator.
Run the following commands to install Kube Prometheus Stack:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack --namespace monitoring --create-namespace
kube-state-metrics
is a simple service that listens to the Kubernetes API server and generates metrics about the state of the objects.
Run the following commands to install Kube State Metrics:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install kube-state-metrics prometheus-community/kube-state-metrics --namespace monitoring
Armada Operator is used to deploy and manage Armada components.
Run the following commands to install Armada Operator:
helm install armada-operator ./charts/armada-operator --namespace armada --create-namespace
As we are using the Armada Operator to deploy Armada components, we will install Armada components by creating the required CRDs.
Run the following commands to install Armada components:
kubectl apply -f dev/quickstart/armada-crs.yaml --namespace armada
First we need to create a default PriorityClass
for Armada jobs.
Run the following commands to create the armada-default
PriorityClass:
kubectl apply -f dev/quickstart/priority-class.yaml
Minimal setup for Armada which could only accept jobs would consist only of Armada Server and Executor deployed in the same cluster.
Run the following command to install the minimal setup:
kubectl apply -f dev/quickstart/minimal-setup.yaml