← 탐색

태그된 포스트: kubernetes

클라우드 네이티브 · ·3분 읽기

etcd 3.7 나왔다 — 대형 클러스터에서 list 한 번에 OOM 나던 시대가 끝난다

5000노드 클러스터에서 kubectl get pods --all-namespaces를 때리면 어떤 일이 벌어지는지 본 적 있나. kube-apiserver가 etcd에 Range 요청을 보내고, etcd는 결과 전체를 메모리에 버퍼링한 다음 한 번에 돌려준다.

etcdkubernetesrangestream
데브옵스 리얼톡 · ·3분 읽기

Grafana K8s Helm v4, values.yaml 그대로 넣으면 터진다

올해 4월 Grafana Labs가 Kubernetes 모니터링 Helm 차트 v4를 릴리스했다. 공식 블로그 제목이 "Biggest update ever"인데, 과장이 아니다.

grafanakuberneteshelm
클라우드 네이티브 · ·3분 읽기

containerd 1.7 연장 지원 9월 종료 — config.toml 한 줄이 노드를 멈춘다

운영 중인 클러스터의 containerd 버전을 마지막으로 확인한 게 언제인가. K8s 버전은 꼬박꼬박 올리면서 런타임 버전은 "돌아가니까" 하고 넘기는 팀이 생각보다 많다.

containerdkubernetes마이그레이션
클라우드 네이티브 · ·2분 읽기

Kyverno 1.18 — 졸업장 받고 첫 번째로 한 일이 SSRF 틀어막기

Kyverno가 3월에 CNCF graduated 뱃지를 달았다. 그리고 졸업 후 첫 릴리스인 1.

kyvernocncfkubernetes
클라우드 네이티브 · ·3분 읽기

kube-proxy IPVS 모드 삭제됐다, 업그레이드 막히기 전에 움직여라

1.35에서 deprecated 경고 뜨길래 "다음에 하지 뭐" 했던 그 IPVS 모드가 1.

kuberneteskube-proxyipvs
클라우드 네이티브 · ·2분 읽기

ingress-nginx 죽은 지 77일, 아직 프로덕션에서 돌고 있다면

3월 24일, kubernetes/ingress-nginx 레포가 읽기 전용으로 전환됐다. 더 이상 릴리스도, 버그 수정도, 보안 패치도 없다.

ingress-nginxkubernetesgateway-api
클라우드 네이티브 · ·3분 읽기

매니지드 K8s 청구서, 컨트롤 플레인만 보면 호구 된다

컨트롤 플레인 가격표만 보고 클라우드를 골랐다면 이미 늦었을 수 있다. 2026년 기준 EKS, GKE, AKS의 실제 청구서를 뜯어봤는데, 숫자가 직관과 많이 다르다.

kuberneteseksgke
데브옵스 리얼톡 · ·2분 읽기

보안 레이어 4겹 씌웠는데 732바이트에 뚫렸다

지난달 공개된 CVE-2026-31431, 일명 "Copy Fail." 한 달이 지났다.

copyfailcve-2026-31431kubernetes
데브옵스 리얼톡 · ·3분 읽기

ArgoCD v2에서 v3으로 — "돌아가는데 왜 건드리냐"에 대한 답

5월 6일, ArgoCD v3.1이 공식 EOL됐다.

argocdgitopskubernetes
클라우드 네이티브 · ·2분 읽기

docker run으로 Wasm 바이너리 띄우기, 이제 진짜 된다

지난주에 사이드 프로젝트 API 서버를 Go로 짜다가 문득 궁금해졌다. 이 바이너리, 컨테이너 이미지로 감싸지 않고 Wasm으로 컴파일해서 바로 돌리면 어떨까?

dockerwasmwebassembly
백엔드 깊이보기 · ·3분 읽기

배치 메일이 8통씩 나가는데 3개월간 아무도 몰랐다

CS팀에서 "고객이 같은 알림 메일을 여러 통 받는다"는 티켓이 올라온 건 금요일 오후였다. 재현도 안 되고, 로그도 깨끗하고, 코드에 버그도 없었다.

spring bootscheduledshedlock
클라우드 네이티브 · ·2분 읽기

kube-scheduler가 드디어 묶음 배치를 배웠다

GPU 8장짜리 분산 학습 Job을 돌리는데 Pod 7개는 노드에 안착했고 1개가 Pending에 걸렸다. 그 7개는 나머지 하나를 기다리며 GPU를 점유한 채 아무 일도 안 한다.

kubernetesk8s-1.36gang-scheduling
백엔드 깊이보기 · ·3분 읽기

Kafka consumer group.instance.id 안 넣었을 뿐인데 배포마다 5분씩 메시지가 멈췄다

프로덕션 배포가 끝나면 Grafana를 5분 정도 지켜보는 게 루틴이었다. 그런데 어느 순간부터 배포 직후 consumer lag 그래프가 수직으로 치솟았다가 천천히 내려오는 패턴이 반복됐다.

kafkaspring bootkubernetes
데브옵스 리얼톡 · ·3분 읽기

K8s 업그레이드에 34일 태우는 팀과 3일 만에 끝내는 팀

deprecated API 경고를 무시해도 당장은 아무 일도 일어나지 않는다. 경고는 조용히 로그에 쌓이고, 클러스터는 잘 돌아가고, 팀은 다른 피처 일감에 바쁘다.

kubernetes업그레이드deprecated-api
클라우드 네이티브 · ·2분 읽기

externalIPs, 6년 방치된 보안 구멍이 드디어 막힌다

클러스터에 externalIPs 쓰는 서비스가 있는지 마지막으로 확인해본 게 언제인가. K8s 1.

kubernetesk8s-1.36externalips
클라우드 네이티브 · ·3분 읽기

etcd가 응답을 한 번에 뱉어내던 시대가 끝난다

클러스터 노드가 500대를 넘어가면서 etcd 메모리 그래프가 톱니바퀴 모양이 됐다. 주기적으로 치솟았다 내려오는 패턴.

etcdkubernetesrangestream
백엔드 깊이보기 · ·3분 읽기

maximumPoolSize=10인데 DB 커넥션이 380개가 된 이유

새벽 4시 반, 슬랙에 "DB connection pool exhausted" 알림이 쏟아졌다. DB 서버의 CPU 사용률은 15%.

spring boothikaricpkubernetes
백엔드 깊이보기 · ·3분 읽기

Actuator health 엔드포인트가 파드 12개를 연쇄로 죽인 밤

readiness probe 설정할 때 "/actuator/health 쓰면 되죠?"라고 대답하는 개발자가 많다.

spring bootkubernetesactuator
클라우드 네이티브 · ·3분 읽기

Pod 리사이즈, 이제 재시작 안 해도 된다

운영 중인 서비스에서 Pod가 OOM으로 뻗기 직전이다. 메모리 limit을 올려야 하는데, 지금까지의 정석은 Deployment spec을 수정하고 롤링 업데이트를 기다리는 거였다.

kubernetesk8s-1.36in-place-resize
클라우드 네이티브 · ·3분 읽기

컨테이너 깨고 나와봐야 root가 아니다

프로덕션 클러스터에서 컨테이너 탈출 CVE가 올라오면 제일 먼저 확인하는 게 뭘까. 해당 Pod가 root로 돌고 있었는지다.

kubernetesk8s-1.36user-namespaces
1 / 3 Next →