2.8. NodePort를 사용하여 수신 클러스터 트래픽 구성
특정 네트워킹 요구 사항에 맞게 애플리케이션에 대한 외부 액세스를 활성화하려면 NodePort 를 사용하여 서비스를 노출합니다.
이 구성은 클러스터의 모든 노드에서 특정 포트를 열어 노드의 IP 주소를 사용하여 외부 트래픽이 워크로드에 도달할 수 있도록 합니다.
OpenShift Container Platform에서는 클러스터에서 실행되는 서비스와 클러스터 외부에서 통신할 수 있습니다. 이 방법에서는 NodePort를 사용합니다.
다음 절차를 시작하기 전에 관리자는 다음 사전 요구 사항 작업을 완료해야 합니다.
- 요청이 클러스터에 도달할 수 있도록 외부 포트를 클러스터 네트워킹 환경으로 설정합니다.
- 하나 이상의 컨트롤 플레인 노드, 컴퓨팅 노드 1개 이상, 클러스터에 대한 네트워크 액세스 권한이 있는 클러스터 외부에 있는 OpenShift Container Platform 클러스터가 있어야 합니다. 이 절차에서는 외부 시스템이 클러스터와 동일한 서브넷에 있다고 가정합니다. 다른 서브넷에 있는 외부 시스템에 필요한 추가 네트워킹은 이 주제에서 다루지 않습니다.
클러스터 관리자 역할의 사용자가 한 명 이상 있는지 확인합니다. 이 역할을 사용자에게 추가하려면 다음 명령을 실행합니다.
$ oc adm policy add-cluster-role-to-user cluster-admin <user_name>
2.8.1. NodePort를 사용하여 클러스터로 트래픽 가져오기 링크 복사링크가 클립보드에 복사되었습니다!
클러스터의 모든 노드에서 특정 포트에 서비스를 노출하려면 NodePort 유형의 서비스 리소스를 사용하십시오.
포트는 서비스 리소스의 .spec.ports[*].nodePort 매개변수에 지정됩니다.
노드 포트를 사용하려면 추가 포트 리소스가 필요합니다.
NodePort 는 서비스를 노드의 IP 주소의 정적 포트에 노출합니다. NodePort 는 기본적으로 30000 ~ 32767 IP 주소 범위를 확장하므로 NodePort 가 의도한 서비스 포트와 일치하지 않을 수 있습니다. 예를 들어 포트 8080 은 노드에서 포트 31020 으로 노출될 수 있습니다.
관리자는 외부 IP 주소가 노드로 라우팅되는지 확인해야 합니다.
NodePort 및 외부 IP는 독립적이며 둘 다 동시에 사용할 수 있습니다.