{"id":"IL-0399","org":"Government Digital Service","date":"2016-12-15","docs":[],"title":{"en":"Applications on GOV.UK PaaS in AWS eu-west-1 failed DNS lookups intermittently for about two hours overnight","ko":"AWS eu-west-1 의 EC2 DNS resolver 문제로 GOV.UK PaaS 와 그 위의 애플리케이션이 DNS 조회에 간헐적으로 실패했다"},"domain":["aws","networking"],"impact":{"scope":"Applications on GOV.UK PaaS had intermittent DNS failures and could fail to reach databases, backend services and APIs; some end users would have seen intermittent slowness and errors","users":"unknown","region":"AWS eu-west-1, zone 3"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":null,"related":[],"sources":[{"url":"https://governmentasaplatform.blog.gov.uk/2017/02/03/incident-report-paas-2/","kind":"blog","archived":null}],"summary":{"en":"Many components and operations of GOV.UK PaaS need working DNS resolution. On 15 December 2016 the EC2 DNS resolvers in AWS eu-west-1 had a problem, and from 1.17am VMs in zone 3 of the production account logged DNS resolution errors, Datadog metrics stopped arriving, the Pingdom check of the database endpoint failed several times and CF API smoke tests failed to resolve UAA. AWS acknowledged DNS resolution issues from some instances in EU-WEST-1 on its status page at 1.50am. The DNS errors stopped at 2.57am and AWS reported full recovery at 3.17am. The team was not providing 24/7 support for the PaaS at the time; a team member saw the warnings at 8am, checked monitoring to confirm the issue had ended, and users of the platform were notified by email at 11.06am. Because of the hour, the team thinks tenants were probably affected only through automated scheduled tasks.\n\nThe team considered running a local DNS resolver cache instead of querying the EC2 resolvers directly and rejected it, because uncached records would still have failed. It also discussed adding open resolvers such as Google or OpenDNS and decided against them because their rate limiting and other behaviour might introduce new issues; both ideas may be revisited if DNS problems recur.","ko":"2016년 12월 15일 AWS eu-west-1 의 EC2 DNS resolver 에 문제가 생겼다. GOV.UK PaaS 의 많은 구성 요소와 작업은 DNS 조회가 제대로 돼야 동작한다. 그래서 PaaS 와 그 위의 애플리케이션이 DNS 조회에 간헐적으로 실패했고, 데이터베이스, 백엔드 서비스, API 에 연결하지 못했을 수 있다. 오류는 01:17 에 운영 계정 zone 3 의 VM 들에서 시작해 02:57 에 마지막으로 기록됐고, AWS 는 03:17 에 복구를 알렸다. 팀은 장애가 난 시각으로 보아, PaaS 를 쓰는 tenant 인 서비스 팀이 겪은 문제는 주로 예약해 둔 자동 작업에서 났을 것이라고 봤다.\n\n그 무렵 팀은 PaaS 를 24시간 지원하지 않았다. 08:00 에 팀원이 경고를 보고 모니터링에서 영향이 끝났음을 확인했고, 11:06 에 플랫폼 사용자에게 알림 메일을 보냈다. 팀은 EC2 resolver 에 바로 질의하는 대신 로컬 DNS resolver 캐시를 두는 방안을 검토했다. 그러나 캐시에 없는 레코드는 여전히 실패했을 것이라고 보고 택하지 않았다. google 이나 OpenDNS 같은 resolver 를 더하는 방안도 검토했지만, 그 서비스들의 rate limiting 같은 동작이 새 문제를 부를 수 있다고 보고 택하지 않았다. 팀은 DNS 조회 장애가 또 나면 두 방안을 다시 검토하겠다고 했다. AWS 는 DNS 조회 서비스에 비슷한 문제가 다시 나지 않게 할 계획을 진행하고 있었다."},"trigger":null,"severity":"unknown","symptoms":["dns-resolution-failures","intermittent-connection-failures","monitoring-down"],"timeline":{"detected_after":"6h 43m","resolved_after":"2h"},"date_kind":"incident","detection":{"en":"Datadog and Pingdom alerts fired during the night, but no one was on out-of-hours support. A PaaS team member noticed the warnings at 8am when starting work and checked monitoring to confirm the issue was over.","ko":"장애가 난 시각에 팀은 PaaS 를 24시간 지원하지 않았다. 팀은 12월 15일 업무를 시작하면서 모니터링 알림이 나가 있던 것을 알아챘다. 08:00 에 팀원이 경고를 보고, 모니터링에서 영향이 끝났음을 확인했다."},"components":["vpc-dns-resolver"],"root_cause":"cloud-provider","remediation":[],"action_items":[{"text":{"en":"Stop the monitoring system from sending emails when disk monitoring data is not being received","ko":"디스크 모니터링 데이터가 들어오지 않을 때는 모니터링 시스템이 메일을 보내지 않게 한다. 메일이 너무 많으면 다른 알림을 알아보기 어렵기 때문이다."}},{"text":{"en":"Make notifying tenants about outages easier and quicker","ko":"장애를 tenant 에게 더 쉽고 빠르게 알릴 수 있게 한다."}},{"text":{"en":"Implement alert notifications for out-of-hours support, shaped by this incident","ko":"업무 시간 밖 지원에 쓸 알림을 곧 도입하고, 어떤 알림을 둘지는 이 장애를 예로 삼아 정한다."}},{"text":{"en":"Provide 24/7 support for the PaaS in line with the needs of adopting services","ko":"PaaS 를 쓰는 서비스의 필요에 맞춰 곧 24시간 지원을 시작한다."}}],"contributing":["alert-noise"],"recurrence_of":null,"symptoms_text":{"en":"On 15 December 2016 from 1.17am, VMs of the GOV.UK Platform as a Service (PaaS) in AWS eu-west-1 logged DNS resolution errors, and applications deployed on the PaaS failed DNS queries intermittently. Applications could fail to connect to their databases, backend services and APIs, and some end users of those applications would have seen intermittent slowness and errors between 1am and 3.17am.\n\nThe first errors appeared on the VMs cell/4, cell/5, cell/8, consul/2 and etcd/2, all in zone 3 of AWS in the production account. Most of them were failures to resolve the Datadog monitoring endpoint, repeating every 10 seconds, so the Datadog agent could not send metrics. From 1.33am Datadog raised \"no-data\" alerts from disk monitors on those VMs, followed by 68 alert and recover events from six hosts (cell/4, cell/5, cell/8, consul/2, elasticsearch_master/2, etcd/2) until 02:58.\n\nPingdom monitoring of the PaaS healthcheck app, whose DB endpoint checks that an application can connect to a backing database, first failed at 1.21am with 3 minutes of downtime, followed by 5 more failures between 1:24 and 2:18 lasting 1 to 6 minutes each. A smoke test of a CF API operation failed at 1.26am because the VM api/1 could not resolve UAA, and 6 more such errors followed between 01:37 and 02:46. The rate of DNS errors dropped at 2.52am and the last one was logged at 2.57am.","ko":"2016년 12월 15일 새벽 GOV.UK PaaS 의 VM 에 DNS 조회 오류가 기록되기 시작했고, PaaS 에 배포한 애플리케이션이 DNS 조회에 간헐적으로 실패했다. 그 때문에 서비스가 데이터베이스, 백엔드 서비스, API 에 연결하지 못했을 수 있다. 01:00 부터 03:17 사이에 이 애플리케이션을 쓴 사용자는 간헐적인 느려짐과 오류를 봤을 수 있다.\n\n첫 DNS 오류는 01:17 에 VM cell/4, cell/5, cell/8, consul/2, etcd/2 에 기록됐다. 모두 운영 계정에서 AWS zone 3 에 있는 VM 이었다. 대부분은 datadog 모니터링 주소의 이름을 해석하지 못한 오류였고, 10초마다 되풀이됐다. Datadog agent 는 지표를 보내지 못했다.\n\n01:21 에 Pingdom 이 healthcheck 앱의 DB endpoint 에서 첫 오류를 잡았고, 이 endpoint 는 3분 동안 내려가 있었다. 이 endpoint 는 애플리케이션이 뒤의 데이터베이스에 연결되는지 확인한다. 01:24 부터 02:18 까지 1분에서 6분짜리 실패가 5번 더 있었다.\n\n01:26 에 smoke test 의 CF API 작업 하나가 VM api/1 에서 UAA 주소의 이름을 해석하지 못해 실패했다. 같은 오류가 01:37, 01:42, 02:11, 02:21, 02:31, 02:46 에 6번 더 났다.\n\n01:33 부터 Datadog 에서 앞의 VM 들의 디스크 모니터가 \"no-data\" 알림을 내기 시작했다. 02:58 까지 6개 호스트 cell/4, cell/5, cell/8, consul/2, elasticsearch_master/2, etcd/2 에서 Alert/Recover 이벤트가 68번 났다.\n\n01:50 에 AWS 가 상태 페이지에 \"We are investigating DNS resolution issues from some instances in the EU-WEST-1 Region.\" 이라고 올렸다. 02:52 에 VM 의 DNS 오류가 줄었고, 02:57 에 마지막 오류가 기록됐다. AWS 는 03:17 에 완전히 복구됐다고 알렸다."},"updated_at":"2026-11-14T12:34:05.012305Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0399","org_slug":"government-digital-service"}