{"id":"IL-0256","org":"37signals","date":"2020-09-01","docs":[],"title":{"en":"Basecamp was fully down twice in two days as hardware load balancers crashed and routers lost sync after failover","ko":"하드웨어 로드 밸런서가 거듭 죽고 대기 장비로 넘어간 뒤 라우터가 동기화하지 못해 Basecamp 전체가 이틀 연속 열리지 않았다"},"domain":["networking"],"impact":{"scope":"All of Basecamp could not be loaded for 17 minutes on 1 September and 15 minutes on 2 September; Campfire chats and Pings were down on 1 September and slow for hours after 2 September","users":"unknown","region":"unknown"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"Basecamp plans for failures like these and practises responses to catastrophic failures in its live systems, but three obscure issues in five days chained into overlapping failures. What caught the team by surprise were cascading failures that exposed unexpected fragility and hard paths to recovery, which Basecamp says it can prepare for.","ko":"Basecamp 는 여러 겹의 이중화와 복원력을 갖추고 운영 시스템에서 큰 장애 대응을 연습해 왔지만 이번 사고들은 잡지 못했다. 모든 사고를 잡을 수는 없지만, 연쇄 장애가 예상하지 못한 취약함과 어려운 복구 경로를 드러내는 일에는 대비할 수 있다."},"related":[],"sources":[{"url":"https://signalvnoise.com/svn3/three-basecamp-outages-one-week-what-happened/","kind":"blog","archived":"https://web.archive.org/web/20250911122854/https://signalvnoise.com/svn3/three-basecamp-outages-one-week-what-happened/"}],"summary":{"en":"Basecamp runs two redundant data centers connected by two network links, and hardware load balancers direct Internet traffic to its servers. On 1 September 2020 the links between the data centers went offline, as they had on 28 August, and took Basecamp 3 Campfire chats and Pings down. During the recovery one load balancer crashed. The standby load balancer picked up operations at once, but the network routers did not synchronize automatically with it, and Basecamp was unreachable for 17 minutes until the team intervened by hand.\n\nOn 2 September the primary load balancer in the Virginia data center crashed in the morning and failed over cleanly. Later the secondary load balancer crashed as well and failed back to the former primary, which caused the same desynchronization between routers and load balancer and another 15 minutes of outage that needed manual intervention, followed by hours of slow chat. Basecamp worked with its load balancer vendor on the crash and had a preliminary assessment and bugfix. Basecamp said it had been pushing the hardware load balancers hard and that traffic overload was a driving factor in one of the outages.","ko":"Basecamp 는 이중으로 둔 두 데이터센터를 독립된 네트워크 회선 두 개로 잇는다. 로드 밸런서는 인터넷 트래픽을 Basecamp 서버로 보내는 하드웨어 장비다. 9월 1일 화요일 네트워크 회선이 다시 끊겨 Basecamp 3 의 Campfire 채팅과 Pings 가 멈췄고, 이를 복구하는 도중 로드 밸런서 하나가 죽었다. 대기 로드 밸런서가 바로 넘겨받았지만 네트워크 라우터가 새 로드 밸런서와 자동으로 동기화하지 못했고, 손으로 개입해야 해서 장애가 길어졌다. Basecamp 는 17분 동안 아예 열리지 않았다.\n\n9월 2일 수요일 아침 일찍 Virginia 데이터센터의 주 로드 밸런서가 다시 죽었고, 보조 로드 밸런서로 넘어가는 장애 조치는 예상대로 됐다. 오전 늦게 보조 로드 밸런서도 죽어 이전 주 장비로 되돌아가면서, 라우터가 동기화하지 못하는 전날의 문제가 다시 났다. 이번에도 손으로 고쳤다. Basecamp 는 15분 동안 열리지 않았고 그 뒤 몇 시간 동안 채팅이 느렸다. Basecamp 는 로드 밸런서 공급사와 함께 장애 원인을 찾았고, 1차 평가와 버그 수정을 받았다. Basecamp 는 하드웨어 로드 밸런서를 한계까지 써 왔고, 세 번의 장애 가운데 하나에서는 트래픽 과부하가 주요 요인이었다고 밝혔다."},"trigger":{"en":"On 1 September the network links between the data centers went offline, and during the recovery a hardware load balancer crashed. On 2 September the primary load balancer in Virginia crashed again, and later its secondary crashed too.","ko":"2020년 9월 1일 데이터센터 사이 네트워크 회선이 끊긴 것을 복구하는 도중 하드웨어 로드 밸런서 하나가 죽었다. 9월 2일에는 Virginia 데이터센터의 주 로드 밸런서와 보조 로드 밸런서가 차례로 죽었다."},"severity":"unknown","symptoms":["service-unavailable","link-flapping","high-latency"],"timeline":{"detected_after":null,"resolved_after":null},"date_kind":"incident","detection":null,"components":["on-premises-load-balancer","backbone-network"],"root_cause":"software-bug","remediation":[{"text":{"en":"On 1 September, intervened by hand to get the network routers working with the standby load balancer","ko":"9월 1일 라우터가 새 로드 밸런서와 자동으로 동기화하지 못하자 손으로 개입해 바로잡았다."}},{"text":{"en":"On 2 September, fixed the same router and load balancer desynchronization by hand","ko":"9월 2일 라우터가 동기화하지 못하는 같은 문제가 다시 나자 이번에도 손으로 개입해 고쳤다."}}],"action_items":[{"text":{"en":"Find the cause of the load balancer crash with the vendor and apply its bugfix","ko":"로드 밸런서 공급사와 함께 장애 원인을 끝까지 밝히고, 1차 평가에서 나온 버그 수정을 적용한다."}},{"text":{"en":"Replace the hardware load balancers","ko":"하드웨어 로드 밸런서를 교체한다."}},{"text":{"en":"Reroute the redundant cross-datacenter network paths for proper circuit diversity","ko":"데이터센터 사이 이중 네트워크 경로를 다시 깔아 회선이 실제로 다른 경로를 지나게 하고, 네트워크 공급사 사이의 숨은 의존을 없앤다."}},{"text":{"en":"Evaluate moving from hardware to software load balancers, which can be deployed in minutes","ko":"비상 대책으로 하드웨어 로드 밸런서에서 소프트웨어 로드 밸런서로 옮기는 것을 검토한다. 하드웨어는 교체에 며칠이 걸리지만 소프트웨어는 몇 분이면 배포할 수 있다."}},{"text":{"en":"Evaluate decentralizing the load balancer architecture to limit the impact of one failure","ko":"비상 대책으로 로드 밸런서 구성을 분산해 장애 하나의 영향을 줄이는 것을 검토한다."}},{"text":{"en":"Assess the systems for resilience, fragility and risk, and review the assessment process itself","ko":"시스템의 복원력, 취약함, 위험을 평가하고 평가 과정 자체도 검토한다."}}],"contributing":["overlapping-failures","no-spare-capacity"],"recurrence_of":null,"symptoms_text":{"en":"On Tuesday 1 September 2020 Basecamp could not be loaded at all for 17 minutes, from 9:51am to 10:08am Central Time (14:51–15:08 UTC), and nothing seemed to work. On Wednesday 2 September it happened again for 15 minutes, from 10:50am to 11:05am Central Time (15:50–16:05 UTC).\n\nOn 1 September the network links between Basecamp's two data centers went offline first and took Basecamp 3 Campfire chats and Pings down. While the team was recovering from that, one of the hardware load balancers crashed. A standby load balancer took over immediately, but the network routers failed to synchronize automatically with the new load balancer, and the outage lasted until someone intervened by hand.\n\nOn 2 September the primary load balancer in the Virginia data center crashed early in the morning and failed over to its secondary as expected. Later that morning the secondary also crashed and failed back to the former primary, and the routers lost synchronization in the same way, again needing manual intervention. After Basecamp came back, chat messages were slow and sluggish for hours.","ko":"2020년 9월 1일 화요일 Central Time 9:51am 부터 10:08am 까지, UTC 로는 14:51–15:08 의 17분 동안 Basecamp 가 아예 열리지 않았다. 아무것도 동작하지 않는 것처럼 보였고, 다시 열린 뒤에는 모든 것이 정상으로 보였다.\n\n그날은 데이터센터 사이 네트워크 회선이 먼저 끊기면서 Basecamp 3 의 Campfire 채팅과 Pings 가 또 멈췄다. 이를 복구하는 도중 로드 밸런서 하나가 죽었다. 대기 로드 밸런서가 곧바로 넘겨받았지만, 네트워크 라우터가 새 로드 밸런서와 자동으로 동기화하지 못했다.\n\n9월 2일 수요일 Central Time 10:50am 부터 11:05am 까지, UTC 로는 15:50–16:05 의 15분 동안 Basecamp 가 다시 열리지 않았다. 다시 열린 뒤에도 채팅 메시지가 몇 시간 동안 느렸다.\n\n9월 2일에는 아침 일찍 Virginia 데이터센터의 주 로드 밸런서가 다시 죽어 보조 로드 밸런서로 넘어갔다. 이 장애 조치는 예상대로 됐다. 그날 오전 늦게 보조 로드 밸런서도 죽어 이전 주 장비로 되돌아갔다. 그러자 라우터가 로드 밸런서와 동기화하지 못하는 전날의 문제가 다시 났다."},"updated_at":"2026-11-14T12:33:50.578868Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0256","org_slug":"37signals"}