Incident Library
  • 원인
  • 구성 요소
  • 증상
  • 기여 요인
  • 사례

사례39건

39건 중 29~33번째

  1. 증상

    2019-06-02 US/Pacific 11:47~11:49 부터 미국 여러 리전의 Google Cloud 프로젝트에서 패킷 손실이 늘고, 지연이 커지고, 간헐적 오류와 인스턴스 연결 끊김이 나타났다. us-west1 과 유럽, 아시아 리전에는 리전 네트워크 혼잡이 없었다. Google 엔지니어는 장애가 시작되고 2분 뒤 알림을 받았다.

    촉발

    US/Pacific 11:45 에 비교적 드문 유형의 데이터 센터 유지보수 이벤트가 물리 위치 한 곳에서 시작됐다. 자동화 소프트웨어가 내릴 작업 목록에 네트워크 제어 작업을 돌리는 논리 클러스터를 넣었다. 이 클러스터에는 다른 물리 위치의 네트워크 제어 작업도 들어 있어, 여러 위치의 네트워크 제어 평면과 지원 인프라가 한꺼번에 내려갔다.

    원인
    구성 요소
    기여 요인
    감지

    Google 엔지니어는 장애가 시작되고 2분 뒤 알림을 받았고, 가장 심각한 운영 사고에 쓰는 사고 관리 절차를 곧바로 시작했다. 고객용 상태 페이지에는 US/Pacific 12:53 에 첫 공지가 올라왔다.

    조치
    • 혼잡을 줄이려고 덜 중요한 네트워크 트래픽 등급의 우선순위를 낮췄다.
    • US/Pacific 13:01 에 근본 원인을 찾고, 유지보수 이벤트를 일으킨 자동화 소프트웨어를 멈췄다.
    • 네트워크 제어 평면과 지원 인프라를 위치마다 다시 스케줄해 켰다.
    • 제어 평면 인스턴스가 모두 내려가면서 사라진 설정 데이터를 여러 위치에 다시 만들어 배포했다. 새 설정은 14:03 부터 나가기 시작했다.
    • Google 안의 여러 팀이 서비스별 완화 조치로 트래픽을 피해 리전 밖으로 돌려 다른 곳에서 계속 서비스했다.
    • us-west2, northamerica-northeast1, southamerica-east1 에서 장애 때문에 fail-safe 상태에 들어간 VPN 제어 평면을 손으로 빼냈다. 이 리전의 VPN 게이트웨이는 16:30 에 회복됐다.
    후속 조치
    • 유지보수 때 작업을 내리는 데이터 센터 자동화 소프트웨어를 즉시 멈췄고, 여러 물리 위치에서 동시에 작업을 내리지 않게 하는 안전장치를 갖춘 뒤에만 다시 켠다.
    • 클러스터 관리 소프트웨어가 요청의 출처와 상관없이 여러 물리 위치의 작업을 한꺼번에 내리는 요청을 거부하도록 강화한다.
    • 네트워크 제어 평면 소프트웨어와 지원 인프라가 이번 사고에 얽힌 유형의 유지보수 요청을 거부하도록 다시 설정한다.
    • 위치마다 네트워크 제어 평면이 설정을 영구 저장하게 바꿔, 모든 작업이 내려가도 설정을 다시 만들고 배포할 필요가 없게 한다. 이렇게 하면 복구 시간이 열 배쯤 줄어든다.
    • 제어 평면을 잃었을 때 네트워크가 fail static 모드로 더 오래 버티게 해, 사용자 영향 없이 복구할 시간을 충분히 둔다.
    • 고객 소통 도구를 포함한 비상 대응 도구와 절차를 검토하고 고치고 시험해, 이번과 같은 네트워크 장애에도 견디게 한다.
    • 상시 재해 복구 시험의 범위를 넓혀 이번 장애와 이와 비슷한 수준의 큰 장애를 넣는다.
  2. 증상

    2019-06-02 08:49 UTC 에 Packet 의 내부 네트워크 모니터링이 여러 글로벌 데이터센터에서 목적지에 닿지 못하는 문제와 성능 문제를 알렸다. 엔지니어들은 08:52 에 이 연결 문제를 확인했다.

    촉발

    Packet 의 상위 네트워크 사업자 Zayo 의 미국 대륙 횡단 백본 링크에 하드웨어 고장이 나서, 그 링크로 라우팅된 IP 트래픽이 블랙홀로 사라졌다.

    원인
    구성 요소
    기여 요인
    –
    감지

    08:49 UTC 에 모니터링 도구가 Packet 의 여러 글로벌 데이터센터에서 목적지에 닿지 못하는 문제를 알렸다. 08:52 에 엔지니어링 팀이 문제를 확인하고 내부 사고를 만들어 운영 인력과 플랫폼 엔지니어링, 네트워크 엔지니어링의 에스컬레이션 담당자를 불렀다.

    조치
    • 트래픽을 다른 네트워크로 옮겨 Zayo 를 상위 사업자 구성에서 뺐다.
    • 알맞은 경로 필터를 적용해 서비스를 정상으로 되돌렸다.
    • 바뀐 트래픽 구성에 맞춰 특정 라우팅 정책을 다듬어 백본 전반의 지연을 줄였다.
    후속 조치
    • 내부 연결 모니터링을 넓히고, 당직 운영팀에게 가는 알림을 늘린다.
    • 네트워크 자동화와 라우팅 프로토콜 구현을 넓혀 쓸 수 있는 모든 백본 경로로 더 잘 라우팅하고 부하를 나눈다. 큰 사업자 사고가 나면 운영자가 Packet 의 모든 데이터센터에 걸쳐 자동 트래픽 우회를 실행할 수 있게 한다.
    • Packet 의 프로비저닝 시스템과 서비스가 외부 네트워크 사업자와 데이터센터 사이 연결에 덜 의존하게 해서 복원력을 높인다.
  3. 증상

    2019년 2월 7일 22:17 UTC 부터 US-East 에 있는 여러 고객의 Acquia Cloud Enterprise 사이트가 불안정해지거나 멈췄다.

    촉발

    표준 패키지에 없는 시스템 진단 정보를 모으려고 임시 파일 시스템을 설정하던 중, 사람의 실수로 US-East 공유 VPC 의 보안 그룹에서 규칙 하나가 지워졌다.

    원인
    구성 요소
    기여 요인
    감지

    구성 드리프트 알림은 제대로 울렸다. 하지만 드리프트 오류를 다루는 절차 때문에 그 알림을 장애 시간을 줄일 만큼 제때 확인하지 못했다. 22:46 UTC 에 상태 페이지에 조사 중이라는 공지가 올라왔다.

    조치
    • 보안 그룹에서 지워진 규칙을 손으로 되살렸고, 23:25 UTC 에 장애가 끝났다.
    후속 조치
    • 관련된 모든 팀과 함께 내부 작업 절차를 고쳐 비슷한 일이 다시 일어나지 않게 한다.
    • VPC 보안 그룹의 구성 드리프트를 내부 팀에 더 빨리 알리는 장치를 더 만든다.
  4. 증상

    2019-01-08 이른 아침 Tinder 플랫폼에 오래 이어지는 장애가 났다. 노드에서 파드로 가는 통신과 DNS 조회가 실패했다.

    촉발

    그날 아침 장애에 앞서 이번 장애와 관계없는 플랫폼 지연이 늘자 클러스터의 파드와 노드 수를 늘렸다. 장애 당시 노드는 605개였고, 이 수는 기본 gc_thresh3 값을 넘기에 충분했다.

    원인
    구성 요소
    기여 요인
    조치
    • gc_thresh1, gc_thresh2, gc_thresh3 값을 올렸다.
    • Flannel 을 재시작해 ARP 표에서 빠진 네트워크를 다시 등록했다.
    교훈

    Tinder 는 이 장애로 네트워크 구성의 한계를 알게 됐다고 정리했다. Flannel 과 VXLAN 을 쓰는 클러스터에서는 노드마다 ARP 항목이 생기고, ELB 를 거쳐 다른 노드의 파드로 가는 통신이 항목을 더 늘린다. 그래서 노드가 605개에 이르자 리눅스의 기본 gc_thresh3 값으로는 모자랐다. 이 한계를 넘으면 패킷만 버려지는 것이 아니라 Flannel 의 /24 대역이 ARP 표에서 통째로 빠져 노드와 파드 사이 통신과 클러스터 안 DNS 가 함께 멈춘다.

  5. 증상

    2017년 11월 17일 PST 11시 52분에 엔지니어들이 서비스 영향을 알아채고 사고 채팅방에 올렸다. 이어서 sessions 클러스터의 다른 노드들에서 메모리 부족 알림이 차례로 울렸다.

    촉발

    Google 이 Google Cloud Platform 네트워크 스택에 내보낸 업그레이드가 Discord VM 의 네트워크 연결을 짧게 여러 번 끊었다. 네트워크를 많이 쓰는 sessions 클러스터 노드에서만 16번 일어났다.

    원인
    구성 요소
    기여 요인
    감지

    17일 11시 52분에 엔지니어들이 서비스 영향을 알아채고 사고 채팅방에 올렸다. 그 뒤로는 sessions 노드의 메모리 부족 알림으로 당번 엔지니어가 호출됐다. 18일에는 11시 38분 네트워크 문제로 당번 엔지니어가 호출됐고, 11시 40분에 고객 경험 팀이 지원 채널의 신고를 올렸다.

    조치
    • 12시 14분 sessions-1-9 를 안전하게 빼는 절차가 실패하자 노드를 강제로 종료했다. 같은 증상이 난 다른 sessions 노드도 강제로 종료했다.
    • 12시 42분 Google 지원 티켓을 가장 높은 등급인 P1 로 올리고 기술 담당 매니저에게 알렸다.
    • 14시 21분 Discord 의 핵심 서비스 여러 개를 재시작했다. 이 작업으로 연결된 클라이언트 수백만 대가 약 20분에 걸쳐 다시 연결됐다.
    • 17일 밤 강제 종료하고 재부팅한 노드가 다시 망가지지 않는 것을 보고 sessions 클러스터 전체를 종료하고 재부팅하기 시작했다.
    • 18일 12시 4분 서비스 복구를 도우려고 전 세계에서 메시지 전송을 껐다.
    • 18일 12시 4분 sessions 클러스터의 모든 멤버를 재시작했다.
    • 18일 12시 31분 첫 정상화를 알리고 메시지 전송을 다시 켰다.
    • Google 이 금요일에 네트워크 스택에 넣은 소프트웨어 변경을 18일 13시 30분 무렵부터 롤백했고, 15시 30분쯤 롤백이 끝났다.
    후속 조치
    • Discord 를 재부팅해야 했던 이전 장애에서 Erlang 클러스터가 노드 장애를 다루는 방식의 문제를 찾았다. 그 문제를 고치는 프로젝트를 이어 간다.
    • 그 개선을 안전하게 내보낼 수 있도록 이 서비스들의 업그레이드 부하 테스트 방식을 넓힌다.
    • Elixir 와 Erlang 서비스에서 쓰는 HTTP 라이브러리를 바꾼다.
    • Erlang 의 net_kernel 구성 요소에서 본 불안정을 재현했고 수정을 넣었다.
    • 장애 동안 성능이 떨어진 서비스 디스커버리 구성 요소의 일부를 더 성능이 좋은 구현으로 바꾼다.
    • 이번 장애를 Google 과 같이 처리하며 겪은 문제들을 Google 과 함께 고쳐 나간다.
    • P1 문제의 진행 상황을 제대로 추적하도록 Google 과 소통하는 내부 절차를 넓혔다.
    교훈

    Discord 는 두 번의 큰 장애가 그만큼 커진 데에는 Discord 시스템의 성능과 안정성 문제가 크게 작용했다고 봤다. 이런 형태의 네트워크 장애가 서비스의 연쇄 장애를 일으킬 수 있었기 때문이다. 일부 사용자에게만 머물렀어야 할 문제가 시스템 전체 장애 두 번으로 번진 데에는 여러 문제가 있었고, Discord 는 후속 조치로 그 문제 대부분을 풀 수 있다고 봤다.

