-
asw-cli: 2.15.1
-
terraform: 1.5.4
-
kubectl 설치
- kubectl 단축키 셋팅 (Optional)
- Mac .zshrc 파일 수정
... alias k=kubectl [[$commands[kubectl]]] && source <(kubectl completion zsh)
- Linux .zshrc 파일 수정
... alias k=kubectl source <(kubectl completion zsh)
- EKS 구축
$ cd eks
$ terraform init
$ terraform apply
- k8s configure 셋팅
$ aws eks update-kubeconfig --region ap-northeast-2 --name hori
$ kubectl cluster-info
$ kubectl get pods --all-namespaces
- mysql database 접속
kubectl port-forward -n mysql-cluster svc/mysql-cluster 33060:3306
- 포트번호 임의 설정 가능
- mysql client 접속 프로그램으로 접속 (127.0.0.1:33060)
- api 데이터베이스 만들기
- Argo CD 비밀번호 확인
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
- Grafana 비밀번호 확인
kubectl get secrets kube-prometheus-stack-grafana --namespace kube-prometheus-stack -o jsonpath="{.data.admin-password}" | base64 -d
- kube-ops-view 로컬 접속 (Optional)
kubectl port-forward -n kube-system svc/kube-ops-view 18080:8080
- 포트번호 임의 설정 가능
- Application 배포
$ cd application
$ terraform init
$ terraform apply
- dev, prod workspace 나누기
- 인증서 테스트 후 github helm 에서 arn 지우기
- api database 자동 생성 가능?
- application 로드밸런서는 terraform 에서 만든게 아니라 destroy 할때 제대로 못지우는듯
- HPA 적용
- Karpenter 적용
- argo event 로 슬랙 노티 적용