Powered by Terraform/OpenTofu, delivering a daily dose of tech-inspired laughter.
- deploy the local cluster
bash local_cluster.sh deploy
- destroy local cluster
bash local_cluster.sh destroy
- Deploy ArgoCD on the cluster
kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
- check pods in the ns
kubectl get pods -n argocd
- Before getting to accessing the argocd UI, let's copy the password. User name is
admin
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d && echo
- port forward the argocd service to a
8443
host port. Note: you can use NodePort, or Ingress as well to access the UI aswell.Configure you application or you can use a yaml manifest as well. You have to be on the argo namespace -kubectl port-forward -n argocd service/argocd-server 8443:443
apply -sudo kubectl config set-context --current --namespace=argocd
kubectl create -f joke_application.yaml
-
Create a cluster (Control Plane)
- VPC
- subnets
- security group
- IAM assume role
-
Create a NodeGroup (worker Nodes)
- IAM role
- IAM policy
-
Deploy Pods
- deployment manifest
- service manifest (type: load balancer)
- Create backend with
- states bucket
- ECR registry