내 클러스터에도 있는지 확인하기

이 39건에서 가장 많이 나오는 구성 요소: BGP 라우팅, 네트워크 컨트롤 플레인. kubegap 은 Claude Code 나 Codex 에서 쿠버네티스 클러스터를 읽기만 하며 이런 틈을 점검합니다. 점검 항목의 근거는 이 라이브러리와 같은 공개 보고서입니다.

원인별10

배포 결함3건

  1. IL-0354 Fly.io 일부 머신의 사설 네트워크 6PN 이 끊겼고 다음 날 잠깐 다시 끊겼다
    Fly.io2026
  2. IL-0563 Linode 의 모든 리전에서 서버에 연결할 수 없게 됐고 Amsterdam 데이터센터는 거의 전부 멈췄다
    Linode2025
  3. IL-0530 us-central1 의 가상 네트워크 라우터 컨트롤러가 메모리 부족으로 재시작을 되풀이해 새 VM 과 마이그레이션된 VM 의 네트워크가 오래 끊겼다

클라우드 제공자 장애4건

  1. IL-0463 Harness Secure Connect 의 내부 로드 밸런서에 닿을 수 없게 되어 Secure Connect 를 쓰는 git 커넥터 검사와 CI 파이프라인이 실패했다
  2. IL-0368 AWS us-east-1 장애 동안 PlanetScale 컨트롤 플레인이 멈추고, 이어 일부 데이터베이스 브랜치가 네트워크 분할로 쿼리에 실패했다
  3. IL-0261 GCP 네트워크가 잠깐씩 끊기면서 Discord sessions 클러스터 노드가 연달아 망가지고 서비스 전체가 두 번 멈췄다
  4. IL-0494 DDoS 중 호스팅 사업자가 중앙 로드 밸런서 IP를 null route 해 A 레코드로 Netlify를 가리킨 사이트가 응답하지 않았다

