본문 바로가기
시스템/쿠버네티스

[쿠버네티스] ingress-nginx-controller node에 다 기동 되어 있어야 한다.

by cbwstar 2024. 1. 31.
728x90
반응형

node서버가 여러개인 경우 각 node서버 에 ingress-nginx-controller가 기동 되어 있어야 브라우저에서 호출할때 에러가 없다. 각 노드마다 통신을 해야 하는데 ingress-nginx-controller가 떠있지 않은 node에서 서비스가 돌아가는 앱은 ingress와 통신이 안되어서 호출이 안된다.

 

root@master:~/ingress# kubectl get deployments.apps 
NAME                       READY   UP-TO-DATE   AVAILABLE   AGE
ingress-nginx-controller   1/1     1            1           10d

 

호출을 해서 확인후에 아래 명령으로 편집을 해서

kubectl edit deployments.apps ingress-nginx-controller

 

replicas: 개수를 노드 수만큼 수정한다.

노드가 3개라서 3으로 수정하고 확인한다.

 

root@master:~/ingress# kubectl get deployments.apps -n ingress-nginx 
NAME                       READY   UP-TO-DATE   AVAILABLE   AGE
ingress-nginx-controller   3/3     3            3           11d

 

shell
닫기
root@master:~/harbor/harbor2# kubectl get pods -o wide -n ingress-nginx NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES ingress-nginx-controller-68cf785489-f7b8l 1/1 Running 0 7m37s 10.1.166.167 node1 <none> <none> ingress-nginx-controller-68cf785489-gn7m8 1/1 Running 0 7m37s 10.1.104.35 node2 <none> <none> ingress-nginx-controller-68cf785489-lfx6d 1/1 Running 12 (42m ago) 17h 10.1.135.44 node3 <none> <none> roo

pod에도 node1,node2,node3 이렇게 잘 떠 있어야 통신이 된다.

node1에 응용프로그램이 배포 되어 있고 ingress-nginx-controller이 node1에서 기동안하고 있으면 받아주는 controller가 없어서 에러가 발생한다.

728x90
반응형

댓글



"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."