1주차 - EKS Endpoint Access

728x90

EKS Cluster Endpoint

    • API 서버 엔드포인트 엑세스 - Public
      • kubectl-host → api-server [public 통신]
      • api-server → kubelet [private 통신]
      • kubelet / kube-proxy → api-server [public 통신] 

출처: https://www.ongja.space/13d4c62d-36c3-80da-8e8d-ee082f0b2c90

 

    1. kubectl-host → api-server [public 통신]
      kebelet과 kube-proxy가 API(공인IP)와 통신 확인
    2. api-server → kubelet [private 통신]
      kubectl 명령으로 특정 파드에 접근 (경로) : 작업PC -> API Server -> kubelet -> pod 
      #netshoot pod 실행 후, 해당 pod에서 uptime 명령어 실행
      kubectl run -it --rm netdebug --image=nicolaka/netshoot --restart=Never -- zsh
      
      $ watch uptime

      EKS owned ENI와 kubelet과 통신 확인

 


    • API 서버 엔드포인트 엑세스 - Public / Private(권장)
      • kubectl-host → api-server [public 통신]
      • api-server → kubelet [private 통신]
      • kubelet / kube-proxy → api-server [private 통신]  

출처: https://www.ongja.space/13d4c62d-36c3-80da-8e8d-ee082f0b2c90

  • API앤드포인드 엑세스 변경
#publicAccessCidrs 부분에 임의의 공인IP 입력
aws eks update-cluster-config --region $AWS_DEFAULT_REGION --name $CLUSTER_NAME --resources-vpc-config endpointPublicAccess=true,publicAccessCidrs="50.1.1.1/32",endpointPrivateAccess=true

 

 

  • API DNS가 사설IP로 변경된 것을 확인
(yjsong2@myeks:N/A) [root@myeks-host ~]# dig +short $APIDNS
192.168.2.148
192.168.1.38
  • 내부에서(작업용 ec2)에서 DNS 질의 시 사설 IP 확인 → EKS owned ENI IP 확인

 

  • 외부(Windows Local PC)에서 확인 시 기존 공인IP 확인

 

  • 기존 kube-proxy와 kubelet의 경우 공인IP를 통해 통신하는 것을 확인

 

  • kube-proxy rollout 후 사설 IP(EKS owned ENI) 통신 확인
kubectl rollout restart ds/kube-proxy -n kube-system

 

 

 

  • kubelet 재시작 후 사설 IP(EKS owned ENI) 통신 확인

# kubelet 은 노드에서 systemctl restart kubelet으로 적용해보자 : ss에 kubelet peer IP 변경 확인
for i in $N1 $N2; do echo ">> node $i <<"; ssh ec2-user@$i **sudo systemctl restart kubelet**; echo; done

 


    • API 서버 엔드포인트 엑세스 - Private
      • kubectl-host → api-server [private 통신]
      • api-server → kubelet [private 통신]
      • kubelet / kube-proxy → api-server [private 통신]

출처: https://www.ongja.space/13d4c62d-36c3-80da-8e8d-ee082f0b2c90

728x90