모범 사례

지원 버전: Cilium 1.16+, Kubernetes 1.28+ 마지막 업데이트: 2026년 2월 22일

개요

이 장에서는 Cilium Service Mesh를 프로덕션 환경에서 운영하기 위한 모범 사례를 다룹니다. 배포 체크리스트, 리소스 사이징, 성능 튜닝, 사이드카 메시에서의 마이그레이션, 업그레이드 전략, 트러블슈팅 가이드를 포함합니다.

프로덕션 배포 체크리스트

필수 항목

## 인프라 준비
- [ ] Kubernetes 버전 1.28+ 확인
- [ ] Linux 커널 5.10+ (eBPF 기능용)
- [ ] 노드당 최소 4 CPU, 8GB RAM
- [ ] CNI로 Cilium이 설치됨
- [ ] kube-proxy 비활성화 (선택적이지만 권장)

## Cilium 설정
- [ ] Cilium 버전 1.16+ 설치
- [ ] Envoy 프록시 활성화
- [ ] Hubble 관찰성 활성화
- [ ] 메트릭 수집 설정

## 보안
- [ ] WireGuard 또는 IPsec 암호화 활성화
- [ ] mTLS 설정 (SPIRE 통합)
- [ ] 기본 거부 네트워크 정책 적용
- [ ] RBAC 설정 확인

## 관찰성
- [ ] Prometheus 메트릭 수집 설정
- [ ] Grafana 대시보드 구성
- [ ] AlertManager 알림 규칙 설정
- [ ] 로그 집계 설정 (선택)

## 고가용성
- [ ] Cilium Operator 복제본 2+ 설정
- [ ] Hubble Relay 복제본 2+ 설정
- [ ] etcd 외부 클러스터 (대규모 환경)
- [ ] PodDisruptionBudget 설정

권장 Helm values.yaml

사이징 가이드라인

클러스터 규모별 권장 사항

규모
노드
Pod
Cilium Agent
Envoy
Hubble Relay

소규모

1-10

<500

500m/512Mi

200m/256Mi

100m/128Mi

중규모

10-50

500-2000

1000m/1Gi

500m/512Mi

200m/256Mi

대규모

50-200

2000-10000

2000m/2Gi

1000m/1Gi

500m/512Mi

초대규모

200+

10000+

4000m/4Gi

2000m/2Gi

1000m/1Gi

Cilium Agent 리소스 계산

Envoy 리소스 계산

eBPF 맵 사이징

성능 튜닝

eBPF 최적화

네트워크 스택 최적화

Envoy 성능 튜닝

벤치마크 결과

spinner

사이드카 메시에서 마이그레이션

마이그레이션 전략

spinner

Istio에서 마이그레이션

1단계: Cilium 설치 (Istio와 공존)

2단계: 네임스페이스별 전환

3단계: 정책 변환 예시

Istio VirtualService:

Cilium 동등 설정:

Istio AuthorizationPolicy:

Cilium 동등 설정:

롤백 계획

점진적 도입

L3/L4만 사용 (Istio L7 유지)

점진적 L7 전환

spinner

모니터링 및 알림 설정

핵심 메트릭

대시보드 구성

업그레이드 전략

롤링 업그레이드

카나리 업그레이드

업그레이드 롤백

트러블슈팅 가이드

일반적인 문제

1. Pod 네트워크 연결 실패

2. L7 정책이 적용되지 않음

3. 높은 지연 시간

디버그 모드

로그 수집

EKS 특정 권장 사항

VPC CNI와의 통합

노드 그룹 설정

IAM 설정

요약

핵심 권장 사항

  1. 리소스 사이징: 클러스터 규모에 맞게 Agent와 Envoy 리소스 설정

  2. 보안: WireGuard 암호화와 mTLS 활성화

  3. 관찰성: Hubble과 Prometheus 메트릭 수집 필수

  4. 점진적 도입: 기존 메시에서 단계적으로 마이그레이션

  5. 모니터링: 핵심 메트릭에 대한 알림 설정

추가 리소스

참고 자료

마지막 업데이트