고객 사고 관리 정책
Cloudflare가 프로덕션 환경에 영향을 주는 사고를 어떻게 처리하고, 그러한 사고의 특성과 영향을 기업 요금제 고객에게 어떻게 알리는지 알아보시기 바랍니다.
목적
Cloudflare는 개방성과 투명성이 서비스 제공의 본질적 가치라고 생각하며 고객은 물론 전반적인 인터넷 커뮤니티와의 신뢰 구축에 전념하고 있습니다. Cloudflare는 수백 만 명의 삶과 번영에 영향을 주는 글로벌 네트워크를 운영하기 때문에 그러한 책임을 막중하게 생각하고 있습니다.
본 SOP(표준 운영 절차)는 Cloudflare가 프로덕션 환경에 영향을 주는 모든 사건과 문제를 처리하는 방법과, 심각성에 관계없이 계획된 사건 및 예상치 못한 사건의 특성과 영향을 기업 요금제 고객에게 알리는 방법을 정의합니다. 이러한 노력에 대해 본 절차에서 규정하는절차들은 다음 목적을 위한 것입니다.
- 환경 가동 시간 극대화
- 고객 영향 최소화
- 수리 시간 단축
- 고객 및 인터넷 커뮤니티와의 정보 공유
범위
본 SOP는 Cloudflare 고객과 고객이 이용하는 고객 서비스에 적용됩니다. SOP는 다음을 비롯한 Cloudflare의 모든 고객 프로덕션 환경에 적용할 수 있습니다.
- Cloudflare의 공용 웹사이트( www.cloudflare.com)
- Cloudflare의 API(Application Programming Interface)
- 아웃바운드 타사 인터페이스(예: 신용 카드 인증 등)
- Cloudflare가 프로덕션 서비스용으로 소유하거나 관리하는 네트워크 인프라
- Cloudflare 프로덕션에 영향을 주는 공곱사 소프트웨어, 하드웨어, 서비스
배경
Cloudflare는 더 나은 인터넷을 구축하고자 합니다. Cloudflare는 더 나은 경험을 수백만 인터넷 사용자에게 제공하기 위해, 내부적으로 우수한 서비스 제공 프로세스와 절차에 따라 운영되어야 합니다. 따라서 Cloudflare의 절차는 다양한 산업 표준 모범 사례를 따르며 그중 일부는 ITIL(Information Library Infrastructure Technology)의 패턴을 구체적으로 따릅니다. 본 SOP는 ITIL 문제 관리 방법론의 모범 사례를 따릅니다.
정의
주요 사건 용어의 범주: 모든 이벤트는 경고를 발령할 수 있는 조건이고, 일부 경고는 주목할 사고이고(일부는 그렇지 않습니다), 모든 사고는 (자동화 또는 인간 개입을 통해) 분류돼야 하고, 일부 사고는 문제이고, 문제 중 일부는 “주요” 문제로서, 상태 페이지 업데이트가 필요하며, 주요 사고 중 일부는 사고 보고서를 작성해야 하는 높은 우선순위(P1)를 갖고 있습니다.
주요 용어:
이벤트
Cloudflare의 프로덕션 애플리케이션이나 시스템이 기록할 수 있는, 식별 가능한 별도의 것
경고
Cloudflare의 모니터링 시스템이 확인하고 알리는, 관심의 대상이 될 잠재력이 있는 이벤트
사고
Cloudflare의 프로덕션 시스템에 영향을 줄 가능성이 매우 높은 보고서 또는 경고, 또는 영향을 받은 서비스가 문제 조건이 확인되기 전에 복구되기 때문에 짧은 시간 동안만 존재하는 경고 조건
문제
Cloudflare 프로덕션 시스템이나 애플리케이션의 최적 상태 및/또는 성능에 부정적인 영향을 주는, 확인되고 분류된 사건
사고 보고서
서비스 문제의 특성, Cloudflare의 전반적인 문제 대응, 향후 영향을 줄이거나 제거하기 위한 노력을 기술한 공개 보고서
사후 검토
심각하거나 중요한 문제에 대응하여 시작된 검토 회의. 모든 사후 검토 회의는 문제 특성을 해결하는 데 적합한 기술이나 경험을 가진 Cloudflare 엔지니어가 작성한 사고 보고서의 상세 정보에 집중합니다.
SRE(Systems Reliability Engineer)
시스템 책임 엔지니어(SRE)는 모든 사고의 일선 지원을 담당하는 사람들입니다.
CSUP(Customer Support)
고객 지원 그룹(CSUP)은 모든 고객 요청에 대한 대응과 확인된 문제 기간 중 모든 고객 커뮤니케이션을 담당하는 팀입니다.
JIRA
사건, 작업 지시, 문제를 추적할 때 사용하는 Cloudflare 티켓 시스템
심각도/우선순위 수준
Cloudflare 네트워크 및 고객에 영향을 주는 문제의 심각도에 따른 “P0, P1, P2, P3” 값
SLA
서비스 수준 계약(SLA) – 특정 수준의 서비스에 대한 내부 또는 계약 의무(일반적으로 시간 단위당 작업으로 측정됨)
SLO(Service Level Objective)
서비스 수준 목표(SLO) – 특정 수준의 서비스에 대한 내부 또는 계약 목표(일반적으로 시간 단위당 작업으로 측정됨)
사고 지휘관
문제를 올바로 처리하고, 시간을 준수하고, 보고하고, 고객에게 소식을 전하고, 필요에 따라 필요한 자원을 참여시키는 Cloudflare 리소스
인터넷 커뮤니티
Cloudflare의 주요 이해 관계자 그룹. Cloudflare는 460만 개 이상의 웹사이트를 보호하고 최적화하며, 평균 인터넷 사용자는 매주 500회 이상 Cloudflare 웹사이트와 상호 작용합니다.
타사
Cloudflare와 협력하여 고객에게 시스템 또는 서비스를 제공하는, Cloudflare 이외의 공급자 또는 서비스 제공자
이해 관계자
공급자(예: Cloudflare 사람, 타사)나 소비자(소비자)으로서 사고에 영향을 받는 사람, 그룹 또는 기업
RCA(Root Cause Analysis)
근본 원인 분석(RCA) – 문제의 기반 원인에 대한 철저한 검토
복원
문제의 근본 원인을 해결하고 재발을 막기 위한 모든 필수 조치
상태 페이지
서비스 제공과 Cloudflare 서비스에 영향을 주는 사고 또는 문제에 대한 정보를 공유하기 위해 Cloudflare가 사용하는 주요 도구: https://www.cloudflarestatus.com
상태 페이지는 타사( Statuspage.io)가 호스팅하며 이 회사는 Cloudflare의 서비스에 의존하지 않고 운영합니다.
역할 및 책임
Cloudflare 내 사고 관리와 관련된 역할과 책임은 다음과 같습니다.
Cloudflare 경영진
절차를 검토하고 승인합니다. 절차에 대해 모든 직원이 교육받도록 합니다. 필요에 따라 절차 내 역할을 고객과 타사에 알립니다. 중요 사고 보고서에 대한 사후 검토를 착수하고 감독합니다.
긴급 SRE
모든 중요 경고에 대응하기 위해 긴급 시프트에 배정된 한 명 이상의 SRE. 사고를 파악하고 대응하고, 사고의 심각도를 평가하고 분류하고, 영향을 끼치는 사고를 문제로 에스컬레이션할 수 있습니다. 시작부터 끝까지 사안의 에스컬레이션과 관리를 담당합니다.
긴급 네트워크 엔지니어
모든 중요 경고에 대응하기 위해 긴급 시프트에 배정된 한 명 이상의 네트워크 엔지니어. 확인된 문제가 진행되는 동안 1차 사고 관리자를 제공하는 SRE 팀과 협력합니다.
긴급 CSUP
모든 고객 요청에 대응하기 위해 시프트에 배정된 한 명 이상의 CSUP 엔지니어. 모든 확인된 문제가 진행되는 동안 모든 고객 커뮤니케이션을 담당합니다. 계획 유지 보수를 알리는 책임이 있습니다.
SRE 팀
긴급 SRE의 노력을 지원하는 시스템 책임 엔지니어링 팀. 확인된 문제가 진행되는 동안 사고 관리자 역할을 합니다. Cloudflare가 지원하는 적절한 프로덕션 변경을 실행하여 문제를 해결합니다.
Cloudflare 엔지니어링 팀(DBA, 네트워크, nginx, 보안, 기타)
문제 해결 중 사고 관리자를 지원합니다. 요청에 따라 연결 통화에 참여합니다. 문제를 진단하고 수정하고, 다른 담당 그룹에 적절히 에스컬레이션하면서 문서를 작성합니다. Cloudflare 경영진의 요청에 따라 사고 보고서 사후 검토에 참여합니다.
표준 운영 절차
본 섹션은 사고 및 문제 관리 절차를 상세히 다룹니다. 개괄적으로 프로세스는 다음과 같이 관련되어 있습니다.
-
사고 관리: 경고 관찰 및 대응에 대한 전반적인 프로세스로서, 사고의 잠재적 영향 및 심각도 평가, 사고를 문제로 분류, 문제에 우선순위 부여, 또는 문제 조건이 확인되지 않은 경우 사고를 비영향 이벤트로 해제하는 일을 포함합니다.
-
문제 관리: 문제의 범위와 규모를 확인하고, 적절한 심각도 수준(P0, P1, P2, P3)을 부여하고, 문제를 해결하고 프로덕션 서비스의 최적 상태를 복구하는 조치를 지정하고, 문제를 적절한 당사자에게 알리는 프로세스입니다.
-
해결 관리: 문제 조건으로 이어진 원인과 조건을 조사하고, 문제 관리 및 해결의 전반적인 방법을 보고하고, 앞으로 문제의 조건과 원인을 예방할 수 있는 방법을 후속 분석하는 프로세스입니다.
사고 관리
사고 관리의 핵심 목표는 되도록 빨리 잠재적 문제를 확인하고 대응하여, 프로덕션 서비스에 대한 영향을 최소화하고, 최선의 서비스 품질과 가용성을 제공하는 데 있습니다. 최선의 서비스 품질과 가용성 수준은 모든 서비스가 언제나 설계된 바대로 정확히 작동하고 언제나 가용성과 접근성을 유지하는 것입니다.
Cloudflare는 통제할 수 있는 힘과 없는 힘의 조합되어 서비스 상태에 영향을 줄 수 밖에 없다는 것을 인정하기 때문에 SLO(서비스 수준 목표)와 SLA(서비스 수준 계약)을 정의하여 Cloudflare 네트워크 내 다양한 서비스에 대해 수용할 수 있는 서비스 저하를 규정하고 있습니다. SLA와 SLO는 기간(월간 및 연간) 중 비율로 표현됩니다.
사고에 대해 주어진 정보의 정도는 다를 수 있지만, 사고를 분류하고 우선순위를 지정하기 전에 다음 정보를 수집해야 합니다.
- 제출자 소스(모니터링 경고 또는 다른 소스)
- 고객(해당하는 경우)
- 시스템 또는 애플리케이션(해당하는 경우 호스트 이름)
- 경고 시간
- 영향 범위: 영향 받은 시스템, 사용자 또는 지역의 수에 대한 추정값
- 영향 유형: 서비스 장애의 일반적인 범위(예: 모든 액세스 손실, 성능 저하, 영향을 받은 종속 애플리케이션, 관찰된 고객 영향)
소스에 관계없이, 문제로 분류되고 P0 또는 P1 우선순위가 지정된 모든 사고는 Cloudflare 티켓 시스템 JIRA에 기록됩니다. 서비스 수준에 즉시 영향을 주지 않는 조건에 해당하는 경고는 필요 시 P2 또는 P3 우선순위의 문제로 분류됩니다.
JIRA 시스템은 레코드 시스템으로서 모든 사건 정보와 문제에 대한 기타 모든 문서 소스(예: 경고 이력, 스크린샷, 작업 로그, 채팅)는 사건에 대응하여 생성된 원본 JIRA 티켓에 첨부됩니다.
사건 분류
SRE는 사건을 인정한 후 범주와 우선순위를 결정하여 경고를 즉시 분류합니다. SRE는 우선순위가 높은(P0 및 P1) 문제에 대해 새로운 JIRA 티켓을 만드는 경우, 범주와 우선순위를 포함시켜 각 티켓을 올바로 분류합니다.
우선순위
모든 티켓은 다음 네 가지 우선순위에 따라 분류됩니다. 다음 기준은 일반적인 가이드라인입니다. 아래 조건은 명시적으로 우선순위를 정의해야 하지만 SRE나 Cloudflare 경영진은 다음과 같은 경우 재량에 따라 문제에 더 높은 우선순위를 지정할 수 있습니다.
P0
- Cloudflare 애플리케이션이나 API에 대한 액세스 완전 손실.
- Cloudflare 애플리케이션이나 API에 대한 액세스 저하(98% 이하, 전 세계 또는 주요 지역에서 측정 시)
- 계층 1 데이터 센터에 대한 액세스 완전 손실 또는 주요 성능 저하
- 계층 1 글로벌 전송 공급자의 성능 저하(전 세계에서 20% 이상 패킷 손실 또는 주요 지역에서 30% 패킷 손실)
- 중요 시스템의 액세스 또는 성능 저하
P1
- 사이트 전체 성능의 간헐적 저하
- 보고 등의 중요 기능 손실
- 소셜 미디어나 외부 CloudFlare 웹사이트(예: spaCloudflare.com, salonCloudflare.com, 기타) 중 하나에서 Cloudflare 애플리케이션에 대한 액세스 손실
- 중요 아웃바운드 타사 인터페이스
- 기업 요금제 고객 또는 분산 파트너의 사이트 작동 불능
- 고객 데이터의 손상 또는 손실
P2
- 산발적 또는 지역적 성능 문제
- 눈에 띄는 고객 영향이 없는 시스템 문제(예: 높은 CPU)
- 단일 클라이언트 사용 중단/성능 저하
P3
- 최종 사용자에 영향이 거의 없거나, 가용성에 따라 처리할 수 있는 운영 사안, 절차 문제 또는 서비스 요청
- 아직 검토되지 않았거나 심각도가 결정되지 않은 모든 티켓에 부여되는 기본 심각도
범주
올바른 티켓팅과 커뮤니케이션을 위해 고 우선순위(P0 및 P1) 문제가 범주에 할당됩니다. 이 범주(티켓 라벨)는 Cloudflare의 공개 상태 페이지에 소개된 범주와 상응합니다.
우선순위가 낮은(P2 및 P3) 티켓은 Cloudflare 내 다양한 엔지니어링 및 비엔지니어링 팀에 지정된 라벨과 명명법을 사용하여 분류될 수 있습니다. 그러한 다양한 라벨과 범주는 본 문서에서 소개하지 않습니다 .
보안 사고
보안 범주에 따라 분류된 사고는 특별 취급과 절차가 필요하다는 것을 이해해야 합니다. 그러한 절차는 여기에 기록한 후 Cloudflare 정보보안팀이 정의한 바와 같이 보안 사고 절차를 따라야 합니다.
고 심각도/우선순위 사건
P0 및 P1 사건은 비즈니스에 강한 영향을 주기 때문에 가장 신속한 방법으로 처리하기 위해 특별한 관리 요건이 있습니다.
사고 관리자
모든 P0 및 P1 사안에 대해, 근무 중인 사고 관리자에게 즉시 연락해야 합니다. 사고 관리자의 일정을 게시하여 SRE가 언제라도 담당자를 알 수 있게 해야 합니다. 사고 관리자는 다음을 담당하는 중요한 리소스입니다.
- 사안의 심각도 확인
- 제출부터 해결까지 사안 추적
- 고객의 최고 이익을 대표
- 모든 작업 및 시간 기록
- 가장 빠른 해결을 위한 인력 지휘
- 미리 마련된 일정에 따라 고객과 내부 경영진에게 상태(또는 상태 변경 사항) 알림
- 시간 제한이 지나거나 적절히 진행되지 않을 때 고객, 내부 또는 타사로 에스컬레이션 수행
- 해결 시 티켓에 의미 있는 설명 적용
- 티켓을 종료하기 전에 사안이 해결됐다는 데 내부 제출자가 동의하는지 확인
사고 알림
사고 중 외부 커뮤니케이션이 중요한 이유:
- 이해당사자에게 Cloudflare가 사안을 알고 있으며 해결하기 위해 노력 중이라는 것을 알립니다.
- 고객에게 Cloudflare가 사안을 검토 중이며 고객의 최고 이익을 보호하기 위한 방법을 찾고 있다는 것을 알립니다.
- 사안을 불필요하게 지연하지 않고 적절히 에스컬레이션합니다.
- 주요 내부 이해당사자에게 중요 사건에 대해 알립니다.
사건 중 사용하는 주요 커뮤니케이션 유형:
사고가 확인되면 CSUP 팀원이 템플릿을 사용하여 즉시 상태 페이지를 만듭니다.
사후 검토
Cloudflare는 모든 중요 문제가 결코 재발하면 안 된다고 생각합니다. 이를 위해 모든 P0 문제는 사고 보고서를 발행하며 여기에는 문제의 근본 원인 분석과 사건으로 이어진 전반적인 요소가 포함됩니다. 모든 사고 보고서 이후에는 사후 검토 회의를 진행하며 여기서 엔지니어와 관리자는 사고 보고서의 세부 내용, 근본 원인 분석의 결론, 문제 조건의 재발을 막기 위한 후속 수정 조치를 검토하고 이에 합의합니다.
문제 관리 및 사후 검토
문제 관리는 사고의 근본 원인을 감지한 후 해결하고 예방하는 것이 주 목적이라는 점에서 사고 관리와 다릅니다.
근본 원인 분석 및 수정
문제 티켓
근본 원인 분석을 진행합니다. Jira 문제 티켓은 근본 원인 분석을 보증할 수 있는 이벤트를 기록하고 추적합니다. 이것은 해당 분야 전문가(SME)가 P0 또는 P1 사안을 검토하여 사안의 근본 원인을 찾는 프로세스입니다. 근본 원인이 결정되면 해당 분야 전문가는 원인을 해결하기 위한 복원 계획을 작성해야 합니다. 최종 결과물은 복원 완료를 추적하기 위해 잘 작성된 티켓이며 필요한 경우 잘 작성된 사건 보고서를 내부 팀 및/또는 고객에게 보내야 합니다.
위 내용은 타사 공급자나 벤더가 근본 원인 분석을 제공하는 경우에도 동일하게 적용됩니다. 타사로부터 근본 원인 분석 정보를 받으면 추적할 미실행 복원 내역을 비롯한 모든 관련 정보로 문제 티켓을 업데이트해야 합니다.
사고 보고서
사고 보고서는 사안을 고객에게 알리는 기본 수단이며 티켓에 작성된 내용의 일부나 전부를 포함할 수 있습니다.
보고서 작성자는 사안의 심각도와 담당 분야에 따라 다릅니다. 보고서 초안을 작성하면 Cloudflare 경영진에게 보고서의 내용, 약속, 전문적인 대표성을 검토받아야 합니다. 보고서가 승인을 받으면 고객에게 제공될 수 있습니다.
문제 검토
위 섹션에서는 사고 취급과 영구 복을 보장하기 위한 근본 원인 프로세스를 상세히 소개했습니다. 사고 및 문제 관리 프로세스의 마지막 부분은 주요 지표, 추세, 보고를 완료하여 프로세스가 올바로 실행되고, SLA가 충족되고, 표면 아래 사안이 누락되지 않았음을 확인하는 것입니다.
보고
진행 중 및 종결 티켓에 보고해야 할 티켓의 기준:
- 심각도
- 범주/하위 범주
- 담당 그룹
- 진행 기간/일수
가능한 한, 이 데이터가 그래픽 형식으로 보고되어 추세를 가시적으로 나타내야 합니다. 이 보고서는 내부 Cloudflare 관리자와 영역 오너에게 공개돼야 합니다.
분석 및 책임
티켓의 각 분야 담당자는 지정된 기간이나 합리적인 기간 내에 티켓을 종결할 뿐만 아니라 보고서를 검토하고 추세, 우려, 재발 사안을 찾아야 합니다. 이 분석에 따라 추가 문제 티켓을 발행하여 P0 또는 P1을 통해 드러나지 않은 사안을 복원해야 합니다. 이를 통해 지속적인 개선이 가능하고 궁극적으로 근본 원인을 처리하여 새로운 티켓 수를 줄일 수 있습니다.
사고 관리 검토 회의(사후)
전 부서 스태프 회의의 일환으로 그룹 관리자는 다음과 같은 목표를 갖고 티켓의 시작과 추세 보고서를 검토해야 합니다.
- 성공 또는 우려 분야 논의
- 분야 오너별 개선 기회 검토
- 복원 추적을 위해 새로운 문제 티켓 발행이 필요한 부문에 대한 합의