스모크 테스트, 롤백 및 알림
배포를 확인하고 복구하며 결과를 알립니다.
스모크 테스트, 롤백 및 알림은(는) CoddyKit의 무료 DevOps Bootcamp 강의입니다. 이것은 4개 중 4번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 DevOps Bootcamp 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
새로 고침으로 배포가 끝나는 것은 아닙니다
플레이가 완료되었다고 해서 작동하는 앱이 되는 것은 아닙니다. 여전히 스모크 테스트, 롤백 경로, 알림이 필요합니다. 마지막 단계까지 마무리하십시오. 🔁
엔드포인트 스모크 테스트
uri 모듈로 실제 경로에 요청을 보내고 200 응답을 확인하십시오. 앱이 올바르게 응답하지 않으면 배포가 명확한 오류와 함께 실패해야 합니다.
- name: Smoke test
ansible.builtin.uri:
url: https://app.example.com/health
status_code: 200
return_content: true올바른 버전 확인
한 단계 더 나아가십시오. 응답을 읽고 assert를 사용하여 현재 실행 중인 버전이 방금 배포한 버전과 일치하는지 확인하십시오.
- ansible.builtin.assert:
that:
- "app_version in smoke.content"
fail_msg: "Wrong version live"block으로 배포 감싸기
배포와 테스트를 block 안에 그룹화하여 한 번의 실패가 하나의 공유 복구 경로를 트리거하도록 하십시오.
- block:
- import_role:
name: deploy
- import_tasks: smoke.ymlrescue에서 롤백
되돌리기 로직을 rescue에 넣으십시오. 이전 버전을 다시 배포하여 실패한 릴리스 때문에 사용자가 망가진 코드를 보게 되는 일이 없도록 하십시오.
rescue:
- name: Roll back
ansible.builtin.git:
repo: "{{ app_repo }}"
version: "{{ previous_version }}"
dest: /srv/app항상 트래픽 다시 활성화
배포가 성공했든 롤백되었든 always를 사용하여 노드를 로드 밸런서 뒤로 되돌리십시오. 호스트를 절대 고립시키지 마십시오.
always:
- community.general.haproxy:
state: enabled
host: "{{ inventory_hostname }}"
delegate_to: lb1빠르게 실패하고 명확하게 알리기
문제가 발생하면 fail 모듈을 사용하여 유용한 메시지와 함께 중지하십시오. 그러면 로그에 무엇이 정확히 고장 났는지 표시됩니다.
- ansible.builtin.fail:
msg: "Health check failed on {{ inventory_hostname }}"팀에 알리기
결과를 보고하십시오. community.general.slack 작업이 성공 또는 실패를 게시하므로 팀원은 배포가 완료되었는지 알 수 있습니다.
- community.general.slack:
token: "{{ slack_token }}"
msg: "Deployed {{ app_version }} ✅"이메일과 채팅 중 선택하기
이메일을 선호하시나요? mail 모듈이 요약을 보냅니다. 어떤 채널이든 사용할 수 있습니다. 중요한 것은 명확하고 자동화된 배포 신호입니다.
- community.general.mail:
to: ops@example.com
subject: "Deploy {{ app_version }} complete"마지막으로 성공한 버전 유지
추적하고 있어야 롤백이 작동합니다. 배포하기 전에 previous_version을 기록하여 rescue가 복원할 대상을 알 수 있도록 하십시오.
vars:
previous_version: "2.4.0"
app_version: "2.4.1"신뢰할 수 있는 배포
테스트하고, 실패하면 롤백하고, 항상 트래픽을 복원하고, 팀에 알리십시오. 이것이 처음부터 끝까지 이어지는 프로덕션 수준의 배포입니다. 🎉
빠른 확인
트래픽이 복원되도록 보장하는 섹션은 무엇입니까?
복습
마지막 단계까지 마무리했습니다. 스모크 테스트, rescue에서의 롤백, always에서의 재활성화, 팀 알림을 모두 적용했습니다. 종합 과정을 완료했습니다! 🏆
자주 묻는 질문
“스모크 테스트, 롤백 및 알림” 강의는 무료인가요?
네 — “스모크 테스트, 롤백 및 알림” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 DevOps Bootcamp 강의 전체를 잠금 해제할 수 있습니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
“스모크 테스트, 롤백 및 알림”에서 뭘 배우나요?
배포를 확인하고 복구하며 결과를 알립니다. 브라우저에서 직접 실행하는 실습 코드로 DevOps Bootcamp을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
DevOps Bootcamp을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 DevOps Bootcamp은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 4번째 강의입니다.
“스모크 테스트, 롤백 및 알림” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 DevOps Bootcamp 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 DevOps Bootcamp 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 프로젝트 설계: 역할 및 인벤토리
- 호스트 프로비저닝, 강화 및 초기 설정
- 로드 밸런서 뒤에서 롤링 배포하기
- 스모크 테스트, 롤백 및 알림