https://github.com/osx-rsplug-a/terraform_stdy_az_dpstack
https://github.com/osx-rsplug-a/terraform_stdy_az_dpstack
hcl kubernetes terraform yaml
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/osx-rsplug-a/terraform_stdy_az_dpstack
- Owner: OSX-RSPlug-a
- Created: 2023-10-23T12:13:12.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-23T18:54:14.000Z (over 2 years ago)
- Last Synced: 2025-06-13T07:43:24.813Z (about 1 year ago)
- Topics: hcl, kubernetes, terraform, yaml
- Language: HCL
- Homepage:
- Size: 9.77 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Azure Kubernetes Service (AKS) Tutorial: (Terraform - Nginx Ingress & TLS - OIDC Workload Identity)
## Create AKS cluster using Terraform
```bash
az login
az account list
az account set --subscription
terraform init
terraform plan
terraform apply
az aks get-credentials --resource-group tutorial --name dev-demo
```
## Create Public and Private load balancers
```bash
kubectl apply -f k8s/1-example
kubectl get svc
```
## Auto-Scaling
```bash
kubectl apply -f k8s/2-example
kubectl describe pods nginx-v2-788b5579fd-dmbg8
kubectl get pods
kubectl get nodes
```
## Create an Ingress using Nginx Ingress
```bash
kubectl get svc -n ingress
kubectl apply -f k8s/3-example
kubectl get pods
kubectl get ing
curl --resolve "echo.antonputra.pvt:80:20.96.71.30" http://echo.antonputra.pvt/
```
## Secure the Ingress with TLS & Cert-manager
```bash
kubectl apply -f k8s/4-example
kubectl get pods
kubectl get ing
kubectl get Certificate
kubectl describe Certificate
kubectl describe CertificateRequest
kubectl describe Order
kubectl describe Challenge
kubectl get ing
kubectl get Certificate
dig echo.devopsbyexample.com
kubectl get ing
```
## Test Workload Identity
```bash
kubectl apply -f k8s/5-example
kubectl get pods -n dev
kubectl exec -it azure-cli-c97fd4f7c-rp2mc -n dev -- sh
az login --federated-token "$(cat $AZURE_FEDERATED_TOKEN_FILE)" --service-principal -u $AZURE_CLIENT_ID -t $AZURE_TENANT_ID
az storage blob list -c test --account-name devtest2392919
kubectl delete -f k8s/5-example
```