설정 변경8건

  1. IL-0400 웨일스 공공 부문 광역 네트워크 PSBA 에서 웨일스 전역의 기관 사이트가 연결과 인터넷 접속을 잃었고, 관리 링크도 계속 끊겼다 붙었다
    PSBA2026
  2. IL-0473 Azure 공개 쿠버네티스 클러스터의 노드 풀이 모두 지워지고 다시 만들어지지 않아 Jenkins 인프라 서비스가 4시간 넘게 멈췄다
  3. IL-0541 Twingate 의 us-east4 와 europe-west6 Relay 클러스터에 Client 와 Connector 가 접속하지 못했다
  4. IL-0225 라우터 명령 하나가 Microsoft WAN 의 모든 라우터에 토폴로지를 다시 계산하게 해 전 세계 Azure 네트워크 연결이 불안정해졌다.
  5. IL-0266 eqiad 코어 라우터 두 대 사이에 라우팅 루프가 생겨 eqiad 가 다른 데이터센터의 공인 IP 주소에 닿지 못했다
  6. IL-0539 잘못된 경로 정보가 IS-IS 로 전국 라우터에 퍼져 KT 인터넷이 약 89분 동안 끊겼다
    KT2021
  7. IL-0228 라우터 설정 변경 중 인터넷 전체 라우팅 테이블이 IGP 로 광고돼 OVHcloud 전 세계 네트워크의 IPv4 라우팅이 멈췄다.
  8. IL-0519 AWS 보안 그룹 변경으로 cloud.gov PaaS 의 나가는 트래픽이 막혀 애플리케이션들이 멈췄다

