Referencerke2spray

핵심 설정 참조

RKE2 release, network, endpoint, datastore, registry와 raw config 입력의 소유권

업데이트 검증 근거 자료이 페이지 편집

핵심 요약

  • kube_version은 checksum이 고정된 호환 rke2_version으로 해석됨
  • container runtime은 RKE2 bundled containerd로 고정됨
  • Canal, Calico, Cilium과 Flannel을 bundled CNI로 지원함
  • 다중 server 환경은 external load balancer 또는 Kube-VIP endpoint가 필요함
  • Role이 소유한 핵심 key를 raw RKE2 config로 덮어쓰면 preflight가 실패함

Kubespray 입력을 RKE2 결과로 매핑함

목적공개 입력RKE2 결과
Kubernetes versionkube_version호환되는 checksum-locked RKE2 release 선택
RKE2 revisionrke2_version같은 Kubernetes patch의 RKE2 build 고정
Runtimecontainer_managercontainerd만 허용
CNIkube_network_pluginRKE2 cni config 생성
Pod·Service CIDRKubespray network 변수cluster-cidr, service-cidr 생성
API endpointrke2_endpointdirect, external 또는 Kube-VIP 선택
Datastoreetcd groupembedded etcd 또는 external datastore 선택
RegistryKubespray containerd 변수RKE2 registries.yaml 생성
Ingressrke2_ingress_controllerpackaged ingress 선택 또는 비활성화

CNI 지원 범위를 확인함

상태
canalbundled 지원
calicobundled 지원
ciliumbundled 지원
flannelbundled 지원
kube_network_plugin_multus: trueprimary CNI와 함께 지원
none, custom_cni, 기타 외부 CNI현재 adapter gap으로 거부
  • Windows agent가 있으면 Calico 또는 Flannel만 선택함
  • CNI, Multus, Pod CIDR과 Service CIDR은 설치 후 변경하지 않음

Endpoint와 datastore topology를 선택함

조건설정
단일 serverrke2_endpoint.mode: direct
다중 server와 기존 LBrke2_endpoint.mode: external
다중 server와 관리 VIPrke2_endpoint.mode: kube_vip
embedded etcdetcd group을 control-plane과 동일하게 구성
external etcd별도 etcd host를 구성

Raw config의 소유권 충돌을 피함

  • 확장 입력은 rke2_cluster_config, rke2_server_config, rke2_agent_configrke2_host_config로 제한함
  • token, node identity, endpoint, CIDR, CNI와 datastore key는 Role이 소유함
  • Kubespray 변수로 표현 가능한 값은 raw config보다 공개 변수를 우선함

결론

  • release 선택은 원본 저장소의 docs/support-matrix.md를 기준으로 함
  • 설정 적용 전 호환성 참조와 preflight 결과를 함께 확인함