AWS 설정
3.
EC2 생성
•
ec2 내에 codedeploy-agent 설치
•
서버 세팅
•
이미지 만들기(작업 → 이미지 및 템플릿 → 이미지 생성)
4.
시작템플릿 생성
•
ec2 → 시작 템플릿 → 시작 템플릿 생성
•
내 AMI중 방금 생성한 이미지 선택
•
가용영역과 요금에 맞는 인스턴스 유형 선택 (현재 t3.micro)
•
네트워크 설정은 기존 보안그룹 선택(현재 ec2 보안그룹 →80,8080,22,443)
•
고급 세부정보에 IAM 인스턴스 프로파일을 선택(방금 만든 Auto Scaling Role)
5.
대상그룹 선택
•
대상유형은 인스턴스로 진행
•
HTTP 프로토콜에 8080 포트 입력
•
현재 사용되는 인스턴스가 있는 vpc 선택
•
상태검사***
◦
프로토콜 → HTTP
◦
상태 검사 경로 → /actuator/health
◦
성공코드 → 200
•
고급 상태 검사 설정
◦
간격과 정상 임계 값을 크게 잡으면 Blue Green 배포시 시간을 많이 소모
6.
로드 벨런서 생성
•
외부로 노출되기 위해 인터넷 경계 선택
•
네트워크 매핑시 사용할 영역 모두 선택(2a,2b,2c,2d )
•
리스너 및 라우팅
◦
http → 80 → 그룹선택
◦
리스너 추가
◦
https → 443 → 그룹선택
•
보안 정책 선택
◦
미리 만들어 놓은 ACM 인증서 선택
7.
Auto Scaling 그룹 생성
•
시작 템플릿 설정
•
VPC 설정(2a,2b,2c,2d )
•
기존 로드 벨런서에 연결 → 대상그룹 선택
•
Auto Scaling Group 정책 선택 → 원하는 용량, 최소용량,최대 용량(1,1,3)
8.
CodeDeploy 생성
•
컴퓨팅 플렛폼 → ec2
9.
배포그룹 생성
•
역활 → CodeDeploy Auto Scaling Role
•
배포유형 → blue/green
•
환경 구성 → Amazon EC2 Atuo Scalling 그룹 자동 복사 → 생성한 그룹 선택
•
배포그룹의 원본 인스턴스 종료 (현재 5분)
•
배포구성 → CodeDeployDefault.AllAtOnce
•
로드 벨런서 → 생성된 대상그룹 선택
10.
ECR 생성
•
퍼블릭 레포지토리 생성
CICD 설정
문제
배포 중 AllowTraffic단계에서 무한 로딩후 실패
해결방안
1.
타겟 그룹에서 ec2의 상태 체크가 unhealthy 상태
2.
ec2 도커 로그 확인
3.
환경변수값이 제대로 안들어가서 도커가 무한 재실행 상태
4.
도커 파일 수정
5.
코드 디플로이 파일 수정
6.
타겟 그룹에서 ec2의 상태 체크 확인
7.
재대로 연결 실행
문제
ECR에 파일이 올라가지 않음
해결방안
ECR 재생성후 실행