metallb: raise controller mem limit 64Mi→256Mi (OOM fix)

This commit is contained in:
kaffa
2026-04-20 08:20:39 +09:00
parent dc18ec8bac
commit 7d58e159af
2 changed files with 52 additions and 1 deletions

View File

@@ -0,0 +1,42 @@
---
title: MetalLB controller OOMKilled 수정 (limit 상향)
date: 2026-04-20
tags: [history, metallb, k3s, oom]
---
## 현상
`metallb-controller-685b4dc4d8-jzxwj` 파드가 15시간 동안 5회 재시작.
`describe`로 확인한 이전 종료 상태가 `OOMKilled / Exit 137`.
## 근본원인
- controller limit: **64Mi** (helm 기본값)
- 실사용: **62Mi** (평상시만으로도 이미 한계)
- cert-rotation · webhook 서버 · reconcile 시 메모리 spike → OOM
metallb v0.15는 cert-controller와 webhook server가 controller 프로세스 안에서 실행되어 기본 64Mi로는 부족. speaker는 이미 256Mi/128Mi였는데 controller만 1/4 수준이었음.
## 조치
`helm upgrade --reuse-values`로 controller 리소스 상향:
```bash
helm upgrade metallb metallb/metallb -n metallb-system --reuse-values \
--set controller.resources.limits.memory=256Mi \
--set controller.resources.requests.memory=128Mi
```
결과:
- revision 3으로 배포
- 새 파드 `metallb-controller-6c846cbc7-gpz7q` Running
- 적용된 resources: `limits.memory=256Mi, requests.memory=128Mi`
- 재시작 0회로 안정
## 교훈
helm 기본 resources가 운영 환경에서 부족한 경우가 흔함. 설치 시점에 반드시 기본값 리뷰 필요. 이번 외에도 chart 기본값으로 영구화가 안 돼 있던 건들은 [[2026-04-19-k3s-resource-requests|history]] 참고.
## 정본 링크
- [[metallb|infra/network/metallb]]

View File

@@ -1,6 +1,6 @@
--- ---
title: MetalLB (K3s LoadBalancer) title: MetalLB (K3s LoadBalancer)
updated: 2026-03-26 updated: 2026-04-20
tags: [infra, k3s, metallb, networking] tags: [infra, k3s, metallb, networking]
--- ---
@@ -21,6 +21,15 @@ K3s 내장 ServiceLB(Klipper)는 비활성화 (`--disable servicelb`, kr2/kr1 co
| Speaker | DaemonSet (노드당 1개, 3개) | | Speaker | DaemonSet (노드당 1개, 3개) |
| Controller | Deployment (1개) | | Controller | Deployment (1개) |
## 리소스 설정
| 컴포넌트 | requests mem | limits mem |
|---------|-------------|-----------|
| controller | 128Mi | 256Mi |
| speaker | 128Mi | 256Mi |
controller는 cert-rotation · webhook 서버 때문에 기본 limit(64Mi)으로는 OOM 발생. speaker와 동일 수준으로 맞춤. 이력: [[2026-04-20-metallb-controller-oom-fix|history]]
## IP 할당 현황 ## IP 할당 현황
| IP | Service | Namespace | Port | | IP | Service | Namespace | Port |