{"id":"IL-0163","org":"Linode","date":"2023-05-31","docs":[],"title":{"en":"An API change that slipped through a gap in automated testing made LKE clusters resize to the wrong number of nodes and added billable worker nodes to customer accounts","ko":"자동 테스트가 잡지 못한 API 변경이 배포돼 LKE 클러스터 크기를 바꿀 때 노드가 잘못된 수만큼 만들어졌고, 고객 계정에 과금되는 노드가 늘었다"},"domain":["kubernetes"],"impact":{"scope":"some customer LKE clusters resized unexpectedly and gained billable worker nodes; cluster operation not affected","users":"unknown","region":"LKE in US-East (Newark), US-Central (Dallas), US-West (Fremont), US-Southeast (Atlanta), CA-Central (Toronto), EU-West (London), EU-Central (Frankfurt), AP-South (Singapore), AP-Northeast (Tokyo 2), AP-West (Mumbai), AP-Southeast (Sydney)"},"review":{"written_by":"session","reviewed_at":null,"reviewed_by":null},"lessons":{"en":"An API change that alters scaling behaviour resized customer clusters and added cost while the clusters themselves kept working; Linode announced the issue about 13 hours after the change went out. Removing the extra nodes would have disrupted workloads, so the cost was handled through credits instead.","ko":"자동 테스트가 잡지 못한 API 변경 하나가 고객 클러스터의 노드 수를 바꾸고 요금까지 늘렸다. Linode 는 테스트를 점검하고 배포 전 체크리스트를 늘리는 것으로 대응했다. 잘못 늘어난 노드라도 지우면 고객 워크로드에 영향을 줄 수 있어서, Linode 는 노드를 지우지 않고 요금 조정으로 보정했다."},"related":[],"sources":[{"url":"https://status.linode.com/incidents/c9fdf31x6kw8","kind":"official-status","license":"unknown","archived":null}],"summary":{"en":"A change to the API made LKE clusters scale improperly. A gap in Linode's automated testing did not cover this failure case, so the change reached production at about 16:00 UTC on 31 May 2023. Affected customers' node pools were resized wrongly and accrued charges for the extra nodes.\n\nLinode identified the cause at 08:56 UTC on 1 June and deployed a hotfix at 09:40 UTC. The extra worker nodes were left in place so that customer workloads would not be disrupted, and affected customers were contacted by ticket about credit adjustments and further mitigation. The incident was marked resolved at 21:23 UTC on 1 June.","ko":"2023년 5월 31일 16시 UTC 무렵 Linode 가 API 에 넣은 변경 때문에 LKE 클러스터가 잘못 스케일링됐다. 자동 테스트에 빈틈이 있어 이 경우를 잡지 못했고, 변경은 그대로 운영에 나갔다. 그 결과 일부 고객 클러스터의 크기가 예상하지 못한 방식으로 바뀌었고, 고객 계정에 과금되는 자원이 늘었다. 영향은 US-East 의 Newark 부터 AP-Southeast 의 Sydney 까지 LKE 리전 11곳에 걸쳤다.\n\nLinode 는 6월 1일 05시 07분 UTC 에 문제를 공지하고, 잘못 만들어진 노드로 생긴 초과 요금은 원인을 해결한 뒤 크레딧으로 보상하겠다고 밝혔다. 08시 56분 원인을 찾았고 09시 40분 핫픽스를 적용했다. 10시 20분 수정이 배포됐다고 공지한 뒤 지켜봤다. 늘어난 워커 노드는 고객 워크로드에 영향을 주지 않으려고 그대로 두었고, 영향받은 고객에게는 티켓으로 요금 조정과 추가 조치 방법을 알렸다. 21시 23분 버그가 완전히 고쳐졌다며 장애를 닫았다."},"trigger":{"en":"At about 16:00 UTC on 31 May 2023 a change to the API that caused LKE clusters to scale improperly was pushed to production.","ko":"5월 31일 16시 UTC 무렵 LKE 클러스터를 잘못 스케일링하게 만드는 API 변경이 운영에 배포됐다. 자동 테스트에 빈틈이 있어 이 실패를 잡지 못했다."},"severity":"unknown","symptoms":["autoscaler-misbehaving"],"timeline":{"detected_after":null,"resolved_after":"17h 40m"},"date_kind":"incident","detection":{"en":"The first status update, at 05:07 UTC on 1 June, said Linode had been made aware of an issue when resizing LKE clusters, about 13 hours after the change went out.","ko":"Linode 는 6월 1일 05시 07분 UTC 에 LKE 클러스터 크기를 조정하면 잘못된 수의 노드가 생기는 문제를 알고 있다고 공지했다. 변경이 나간 지 약 13시간 뒤였다."},"components":["node-pool"],"root_cause":"deploy-rollout","remediation":[{"text":{"en":"advised customers to avoid resizing their clusters","ko":"6월 1일 05시 07분 UTC 고객에게 가능하면 클러스터 크기 조정을 피하라고 안내했다."}},{"text":{"en":"deployed a hotfix at 09:40 UTC on 1 June that corrected the scaling behaviour","ko":"09시 40분 UTC 잘못된 스케일링을 바로잡는 핫픽스를 적용했다."}},{"text":{"en":"left the extra worker nodes in place to avoid disrupting customer workloads","ko":"고객 워크로드에 영향을 주지 않도록 늘어난 워커 노드를 지우지 않고 그대로 두었다."}},{"text":{"en":"contacted affected customers by ticket about credit adjustments and further mitigation","ko":"영향받은 고객에게 티켓으로 요금 조정과 추가 조치 방법을 알렸다."}}],"action_items":[{"text":{"en":"Audit the automated tests","ko":"자동 테스트를 점검한다."}},{"text":{"en":"Add pre-deployment checklist items so the same failure does not happen again","ko":"같은 일이 다시 일어나지 않도록 배포 전 체크리스트 항목을 추가했다."}}],"contributing":["test-coverage-gap"],"recurrence_of":null,"symptoms_text":{"en":"Resizing an LKE cluster produced an incorrect number of nodes, so some customer clusters were resized in unexpected ways and the extra worker nodes were billed to the customer accounts. The clusters themselves kept functioning. Linode's first status update, at 05:07 UTC on 1 June 2023, advised customers to avoid resizing their clusters if possible.","ko":"2023년 5월 31일 16시 UTC 무렵부터 일부 고객의 LKE 클러스터 크기가 예상하지 못한 방식으로 바뀌었다. 클러스터 크기를 조정하면 잘못된 수의 노드가 만들어졌고, 고객 계정에 과금되는 자원이 추가됐다.\n\n클러스터 동작 자체에는 영향이 없었다. 영향받은 고객의 LKE 노드 풀은 잘못 스케일링됐고, 잘못 배포된 노드에 요금이 쌓였다.\n\nLinode 는 6월 1일 05시 07분 UTC 상태 페이지에 이 문제를 알리고, 고칠 때까지 가능하면 클러스터 크기 조정을 피하라고 안내했다. 08시 56분 원인을 찾았다."},"updated_at":"2026-11-10T00:00:36.857275Z","url":"https://benchlet.com/incidentlib/app/cases/IL-0163","org_slug":"linode"}