Repository navigation
계정 이관 워크플로의 서버 접속 SSM 전환 - #1219
Merged
Merged
Conversation
- 22번 임시 개방 액션(ssh-gate) 삭제 - 원인: #1211 뒤 지금 계정의 22번 인바운드 0건 - 결과: 다음 이관에서 구 계정 쪽 SSH 3곳(cert 복사·freeze·dev 덤프)이 막힘 - 신 계정 박스는 infra ssm-ssh 로 접속. 별칭은 Name 태그 - 구 계정 박스는 새 액션 migrate-src-ssh 로 접속 - 구 계정 키를 AWS 프로필로 써 두고 ssm-ssh 의 alias·aws-profile 입력 사용 (infra#140) - 별칭은 src-<Name 태그> - Name 태그 박스의 공인 IP 가 도메인 A 레코드와 다르면 중단 - 구 앱 박스 TLS cert 복사를 deploy.yml 에서 migrate.yml provision 으로 이관 - 원인: prod 이관의 deploy.yml 은 main 커밋을 체크아웃함 - 결과: dev 에만 있는 이 레포 액션을 못 볼 수 있음 - provision 에 신 앱 박스 SSM 등록 대기 추가 - 원인: 갓 뜬 박스는 SSM Agent 등록 전일 수 있음 - rehearsal 에 구 앱 박스 SSH 사전 점검 추가 (읽기 전용 docker ps) - 원인: 컷오버 freeze 경로가 막혀 있으면 다운타임 밖에서 드러나야 함 - migrate-unfreeze.sh 가 상태 파일을 호스트 검사보다 먼저 봄 - 원인: 구 박스 SSH 준비가 실패한 실행은 freeze 도 없었음 - 쓰이지 않게 된 config 출력 db_ip_output 삭제
- 구 계정 키 필요 권한에 ssm:TerminateSession·ssmmessages:OpenDataChannel 추가 (머리 주석) - 원인: OpenDataChannel 이 없으면 세션이 열리자마자 끊김 (iam_people.tf 실측) - migrate-db.sh·migrate-unfreeze.sh 의 ssh ConnectTimeout=15 제거 - 원인: 명령줄 값이 ssm-ssh 설정의 30초를 덮음 (ssh -G 실측) - migrate-unfreeze.sh 의 docker start 를 3회 재시도 - 원인: SSM 채널이 한 번 늦게 열려도 구 서비스가 내려간 채 남음 - provision 이 신 박스에 cert 가 있으면 구 박스 접속과 cert 복사를 건너뜀 - 원인: 컷오버 뒤 재실행은 도메인이 신 박스라 IP 가드에 걸림 - deploy.yml 이관 모드에서 cert 가 없으면 certbot 대신 provision 선행 안내 후 중단 - 원인: DNS 가 구 박스라 HTTP-01 발급이 원리적으로 실패함
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Discord 스레드 연동용 메타데이터입니다. discord-pr-bot 워크플로가 자동 생성하며, 수정·삭제하면 PR 과 Discord 알림 연동이 끊깁니다. |
This was referenced Oct 15, 2026
Merged
m-a-king
added a commit
that referenced
this pull request
Oct 15, 2026
- extractor·renderer 배포 호출에서 migration_host 제거
- 원인: 두 레포가 SSM 전환 때 그 입력을 지움
- 결과: 사이드 배포를 켜면 dispatch 가 Unexpected inputs(422)로 거부됨
- renderer 호출에 migration_role_arn(이관용 역할) 추가
- 원인: 두 레포는 넘겨받은 역할의 계정에서 Name 태그로 박스를 찾음
- 결과: 역할이 빠지면 기본 역할(구 계정)로 배포해 구 박스를 덮어씀
- side_hosts 는 IP 출력 대신 두 박스 존재 확인만 함
- core 배포 job 주석에서 cert 복사 언급 삭제 (#1219 로 provision 이관)
m-a-king
added a commit
that referenced
this pull request
Oct 15, 2026
- /etc/letsencrypt/live 확인을 sudo test -d 로 교체 - 원인: live 는 700 root 라 ubuntu 의 [ -d ] 는 cert 가 있어도 거짓 (dev 박스 실측) - 결과(이전): 평소 배포는 매번 certbot 호출. 갱신 대상이 아니라 no action 으로 끝나 드러나지 않음 - 결과(이전): #1219 의 이관 모드 분기는 cert 를 옮겨 둔 뒤에도 "cert 없음" 으로 배포를 멈춤
m-a-king
added a commit
that referenced
this pull request
Oct 19, 2026
- prod 이관의 rewire 가 extractor·renderer repo 수준 배포 역할 변수를 신 계정 값으로 교체 - extractor AWS_ECR_PUSH_ROLE_ARN · renderer AWS_DEPLOY_ROLE_ARN - 원인: 세 repo 배포가 잡은 역할의 계정에서 Name 태그로 박스를 찾음. 역할 변수가 곧 배포 대상 계정 - 원인: 2차 이관 뒤 extractor 가 6일간 켜져 있던 구 계정 박스로 배포 성공(#1174) - 두 박스는 전 환경 공용이라 prod 이관에서만 동작 - 역할 ARN 은 infra_apps 의 기본 name_prefix 이름으로 IAM 에 조회 - 원인: 두 역할은 각 repo terraform state 소관 - 대안: 사이드 repo checkout 뒤 terraform output - 기각: rewire 에 checkout·init 두 벌 추가. Name 태그 박스 확인도 이미 이름 고정 - 값을 못 얻거나 쓰기가 거부되면 rewire 를 부분 실패로 종료 - core Environment 의 EC2_HOST 쓰기 제거 - 원인: SSM 경유 전환(#1219) 뒤 core·extractor·renderer 어느 워크플로도 EC2_HOST 를 읽지 않음 - rewire 가 deploy_core 의 앱 IP 를 더는 쓰지 않아 needs 에서 deploy_core 제거 - finalize 수동 정리 안내 갱신 - EC2_HOST 행 삭제. rewire 실패 때 두 사이드 repo 역할 행 표시 - 경고 문구의 고정 건수 삭제. rewire 성공 시 역할 항목 없음 - 구 앱 박스 주소 해소 주석의 참조 정정 - deploy.yml 의 EC2_HOST 검증을 도메인 가드로 교체
This was referenced Oct 19, 2026
m-a-king
added a commit
that referenced
this pull request
Oct 19, 2026
* infra: 계정 이관 rewire 의 사이드 repo 배포 역할 갱신 - prod 이관의 rewire 가 extractor·renderer repo 수준 배포 역할 변수를 신 계정 값으로 교체 - extractor AWS_ECR_PUSH_ROLE_ARN · renderer AWS_DEPLOY_ROLE_ARN - 원인: 세 repo 배포가 잡은 역할의 계정에서 Name 태그로 박스를 찾음. 역할 변수가 곧 배포 대상 계정 - 원인: 2차 이관 뒤 extractor 가 6일간 켜져 있던 구 계정 박스로 배포 성공(#1174) - 두 박스는 전 환경 공용이라 prod 이관에서만 동작 - 역할 ARN 은 infra_apps 의 기본 name_prefix 이름으로 IAM 에 조회 - 원인: 두 역할은 각 repo terraform state 소관 - 대안: 사이드 repo checkout 뒤 terraform output - 기각: rewire 에 checkout·init 두 벌 추가. Name 태그 박스 확인도 이미 이름 고정 - 값을 못 얻거나 쓰기가 거부되면 rewire 를 부분 실패로 종료 - core Environment 의 EC2_HOST 쓰기 제거 - 원인: SSM 경유 전환(#1219) 뒤 core·extractor·renderer 어느 워크플로도 EC2_HOST 를 읽지 않음 - rewire 가 deploy_core 의 앱 IP 를 더는 쓰지 않아 needs 에서 deploy_core 제거 - finalize 수동 정리 안내 갱신 - EC2_HOST 행 삭제. rewire 실패 때 두 사이드 repo 역할 행 표시 - 경고 문구의 고정 건수 삭제. rewire 성공 시 역할 항목 없음 - 구 앱 박스 주소 해소 주석의 참조 정정 - deploy.yml 의 EC2_HOST 검증을 도메인 가드로 교체 * infra: migrate.yml 의 OLD_ACCOUNT_ID 갱신 - 996918499382 를 현재 계정 731770491043 으로 교체 - 원인: 2차 이관 finalize 수동 정리 항목이 남음 - 위험: 그대로 두면 다음 이관이 이미 떠난 계정을 원본으로 삼음 * infra: 이관 finalize 의 역할 안내 기준을 rewire 완료 여부로 전환 - rewire job 이 done 출력을 노출. finalize 가 job 결과 대신 그 값으로 수동 행 표시 - 원인: CROSS_REPO_TOKEN 이 없으면 rewire 가 아무것도 안 바꾸고 success 로 끝남 - 원인: 직전 커밋이 경고 문구의 역할 항목을 rewire 성공 시 빼서 그 경우 안내가 사라짐(리뷰 지적) - 실패·건너뜀·토큰 없음 전부 미완료로 표시
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
한눈에
계정 이관 작업이 서버에 접속하는 경로 전환
Situation
계정 이관 워크플로의 SSM 전환
piki-prod-app등)Task
계정 이관 워크플로의 SSM 전환
Action
접속 경로 전환
migrate-src-ssh로 SSM 경유 SSH. 별칭은src-<Name 태그>구 계정 접속 액션 추가
alias·aws-profile입력으로 호출TLS 인증서 복사 위치 이관
실패 경로 보강
docker ps)docker start를 3회 재시도ssh -G실측)독립 리뷰 반영
ssm:TerminateSession·ssmmessages:OpenDataChannel추가정리
Result
검증 범위
--profile·AWS_PROFILE비교MIGRATE_SOURCE_AWS_*를 지금 계정 키로 교체start-session을 한 번 실측후속
EC2_HOST시크릿을 읽는 곳 0건. 이관 rewire job 의 기록만 남음연관 이슈