수동 배포: QA를 보장하기 위해 개발계에서 검증이 제대로 된 코드만을 선정하여 배포하는 것!!
Point) Git에서 Manifest 관리하는 디렉토리를 같은 하나 새로 생성하여 path를 통해 조정해주면 된다.
이것이 수동배포의 핵심
Problem) 어제밤부터 작업한 VM 상에서 Calico, Flannel 네트워크가 갑자기 있고 이거 때문에 계속 네트워크가 왔다갔다함...
-> 결국 다시 VM 하나 생성해서 하기로...
제발 잘 되라는 의미에서 controller 77
생성 완료
- ArgoCD 배포하기 위한 사용자 계정 생성 및 Sudo 권한 부여
- AWS Cli 설치
-AWS Configure
- EKS 조회 → kubectl cli 설치 → 노드 조회
- ArgoCD 설치
공식문서에 나와있어 참조 해두면 된다.
- Argocd 아이디 및 비번 조회
ID: admin
Password: L21CJdsUA9KxmOUh
- ArgoCD 주소
ae0a509d6589c48ec9d3bbe9cba490f9-674268653.ap-northeast-2.elb.amazonaws.com
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
- 이제 여기서 중요한 건 저번 자동 배포가 아닌 QA를 보장하기 수동배포를 해볼 것이다.
1. 먼저 App 생성을 위한 네임스페이스를 생성할 것이다.
(product, member, front 총 3개)
front → frontend 로 수정
2. 현재 GitHub Backend / Frontend Repository 내 k8s (manifest 파일관리) 디렉토리는 1개다.
이를 2~3개로 늘려서 수동적으로 관리할 수 있게 만들 것이다.
↓
복제는 다음과 같다.
2-1) Git clone 레포지토리 주소
2-2) Backend product, member / Frontend 에서 k8s_2, k8s_3 디렉토리 생성
2-3) k8s 내용물을 k8s_2, k8s_3 으로 복사
2-4) git status → git add . → git commit // 몰랐는데 commit message 규칙이 있어서 지켜서 작성하기!
2-5) git push origin seonghuny (branch) // 푸쉬 시 토큰 필요
토큰: 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
3. ArgoCD 상에서 레포지토리 연결 + APP 생성
4. 결과 분석
![]() |
![]() |
![]() |
지금 현재 backendprod1, 2, 3을 비교해봤을 때 하나를 켜면 나머지가 OutOfSync가 나타나는 현상을 발견할 수 있다. 이는 하나의 네임스페이스(product) 해당하는 경로 중 하나만의 manifest 파일들이 있는 디렉토리를 참조하는 것으로 볼 수 있다. 결과적으로 하나의 버전을 켜면 나머지가 꺼지는 Blue/Green 방식이라 할 수 있다!!!
백엔드 Member, Product 수동 배포계 구성
근데 문제가 생김,,,
계속 Progressing이라길래 왜그런가했더니 무슨 권한(?) 문제라는데 ArgoCD에 권한이 웬말,,,
강사님께 여쭤보니 그냥 kubectl 통해서 apply로 해봐라,, -> 근데도 안됨
문제는 ECR Secretpull이 원인이었따...
ECR이 프라이빗 레포지토리라 접근 권한을 부여할 토큰이 만료된 것... (12시간마다 갱신)
(근데 화요일에 됐고 오늘 아침에도 됐는데??....)
→ 그냥 쿠폰 발급, 조회 정보만을 꾸려서 백엔드로만 했다??,,,,
2025/02/24 - 정책권한 설정하고났더니 배포가 되긴했다!!
'IT > Project' 카테고리의 다른 글
Project X - CJ CloudWave 4기 마무리 (0) | 2025.02.28 |
---|---|
Project IX - DataDog 모니터링 및 Architecture (0) | 2025.02.22 |
Project VII - Terraform으로 EKS 구축 (0) | 2025.02.19 |
Project VI - ArgoCD 통한 FrontEnd & BackEnd 자동배포 (0) | 2025.02.18 |
Project V - ECR & ArgoCD 연동 (0) | 2025.02.17 |