본문으로 바로가기 본문 바로가기
WIKI 기술 지식 베이스

정책용 Calico, 네트워킹용 flannel(일명 Canal) 설치하기

원문 보기 위키 갱신

flannel로 네트워킹하던 기존 Kubernetes 클러스터에 데이터 플레인을 교체하지 않고 Calico 네트워크 정책만 추가하는 방법을 안내해요. 네트워킹은 flannel이 그대로 담당하고, 정책만 Calico가 맡는 Canal 구성이에요. Kubernetes API 데이터스토어와 etcd 데이터스토어 두 절차를 모두 소개해요.

출처: 문서

본문

시작하기 전에

SECONDARY: Calico는 flannel 없이도 네이티브 VXLAN 기능을 제공해요. VXLAN을 위해 flannel을 쓰려는 계획이라면, 대신 IP-in-IP 또는 VXLAN 모드로 Calico를 설치하는 것을 권해요. 클러스터에 최적의 네트워킹 옵션을 결정하는 방법을 참고하세요. 이미 네트워킹에 flannel을 쓰고 있다면 기존 클러스터를 Calico 네트워킹으로 마이그레이션할 수도 있어요.

Calico 시스템 요구 사항을 충족하는 Kubernetes 클러스터가 있는지 확인하세요. 없다면 kubeadm 설치 문서의 단계를 따르세요.

정책용 Calico, 네트워킹용 flannel(일명 Canal) 설치하기

데이터스토어 타입 선택하기

절차는 데이터스토어 타입에 따라 달라요. 자신의 타입에 맞는 섹션을 참고하세요.

Kubernetes API 데이터스토어로 설치하기 (권장)

  1. Kubernetes 컨트롤러 매니저에 다음 플래그가 설정되어 있는지 확인해요:
    --cluster-cidr=<your-pod-cidr>와 --allocate-node-cidrs=true.

    SUCCESS: kubeadm에서는 --pod-network-cidr=<your-pod-cidr>를 kubeadm에 전달하면 Kubernetes 컨트롤러 플래그 두 개가 모두 설정돼요.

  2. Kubernetes API 데이터스토어용 flannel 네트워킹 매니페스트를 내려받아요.

    curl https://raw.githubusercontent.com/projectcalico/calico/v3.33.0/manifests/canal.yaml -O
    
  3. 클러스터가 pod CIDR 10.244.0.0/16을 사용하도록 구성되어 있다면 다음 단계로 넘어가요. 다른 pod CIDR을 사용한다면 내려받은 매니페스트에서 10.244.0.0/16을 올바른 pod CIDR로 바꾸세요.

  4. 다음 명령으로 Calico를 설치해요.

    kubectl apply -f canal.yaml
    
  5. 애플리케이션 계층 정책을 적용하고 상호 TLS 인증으로 워크로드 간 통신을 보호하고 싶다면 애플리케이션 계층 정책 활성화로 계속 진행해요 (선택 사항).

여러분이 얻게 되는 구성의 세부 사항:

정책 IPAM CNI 오버레이 라우팅 데이터스토어
Calico Host-local Calico VXLAN Static Kubernetes

?

etcd 데이터스토어로 설치하기

Kubernetes API 데이터스토어를 강력히 권장하지만, etcd를 사용하고 싶다면 다음 단계를 완료하세요.

  1. Calico 네트워킹 매니페스트를 내려받아요.

    curl https://raw.githubusercontent.com/projectcalico/calico/v3.33.0/manifests/canal-etcd.yaml -O
    
  2. 클러스터가 pod CIDR 10.244.0.0/16을 사용하도록 구성되어 있다면 다음 단계로 넘어가요. 다른 pod CIDR을 사용한다면 내려받은 매니페스트에서 10.244.0.0/16을 올바른 pod CIDR로 바꾸세요.

  3. calico-config라는 이름의 ConfigMap에서 etcd_endpoints 값을 etcd 서버의 IP 주소와 포트로 설정해요.

    SUCCESS: 쉼표를 구분자로 사용해 여러 엔드포인트를 지정할 수 있어요.

  4. 다음 명령으로 매니페스트를 적용해요.

    kubectl apply -f canal-etcd.yaml
    
  5. 애플리케이션 계층 정책을 적용하고 상호 TLS 인증으로 워크로드 간 통신을 보호하고 싶다면 애플리케이션 계층 정책 활성화로 계속 진행해요 (선택 사항).

여러분이 얻게 되는 구성의 세부 사항:

정책 IPAM CNI 오버레이 라우팅 데이터스토어
Calico Host-local Calico VXLAN Static etcd

?

더 알아보기 (Learn more)

flannel 네트워킹을 유지하면서 Calico 정책만 얻는 Canal 구성은 데이터 플레인 교체 없이 정책 기능을 도입하는 부드러운 첫걸음이에요. 다만 Calico 자체 VXLAN으로 통째로 이전하는 것이 더 좋은 선택일 수 있으니, 설치 전에 네트워킹 옵션 비교를 먼저 확인해 보세요.