DevOps 인계
“빌드가 되어도 운영 이벤트가 없으면”
배포 파이프라인이 12분 만에 초록이어도, 운영 이벤트 5칸이 비어 있으면 인계가 아닙니다. 빌드는 산출물을 만든 것이고, 인계는 창과 롤백, 로그, 권한, 야간 연락이 상대 팀 손으로 넘어간 상태죠. 초록만 보여주고 안정화에 들어가면 첫 장애 밤에 전화할 사람이 개발 채팅에 남아 있습니다. 그 전화가 인계 실패의 첫 신호예요. 야간 연락이 채팅방 초대면 첫 장애는 읽지 않은 알림으로 시작하죠. 이번 포스팅에서는 파이프라인 옆에 붙일 인계 칸을 자세히 다뤄보도록 하겠습니다. 이관 주간을 앞두고 계시다면 빌드 성공과 운영 가능을 갈라 보세요.
| 칸 | 파이프라인만 있을 때 | 인계된 상태 | 빠지면 첫 주에 생기는 일 |
|---|---|---|---|
| 배포 창 | 커밋하면 올라감 | 요일-시간-금지 연계-승인자 | 창 밖 배포가 야간 작업이 됨 |
| 롤백 | 버튼 시연 1회 | 결정자, 제한 분, 데이터 범위 | 앱만 되돌리고 데이터는 남음 |
| 로그 | 개발자 grep | 콘솔 URL, 14일, 마스킹 | 당직이 개발자를 깨움 |
| 권한 | 개인 토큰 | 역할 그룹 4개, 롤백 2인 | 휴가에 창이 닫힘 |
| 야간 연락 | 전체 채팅방 | 1차-30분-3차-공지 권한 | 모두가 다른 사람이 본 줄 앎 |
배포 창은 파이프라인 성공과 어떻게 다르나
파이프라인은 산출물을 만드는 길입니다. 배포 창은 그 산출물을 올려도 되는 요일, 시간, 동시 금지, 승인자입니다. 창 밖에 올린 초록은 개발 성공이지 운영 성공이 아니죠.
CI가 매일 초록이어도 운영 창이 수요일 22시부터 2시간인 현장이 있습니다. 창 밖에 올린 성공은 개발 성공이지 운영 성공이 아니죠.
인계 문서 첫 줄에 창을 적습니다. 요일, 시작-종료, 동시에 올리면 안 되는 연계 시스템, 창 연장 승인자.
애자일 반복이 짧아도 창은 짧아지지 않습니다. 반복 종료일과 창이 어긋나면 스프린트는 끝났는데 운영에는 안 올라갑니다.
그 어긋남을 백로그 완료로 지우지 마세요. 창 위반 배포가 월 2회면 이미 인계가 아니라 야간 작업입니다.
야간 작업을 파이프라인 성숙으로 보고하지 않습니다.
롤백은 누가 몇 분 안에 누르나
롤백 버튼이 파이프라인에 있어도, 누를 사람과 제한 시간과 데이터 되돌림 범위가 없으면 장식입니다.
인계 시연에서 롤백을 한 번 누르면 데모는 끝입니다. 운영 밤에 필요한 것은 데모가 아니라 결정 순서죠.
증상 확인 5분, 롤백 결정자, 앱만 되돌릴지 DB 마이그레이션도 되돌릴지, 고객 공지 문장. 앱 롤백이 8분 걸리는데 데이터 변환이 되돌릴 수 없으면, 그 파이프라인의 롤백은 반쪽입니다.
반쪽이면 창을 더 좁히거나 변환을 창 앞에서 가릅니다. QA vs QC 최종 점검에 롤백 리허설을 한 줄 넣지 않으면, 검사 조서는 기능 합격만 남습니다.
기능 합격과 되돌릴 수 있음은 다른 칸입니다. 다른 칸을 한 체크박스로 합치지 마세요.
로그는 어디에 있어야 운영 손으로 보이나
로그가 개발 노트북과 빌드 서버에만 있으면 운영은 장애 시간에 화면만 봅니다. 조회 경로, 보존 기간, 개인정보 마스킹이 인계 칸입니다. 운영 콘솔에서 24시간을 못 보면 당직은 개발자를 깨우죠.
애플리케이션 로그를 개발자가 grep으로 찾는 구조면, 야간 당직은 개발자를 깨웁니다. 인계 조건은 운영 콘솔에서 최근 24시간 오류를 필터할 수 있는지입니다.
보존은 장애 소급에 필요한 최소 14일을 숫자로 박고, 그 안에 주민번호나 계좌가 평문으로 있으면 보안 점검이 창을 닫죠. 닫힌 창 동안 파이프라인은 계속 초록일 수 있습니다.
초록과 로그 권한은 별개예요. 인계 체크리스트에 URL, 권한 그룹명, 샘플 쿼리 3줄을 붙입니다.
샘플이 없으면 교육 때 시연만 하고 당직 밤에 다시 묻게 돼요. 묻는 전화가 인계 실패의 지표입니다.
권한은 배포 계정과 운영 계정을 가르나
배포 파이프라인 서비스 계정과 사람 운영 계정을 한 키로 쓰면, 퇴사와 장애와 감사가 같은 문을 씁니다. 키를 갈라 인계합니다.
개발 리드의 개인 토큰으로 운영 배포가 되는 현장이 남습니다. 그 리드가 휴가면 창 안에 올릴 사람이 없죠.
인계는 역할 그룹으로 옮기는 일입니다. 배포 실행, 롤백 실행, 로그 조회, 설정 변경 네 그룹이면 소규모에도 충분합니다.
네 그룹을 한 명에게 몰아 주면 그룹이 아닙니다. 최소 두 사람이 롤백 그룹에 들어가 있는지 이관 주에 확인합니다.
확인 증빙은 콘솔 캡처보다 권한 목록 파일입니다. 캡처는 그 시각만 맞고, 목록 파일은 다음 감사에서 다시 엽니다.
파이프라인 권한을 개발 저장소 권한과 같게 두지 마세요. 저장소 커밋 권한자가 운영 설정을 바꾸면 변경 추적이 깨집니다.
야간 연락망은 채팅방이면 충분한가
채팅방 초대만으로 당직이 되면, 첫 장애는 읽지 않은 알림으로 시작합니다. 1차 수신, 에스컬레이션 30분, 고객 공지 권한을 이름으로 박습니다. 30분 무응답이면 다음 줄로 넘기는 규칙을 숫자로 남기세요.
안정화 계획 기간에 개발 전체가 한 방에 있으면 책임은 흐립니다. 인계 연락망은 1차 운영 당직 이름, 2차 애플리케이션 담당, 3차 인프라, 고객 공지 승인자 네 줄입니다.
30분 무응답이면 다음 줄로 넘어가는 규칙을 숫자로 적습니다. 규칙이 없으면 모두가 다른 사람이 보았다고 생각합니다.
공휴일 창이 있는 배포면 연락망을 그 창 전날에 다시 확인하세요. 확인 없이 파이프라인만 예약하면, 예약 성공이 인계 성공으로 보고됩니다.
보고 문장은 예약 시각이 아니라 1차 수신자가 응답 가능한지로 쓰기를 바랍니다.
자주 묻는 것
- 파이프라인 문서만 넘기면 인계인가
- 문서는 경로입니다. 창, 롤백 리허설, 로그 권한, 연락 네 줄이 운영 손에 있어야 인계입니다.
- 롤백 리허설을 검사 전에 못 하면
- 검사 조서에 미실시로 남기고 안정화 1주 안에 날짜를 박습니다. 미실시를 합격으로 바꾸지 않습니다.
- 로그 보존 14일이 짧지 않나
- 숫자보다 운영이 조회할 수 있는지가 먼저입니다. 조회가 안 되면 90일도 개발자 디스크입니다.
- 야간 연락을 외주 운영에 넘기면
- 1차 수신과 에스컬레이션 30분을 계약 줄에 이름으로 남깁니다. 방 초대만 넘기면 책임이 다시 개발에 돌아옵니다.
관련 용어
출처
다른 가이드