- 정의
- DevOps 적용시 개발팀은 속도를, 운영팀은 안정성을 중시하기때문에 이를 중재하는 역할
- 시스템 장애로 인해 발생하는 신뢰도 하락, 금전 피해를 최소화하기 위한 목적
- 시간이 지나도 지속되는 운영방식을 구현하기 위한 목적
- 수행 원칙
- 가용성에 대한 명확한 정의
- 가용성 목표 정의
- 장애대응 계획
- 핵심 요소
- metric&monitoring
- 정량적 모니터링 지표 정의
- 안정성 목표를 SLO로 정의
- capacity planning
- 수요 기반 예측 및 성능 튜닝
- 운영을 위한 충분한 리소스 파악
- change management
- 카나리/롤링/블루그린 업데이트 등으로 소프트웨어 배포/업데이트/변경 관리
- 배포/장애시 빠른 롤백
- emergency response
- 모의훈련을 통한 MTTF, MTTF 등 메트릭 점수를 낮춰 장애시간 최소화
- culture
- 특정 시스템에 허용되는 장애 시간
- 데이터 기반 의사결정
- 포스트모템
- metric&monitoring
- 안정성 확보활동
- 조직의 사일로 최소화
- 시스템 안정성에 대한 책임 공유
- 조직간 효과적 협업을 위한 포스트모템 문화
- 장애 대응
- 비난하지 않는 문화
- 가용성 관리를 위한 error budget 개념 도입
- 점진적 변화 수행
- 빅뱅 방식보다는 분할/정복 방식의 배포 수행
- MTTR 최소화를 위한 카나리/롤링 업데이트 적용
- 매뉴얼 기반 자동화
- 자동화를 통해 운영 관여를 최소화
- 수동 작업량 측정 및 조절
- 지표화 관리
- 측정 가능한 모든 지표를 정량적으로 관리하여 표현
- 시스템 지표뿐 아니라 작업 시간, 장애 시간 등
- 조직의 사일로 최소화