kube-proxy
kubelet이 파드의 상태를 관리한다면 kube-proxy는 파드의 통신을 담당합니다. 앞서 config.sh 파일에서 br_netfilter 커널 모듈을 적재하고 iptables를 거쳐 통신하도록 설정했습니다.
config.sh의 kube-proxy 관련 부분
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
modprobe br_netfilter
그런데 이 설정이 정상적으로 작동하지 않는다면, 즉 kube-proxy에 문제가 생기면 어떻게 될까요? 지금부터 확인해 보겠습니다.
1. 테스트하기 위해 마스터 노드인 m-k8s에서 다시 파드를 배포합니다.
[root@m-k8s ~]# kubectl create -f ~/_Book_k8sInfra/ch3/3.1.6/nginx-pod.yaml
pod/nginx-pod created
2. kubectl get pod -o wide 명령으로 파드의 IP와 워커 노드를 확인합니다.
[root@m-k8s ~]# kubectl get pod -o wide
NAME READY STATUS RESTARTS AGE IP NODE …
nginx-pod 1/1 Running 0 21s 172.16.103.130 w2-k8s …