Table of Contents
The product owners are all about the new buzz word: GitOps! For this assignment, you will need to create a new Kubernetes cluster on AWS, deploy a monitoring tool using Helm chart and go everything the GitOps way.
The end goal, provide a demonstration on how you are committing a code in your source control and the changes will be deployed to the infrastructure without manual intervention.
This section should list any major frameworks/libraries used to bootstrap my project.
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.
This is an example of how to list things you need to use the software and how to install them.
- terraform
brew tap hashicorp/tap brew install hashicorp/tap/terraform
- helm
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh
- Clone the repo
git clone https://github.com/yahav876/gitops-terraform-k8s-helm.git
- Configure kubectl with aws:
aws eks update-kubeconfig --region region-code --name cluster-name
- Configure "Secrets"
AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY KUBE_CONFIG_DATA (cat $HOME/.kube/config | base64) TF_API_TOKEN
- Test UI of Grafana
kubectl port-forward deployment/monitoring-grafana 3000 user: admin password: prom-operator
Just make a "push" and your EKS cluster with Prometheus monitoring helm chart will be deployed to your aws account.