1. EKS node로 사용되고 있는 EC2의 정보 확인
EC2 누르고 Details에서 IAM role URL 클릭하기
2. 컨테이너화된 애플리케이션을 K8S 클러스터에 배포
(외부에서 애플리케이션에 접근할 수 있도록 설정하기)
project 디렉토리 하단에 yaml 파일들을 모아놓을 yaml 디렉터리 생성
deployment와 service yaml 파일 생성
########################################################################
vi deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: web-app
labels:
app: web-app
spec:
replicas: 2
selector:
matchLabels:
app: web-app
template:
metadata:
labels:
app: web-app
spec:
containers:
- name: web-app
image: <account_id>.dkr.ecr.<region>.amazonaws.com/<repository_name>:<tag>
ports:
- containerPort: 80
########################################################################
kubectl apply -f deployment.yaml
########################################################################
vi service.yaml
apiVersion: v1
kind: Service
metadata:
name: web-app-service
spec:
type: LoadBalancer
selector:
app: web-app
ports:
- protocol: TCP
port: 80
targetPort: 80
########################################################################
서비스 적용
kubectl apply -f service.yaml
=> 이로써 ECR에 저장된 이미지를 기반으로 애플리케이션을 자동으로 관리와 배포가 가능함!!
LoadBalancer의 외부 IP 확인 가능
kubectl get service web-app-service
3. ECR에 이미지를 푸시했는 지 확인하기
aws ecr describe-images --repository-name <repository_name> --region <region>
-> Kubernetes에서 latest 이미지를 정상적으로 가져갔음! 정상적으로 이미지가 푸쉬됨
4. Pod 상태 확인
kubectl get pods
'클라우드 > AWS' 카테고리의 다른 글
[AWS] EKS 클러스터 생성 및 ArgoCD 설치하는 방법 (0) | 2024.12.07 |
---|---|
Jenkins란 (0) | 2024.12.07 |
[AWS] AWS cli로 EKS 사용하여 Cluster 및 Private Network 생성하기 eksctl 설치(git HUB URL 포함) (0) | 2024.12.06 |
[AWS] AWS cli로 EKS 사용하여 Cluster 및 Private Network 생성하기 (0) | 2024.12.06 |
[AWS] SSH로 접속하여 AWS configure 하는 방법 (0) | 2024.12.05 |