AWS 환경 구축 하기
GitHub Actions WorkFlow 진행하기 위해 AWS 환경 구축을 해야 합니다. 즉 CD 작업에서 AWS ECR 및 AWS ESK 환경 구축 작업을 해야 합니다.
GitHub OIDC 설정 작업
GitHub Actions 에서 AWS 에 접근 할수 있도록 임시 자격을 얻어야 합니다. OIDC 환경 작업 통해 AWS 접근 할 수 있는 자격을 AWS IAM ROLE 으로
GitHub Actions Job 에서 AWS 에 접근이 가능 합니다.
홈페이지 접속 하도록 합니다.
여기서 “Adding the identity provider to AWS” 탭에
- 공급자 URL: https://token.actions.githubusercontent.com
- 대상: sts.amazonaws.com
값을 확인 할 수 있습니다. 이 데이터를
AWS IAM 페이지로 접속한 다음에 왼쪽 탭에 ‘자격 증명 공급자’ 탭으로 이동한 다음에
공급자 유형을 ‘OpenId Connect’ 로 선택 한 다음에 미리 준비 되었던 ‘공급자 URL’ 하고 ‘대상’ 을 붙여넣기 해서 최종적으로 ‘공급자 추가’ 버튼을 추가 하도록 합니다.
이렇게 OIDC 설정은 완료 되었습니다.
AWS ROLE 설정 작업
AWS IAM 페이지에서 ‘역활’ 메뉴를 클릭 합니다. 그다음 ‘역활 만들기’ 버튼을 클릭 합니다.
‘신뢰 할 수 있는 엔티티 유형’ 에서 ‘사용자 지정 신뢰 정책’ 을 선택 하고
1 | { |
이것을 복사 해서 붙여 넣기 합니다. 일부분 데이터를 수정 해야 하는데요.
위 상단 이미지를 보시면 첫번째 빨간 박스 경우 ‘AWS 계정 ID’ 값으로 대체 하고 두번째 빨간 박스 경우는 GitHub Repository 경로를 대체 하도록 합니다.
이렇게 설정하면 특정 GitHub Repository 에서 설정한 IAM ROLE 을 이용해서 AWS 에 접근 할 수 있습니다.
그 다음 버튼을 클릭을 하게 된다면 권한 정책을 추가 해야 하는데 ‘AdministratorAccess’ 정책을 체크 한뒤에 다음 버튼을 클릭 합니다.
역활 이름을 임의로 지정한 값으로 설정 뒤 완료 버튼을 클릭 합니다. 저는 ‘syh-github-actions’ 이라는 이름으로 IAM 을 만들었습니다.
이렇게 GitHub Actions 에서 사용 할수 있는 ROLE 을 생성 했습니다.
AWS ECR REPOSITORY 생성
CI-CD 진행 하는 과정에서 docker image 가 생성 하면 AWS ECR Repository 에 관리 할 수 있도록 했었는데요. 때문에 AWS ECR 저장소를 생성 하도록 하겠습니다.
AWS 페이지에서 ‘ECR’ 로 검색하면 ECR 저장소를 생성 할 수 있는 페이지 나옵니다.
‘프라이빗 레포지토리’ 탭을 선택 한 이후
두개를 생성 할 것 입니다. 하나는 dev 전용 또 하는 prod 전용을 생성 할 것 입니다.
저는 ‘syh-app-dev’ (개발 전용), ‘syh-app-prod’ (상용 전용) 이라는 이름으로 각각 생성 합니다.
AWS EC2 생성
CI-CD 진행하는 과정에서 docker image 가 생성 한 후 ‘image-build’ 통해 배포한 애플리케이션을 관리하기 위해 EC2 를 생성 하도록 합니다.
AWS EC2 생성 페이지로 이동 합니다. OS 환경 경우 저같은 경우 ubuntu 로 설정 했습니다.
이렇게 EC2 가 생성 된 것을 확인 할 수 있습니다.
Copyright 201- syh8088. 무단 전재 및 재배포 금지. 출처 표기 시 인용 가능.