용량 한계2건

  1. IL-0350 TXL 클러스터 한 곳의 호스트 네트워크가 끊기고 프로비저닝 대기열이 밀려 여러 서비스가 오래 나빠졌다
  2. IL-0472 노드 605개 클러스터의 모든 노드에서 ARP 캐시가 넘쳐 노드와 파드 사이 통신과 DNS 조회가 끊겼다
    Tinder2019

운영 실수6건

  1. IL-0349 Berlin 의 VMware 기반 Private Cloud 에서 관리망과 스토리지, 외부 라우팅이 함께 끊겼다
  2. IL-0244 EKS 서브넷의 라우팅 테이블 연결이 사라져 live 클러스터의 Cloud Platform 서비스에 접근할 수 없었다
  3. IL-0221 유지보수 명령이 Facebook 백본 네트워크의 연결을 모두 끊어 데이터 센터와 DNS 서버가 인터넷에서 닿지 않게 됐다.
    Meta2021
  4. IL-0245 US-East 의 Acquia Cloud Enterprise 사이트들이 불안정해지고 멈췄다
    Acquia2019
  5. IL-0431 AWS 로 옮기는 점검 중 PostgreSQL 이 의도하지 않게 장애 조치되어 한 시간 동안 갱신된 데이터가 사라졌다
    Hatena2017
  6. IL-0337 US East 리전 한 가용 영역에서 네트워크 변경으로 EBS 노드가 복제본과 끊겨 EBS 볼륨이 멈췄다

