클러스터 개요
Lumie 플랫폼은 K3s v1.34.3 기반의 OCI(Oracle Cloud Infrastructure) 클러스터에서 운영됩니다. 1개의 마스터 노드와 3개의 워커 노드로 구성되며, 두 개의 OCI 계정(0213, 0214)에 걸쳐 VCN 피어링으로 연결됩니다. 모든 노드는 ARM64 (VM.Standard.A1.Flex) Ubuntu 24.04 기반입니다.
노드 구성
| 노드 | 역할 | 계정 | 비고 |
|---|---|---|---|
k3s-master | Control Plane | OCI-0214 | Private IP: 10.0.0.241, etcd + ArgoCD |
k3s-worker-2 | Worker | OCI-0214 | 애플리케이션 워크로드 |
k3s-worker-3 | Worker | OCI-0213 | VCN 피어링 연결 |
k3s-worker-4 | Worker | OCI-0213 | VCN 피어링 연결 |
worker-1은 2026-04 비용 최적화로 제외됨 (원래 OCI-0214 계정에 위치).
K3s 핵심 설정
마스터 노드
# provision/ansible/group_vars/masters.yml
k3s_server_args:
- "--write-kubeconfig-mode 644"
- "--tls-san {{ ansible_host }}" # 공용 IP
- "--tls-san {{ private_ip }}" # 프라이빗 IP
- "--cluster-cidr 10.42.0.0/16"
- "--service-cidr 10.43.0.0/16"
Traefik과 svclb(ServiceLB)는 기본 활성화 상태를 유지합니다. 단, 마스터 노드에는 node.kubernetes.io/exclude-from-external-load-balancers 레이블 또는 enablelb 레이블을 제거하여 svclb DaemonSet이 마스터에 배포되지 않도록 합니다. 마스터 노드의 443 포트는 Teleport가 hostNetwork 모드로 단독 점유합니다.
네트워크 CIDR
| 구분 | CIDR |
|---|---|
| Pod 네트워크 | 10.42.0.0/16 |
| Service 네트워크 | 10.43.0.0/16 |
| OCI-0214 VCN / subnet | 10.0.0.0/16 / 10.0.0.0/24 |
| OCI-0213 VCN / subnet | 10.1.0.0/16 / 10.1.0.0/24 |
CNI: Flannel
K3s 기본 CNI인 Flannel을 사용합니다. VXLAN 터널링으로 노드 간 Pod 네트워크를 구성합니다.
NetworkPolicy 미지원: Flannel은 NetworkPolicy를 지원하지 않습니다. 네임스페이스 간 트래픽 격리는 Kyverno 정책으로 보완합니다.