{"id":"IL-0144","org":"Microsoft Azure","date":"2022-08-30","docs":["https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1988119","https://github.com/mcgov/az_scripts/blob/main/az_fix_dns_resolve.sh","https://docs.microsoft.com/en-us/azure/aks/auto-upgrade-cluster","https://docs.microsoft.com/en-us/azure/virtual-machines/automatic-vm-guest-patching","https://docs.microsoft.com/en-us/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-health-extension"],"title":{"en":"A systemd security update installed by unattended-upgrades lost the DNS configuration of Ubuntu 18.04 VMs, so AKS kubelets could not resolve registry names and pods failed with ImagePullBackOff","ko":"Ubuntu 18.04 의 systemd 보안 업데이트가 DNS 설정을 날려 AKS 노드의 kubelet 이 레지스트리 이름을 해석하지 못하고 파드가 ImagePullBackoff 에 빠졌다."},"domain":["kubernetes","azure","networking"],"impact":{"scope":"Ubuntu 18.04 VMs with unattended-upgrades enabled, and services that run on them: AKS, Azure Monitor, Application Insights, Log Analytics and Microsoft Sentinel","users":"Customers running Ubuntu 18.04 VMs with unattended-upgrades enabled, and customers of the affected downstream services","region":"All Azure regions, including public and sovereign clouds"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"Security patches applied automatically by unattended-upgrades, once a day by default, and outside Azure's Safe Deployment Practices reached Ubuntu 18.04 VMs in every Azure region, so one systemd regression became a DNS outage across Azure. On AKS, lost node DNS showed up as image pull failures such as ImagePullBackoff, because kubelet could not resolve the registry. Azure plans to put node security patching under AKS's control with testing and controlled release; customers can use automatic node image upgrade for AKS, or automatic VM guest patching for VMs, instead of unattended-upgrades.","ko":"보안 업데이트는 중요도 때문에 안전 배포 절차를 거치지 않았고, 하루 한 번 자동으로 적용되는 업데이트가 모든 리전의 VM 에 퍼졌다. AKS 고객은 자동 노드 이미지 업그레이드를 쓰면 노드를 최신으로 유지하면서 Microsoft 의 공급망만 쓰게 된다. IaaS VM 은 자동 VM 게스트 패치를 쓰면 Ubuntu 패치를 받는 VM 의 범위가 제한되고 업데이트가 조율된 순서로 적용된다. 자동 VM 게스트 패치는 상태 감시도 하며, 사용자는 앱 상태 확장으로 애플리케이션 상태 신호를 줄 수 있다."},"related":[],"sources":[{"url":"https://azure.status.microsoft/en-us/status/history/?trackingId=2TWN-VT0","kind":"official-status","license":"unknown","archived":null}],"summary":{"en":"At 06:00 UTC on 30 August 2022 Canonical published an Ubuntu security update. Azure VMs on Ubuntu 18.04 with unattended-upgrades enabled, which by default downloads and applies security updates once a day, installed it, including systemd 237-3ubuntu10.54. A race-condition bug in that systemd version (Launchpad bug 1988119), set off by this update combined with an earlier one, made the VMs lose their DNS configuration. The bug only affects systems whose network configuration identifies the network interface card by driver name, which is why it hit Azure and not other major cloud providers.\n\nBecause of their criticality, security updates like this one do not go through Azure's Safe Deployment Practices process; Azure says it is reviewing that process. AKS nodes on Ubuntu 18.04 lost DNS, kubelet could not resolve registry hostnames, and new pods could not pull their images. Downstream services built on these VMs, including Azure Monitor, Application Insights, Log Analytics and Microsoft Sentinel, were affected by the same DNS failures.\n\nMitigation was done partly together with Canonical. Azure pointed customers to Canonical's description of the bug and a fix, and recommended rebooting affected VMs or, where that was not possible, running a template script to repair DNS after testing it. For AKS nodes, the AKS team built automatic detection and remediation and rolled it out in all regions, which resolved the vast majority of customers; the rest needed manual mitigation through support. Impact lasted until 16:00 UTC on 31 August 2022.","ko":"2022년 8월 30일 06:00 UTC 에 Canonical 이 Ubuntu 보안 업데이트를 공개했다. Unattended-Upgrades 를 켠 Azure 의 Ubuntu 18.04 VM 들은 systemd 237-3ubuntu10.54 를 포함한 새 패키지를 자동으로 내려받아 설치했고, 경쟁 상태 버그 때문에 DNS 설정을 잃었다. 버그는 이번 업데이트와 이전 업데이트가 겹쳐서 드러났고, 네트워크 설정에서 드라이버 이름으로 NIC 를 찾는 시스템에서만 생긴다. 그래서 다른 주요 클라우드가 아니라 Azure 에서만 문제가 됐다.\n\nAKS 노드도 이런 VM 이어서 kubelet 이 컨테이너 레지스트리 이름을 해석하지 못했고 파드가 이미지를 받지 못했다. Azure Monitor, Application Insights, Log Analytics, Microsoft Sentinel 도 같은 DNS 문제로 영향을 받았다. Unattended-Upgrades 는 기본적으로 하루에 한 번 보안 업데이트를 받아 적용한다. 보안 업데이트는 중요도 때문에 Microsoft 의 안전 배포 절차를 거치지 않는다.\n\nAKS 와 Azure Container Apps 팀을 포함한 여러 팀이 패키지 공개 직후 운영 알림으로 문제를 알았다. 이 팀들은 Canonical 과 함께 완화에 나섰고, 영향받은 VM 에는 재부팅이나 수정 스크립트를 권했다. AKS 팀은 자동 탐지와 복구 장치를 만들어 모든 리전에 배포했고 이것으로 대부분의 고객이 복구됐다. 나머지 고객은 지원팀을 거쳐 손으로 완화해야 했다. 영향은 8월 31일 16:00 UTC 까지 이어졌다."},"trigger":{"en":"Unattended-upgrades on Ubuntu 18.04 VMs installed a Canonical security update published at 06:00 UTC on 30 August 2022, including systemd version 237-3ubuntu10.54.","ko":"2022년 8월 30일 06:00 UTC 에 Canonical 이 Ubuntu 보안 업데이트를 공개했고, Unattended-Upgrades 를 켠 Ubuntu 18.04 VM 들이 systemd 237-3ubuntu10.54 를 자동으로 내려받아 설치했다."},"severity":"unknown","symptoms":["dns-resolution-failures","image-pull-failures","monitoring-down"],"timeline":{"detected_after":null,"resolved_after":"34h"},"date_kind":"incident","detection":{"en":"Several Azure teams, including AKS and Azure Container Apps, were alerted by production alerts shortly after the packages were published; incoming support cases then confirmed which Ubuntu versions were affected.","ko":"패키지가 공개된 직후 AKS 와 Azure Container Apps 팀을 포함한 여러 Azure 팀이 운영 알림으로 문제를 알았다. 이어 들어온 고객 지원 문의로 영향이 Ubuntu 18.04 에 한정된다는 것을 확인했다."},"components":["node-image","kubelet","registry","dns-resolver"],"root_cause":"upgrade-breaking-change","remediation":[{"text":{"en":"pointed customers to Canonical's description of the systemd bug and its fix","ko":"Canonical 과 Ubuntu 웹사이트에 이 버그와 수정 방법이 올라왔고, 영향받은 고객에게 읽어 보도록 권했다."}},{"text":{"en":"recommended rebooting affected VMs or running a template script that repairs DNS resolution","ko":"영향받은 VM 은 재부팅하거나, 재부팅할 수 없으면 Azure 가 제공한 템플릿 스크립트를 시험하고 필요한 만큼 고쳐서 돌리도록 권했다."}},{"text":{"en":"built automatic detection and remediation for AKS nodes and rolled it out across all regions","ko":"AKS 팀이 AKS 노드의 문제를 자동으로 탐지하고 고치는 장치를 만들어 모든 리전에 배포했다."}},{"text":{"en":"mitigated the remaining AKS customers manually through support","ko":"나머지 AKS 고객은 지원팀을 거쳐 손으로 완화했다."}}],"action_items":[{"text":{"en":"Review the process that lets critical security updates bypass Safe Deployment Practices","ko":"보안 업데이트가 안전 배포 절차를 거치지 않는 지금 방식을 검토해, 이런 장애에서 고객 영향을 줄인다."}},{"text":{"en":"Improve monitoring of the AKS data plane to alert on an uptick of errors","ko":"AKS 데이터 플레인 모니터링을 개선해 오류가 늘면 알림이 오게 했다."}},{"text":{"en":"Review AKS monitoring algorithms so that similar VM errors are detected and alerted on","ko":"AKS 모니터링 알고리즘을 검토해 이번과 비슷한 VM 오류를 탐지하고 알리게 했다."}},{"text":{"en":"Establish an improved escalation path to Canonical during outages and add it to internal Technical Service Guides","ko":"장애 중 Canonical 로 가는 에스컬레이션 경로를 개선하고 내부 기술 서비스 가이드에 넣었다."}},{"text":{"en":"AKS takes full control of the node security patch mechanism, with additional testing and controlled release of patches (estimated December 2022)","ko":"AKS 가 지금 Canonical 과 나눠 맡는 보안 패치 체계를 완전히 넘겨받아, 패치를 직접 추가로 시험하고 통제해서 배포한다. 2022년 12월 완료 예정이다."}},{"text":{"en":"Work with Canonical to run dedicated tests on proposed packages before they are published for Azure IaaS VMs","ko":"IaaS VM 용으로는 Canonical 과 협의해, Azure 사용자에게 공개되기 전의 후보 패키지에 전용 시험을 돌린다."}},{"text":{"en":"Establish a process with Canonical to close the testing gap for the upgrade scenario (estimated March 2023)","ko":"AKS 가 Canonical 과 절차를 세워 업그레이드 상황의 시험 공백을 메운다. 2023년 3월 완료 예정이다."}},{"text":{"en":"Give AKS customers maintenance window control and environment staging for these patches (estimated December 2023)","ko":"안전하다고 판단해 내보내는 패치는 AKS 고객이 유지보수 시간대를 직접 정하고 환경별로 나눠 적용할 수 있게 한다. 2023년 12월 완료 예정이다."}}],"contributing":["no-staged-rollout","blast-radius-too-wide","automation-amplified"],"recurrence_of":null,"symptoms_text":{"en":"From 06:00 UTC on 30 August 2022, Azure VMs running Ubuntu 18.04 (bionic) with unattended-upgrades enabled began failing DNS resolution and losing network connectivity. Several Azure teams, among them the AKS and Azure Container Apps teams, were alerted by production alerts shortly after the update packages were published.\n\nOn AKS, kubelet could not resolve the DNS names of container registries, so pod creation failed with errors such as ImagePullBackoff. Other Azure services that run on Ubuntu 18.04 VMs failed the same way: customers of Azure Monitor, Application Insights, Log Analytics and Microsoft Sentinel may have been unable to reach their log data and may have seen Log Search alerts and Microsoft Sentinel alerts missed or delayed.\n\nThe problem was limited to Ubuntu 18.04 but appeared in every Azure region, public and sovereign clouds alike. Incoming customer support cases confirmed that only those Ubuntu versions were affected.","ko":"2022년 8월 30일 06:00 UTC 무렵부터 Ubuntu Unattended-Upgrades 를 켜 둔 Ubuntu 18.04 VM 에서 DNS 이름 해석 오류가 나기 시작했다. AKS 에서는 kubelet 이 컨테이너 레지스트리의 DNS 이름을 해석하지 못해 ImagePullBackoff 같은 파드 생성 오류가 났다.\n\nVM 은 DNS 해석 실패와 함께 네트워크 연결 문제를 겪었다. 이 VM 위에서 도는 Azure Monitor, Application Insights, Log Analytics, Microsoft Sentinel 도 영향을 받아, 고객은 로그 데이터에 접근하지 못하거나 Log Search 알림과 Microsoft Sentinel 알림이 빠지거나 늦게 오는 일을 겪었을 수 있다.\n\n문제는 Ubuntu 18.04 에만 있었지만 퍼블릭 클라우드와 소버린 클라우드를 포함한 모든 Azure 리전에서 나타났다. 들어온 고객 지원 문의를 봐도 영향은 이 Ubuntu 버전에 한정됐다."},"updated_at":"2026-11-10T00:00:35.918395Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0144","org_slug":"microsoft-azure"}