들어가며
- 예시로, BM 과 VM 은 interface 가 다릅니다. 따라서 Calico 에서 interface 를 설정할 때, 모두 읽고 작동할 수 있게 설정하는 작업이 필요합니다.
내용
예시. VM interface : ens / BM interface : bond
우선 사용하는 서버가 어떤 interface card 를 사용하는지 확인해야 합니다.
각 서버에서 다음 경로의 파일을 확인합니다.
ls -al /etc/sysconfig/network-scripts/ ... -rw-r--r--. 1 root root 406 Nov 28 16:54 ifcfg-ens192 ...
사용되는 interface card 는 ifcfg-XXX 로 시작하는 파일입니다.
해당 서버는 ens 를 사용 중인 것으로 확인할 수 있습니다.
모든 서버의 interface card 를 확인했다면 Calico 의 interface 통신 구간을 확인합니다.
이는 Calico 를 생성하는 yaml 파일에서 수정이 이루어집니다.
cd /<SETUP ROOT>/etc/ vi calico-v3.19-spsd.yaml
- calico-v3.19-spsd.yaml 수정 부분 (interface= 을 검색하여 쉽고 빠르게 수정구역을 찾을 수 있습니다. )
- name: IP_AUTODETECTION_METHOD value: "interface=ens.*, bond.*"
수정된 calico 의 정보를 적용합니다.
kuebctl delete -f calico-v3.19-spsd.yaml # 기존 Calico 가 내려간 것을 확인합니다. kubectl get po -n kube-system NAME READY STATUS RESTARTS AGE calico-kube-controllers-6c8f7d75bc-hjznb 1/1 Terminating 1 87d calico-node-l269v 1/1 Terminating 0 81d calico-node-xkv6n 1/1 Terminating 1 87d # Calico pod 가 모두 내려간 것을 확인 후 수정한 yaml 파일을 적용합니다. kuebctl apply -f calico-v3.19-spsd.yaml # 수정한 Calico 가 정상적으로 생성되었는지 확인합니다. kubectl get po -n kube-system NAME READY STATUS RESTARTS AGE calico-kube-controllers-6c8f7d75bc-hjznb 1/1 Running 0 57s calico-node-l269v 1/1 Running 0 57s calico-node-xkv6n 1/1 Running 0 57s
calico log 를 확인하여 interface error 가 발생하지 않았는지 확인해주는 작업이 필수입니다.
kubectl logs -f calico-node-<UUID>
아티클이 유용했나요?
훌륭합니다!
피드백을 제공해 주셔서 감사합니다.
도움이 되지 못해 죄송합니다!
피드백을 제공해 주셔서 감사합니다.
피드백 전송
소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.