더북(TheBook)

9. 노드포트 서비스로 생성된 NGINX 인그레스 컨트롤러(nginx-ingress-controller)를 확인합니다. 이때도 -n ingress-nginx로 네임스페이스를 지정해야만 내용을 확인할 수 있습니다.

[root@m-k8s ~]# kubectl get services -n ingress-nginx
NAME                      TYPE      CLUSTER-IP      …  PORT(S)                    …  
nginx-ingress-controller  NodePort  10.108.212.241  …  80:30100/TCP,443:30101/TCP …  

10. expose 명령으로 디플로이먼트(in-hname-pod, in-ip-pod)도 서비스로 노출합니다. 외부와 통신하기 위해 클러스터 내부에서만 사용하는 파드를 클러스터 외부에 노출할 수 있는 구역으로 옮기는 것입니다. 내부와 외부 네트워크를 분리해 관리하는 DMZ(DeMilitarized Zone, 비무장지대)와 유사한 기능입니다. 비유적으로 표현하면 각 방에 있는 물건을 외부로 내보내기 전에 공용 공간인 거실로 모두 옮기는 것과 같습니다.

[root@m-k8s ~]# kubectl expose deployment in-hname-pod --name=hname-svc-default --port=80,443
service/hname-svc-default exposed
[root@m-k8s ~]# kubectl expose deployment in-ip-pod --name=ip-svc --port=80,443
service/ip-svc exposed
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.