업그레이드로 깨진 호환성1건

조직
  1. IL-0227 의도하지 않은 자동 OS 업데이트가 호스트 네트워킹을 다시 시작해 Heroku dyno 의 외부 연결이 끊기고 많은 고객이 최대 24시간 서비스 중단을 겪었다.
    Heroku2025

소프트웨어 결함7건

  1. IL-0233 eu-west1 에서 Managed Kubernetes 의 거의 모든 파드가 네트워크 연결을 잃었고 롤백으로도 돌아오지 않았다
    Nebius2025
  2. IL-0347 FR-PAR-1 가용 영역에서 하이퍼바이저 약 25% 의 VPC 연결이 11분 동안 끊겼다
  3. IL-0529 모든 Google Cloud 존에서 VPC 컨트롤러가 꺼져 새로 만든 VM 과 여러 제품의 새 인스턴스가 네트워크 없이 올라왔다
  4. IL-0342 DigitalOcean 의 AMS3, LON1, SFO2 데이터 센터가 에지 라우터 고장으로 인터넷 연결을 되풀이해 잃었다
  5. IL-0344 Linode US-West 의 Fremont 와 Santa Clara 데이터 센터가 인터넷 연결과 두 사이트 사이 연결을 잃었다
    Linode2023
  6. IL-0222 유지보수 자동화가 여러 위치의 네트워크 제어 평면 작업을 한꺼번에 내려 미국 Google Cloud 리전의 네트워크가 심하게 혼잡해졌다.
  7. IL-0396 새로 만들거나 라이브 마이그레이션한 GCE 인스턴스, Cloud VPN 터널, 네트워크 로드 밸런서가 2시간 8분 동안 공인 IP 주소로 연결되지 않았다

의존성 장애6건

  1. IL-0526 HE.net 암스테르담 라우팅 장비 고장으로 OpenStreetMap.org 의 이중 광 회선이 모두 끊김
  2. IL-0509 DDoS 뒤 상위 망의 null route 로 SourceHut 의 PHL 데이터센터 망이 끊겨 170시간 동안 장애가 이어졌다
  3. IL-0259 Fastmail 에서 나가는 패킷이 인터넷 일부에 닿지 않아 고객 3~5% 가 약 19시간 동안 Fastmail 을 쓰지 못했다
  4. IL-0267 싱가포르 캐시 거점 eqsin 의 전송 회선 두 개가 함께 끊겨 BGP 가 내려가고 eqsin 의 호스트에 닿을 수 없게 됐다
  5. IL-0358 Packet 공용 클라우드의 여러 리전에서 라우팅 루프와 블랙홀로 연결이 간헐적으로 끊겼다
    Packet2019
  6. IL-0258 DDoS 방어 업체에서 데이터센터로 가는 GRE 터널이 끊겨 FastMail 이 두 시간 가까이 접속되지 않았다

DNS·네트워크 장애1건

기여 요인
–
  1. IL-0423 NY2 리전의 Gradient 노트북과 Core VM 이 읽기 전용 모드에 빠져 다음 날까지 쓸 수 없었다

하드웨어 고장1건

  1. IL-0525 Equinix 암스테르담 전원 점검 중 업링크가 하나뿐인 스위치가 꺼져 OpenStreetMap.org 가 7시간 27분 멈춤