24.6. 서비스 외부 IP에 대한 수신 클러스터 트래픽 구성
클러스터 외부의 트래픽에 사용할 수 있도록 외부 IP 주소를 서비스에 연결할 수 있습니다. 이는 일반적으로 베어 메탈 하드웨어에 설치된 클러스터에만 유용합니다. 트래픽을 서비스로 라우팅하려면 외부 네트워크 인프라를 올바르게 구성해야 합니다.
24.6.1. 사전 요구 사항
클러스터는 ExternalIP가 활성화된 상태로 구성됩니다. 자세한 내용은 서비스의 ExternalIP 구성을 참조하십시오.
참고송신 IP에 대해 동일한 ExternalIP를 사용하지 마십시오.
24.6.2. 서비스에 ExternalIP 연결
서비스에 ExternalIP를 연결할 수 있습니다. 클러스터가 ExternalIP를 자동으로 할당하도록 구성된 경우, ExternalIP를 서비스에 수동으로 연결할 필요가 없습니다.
프로세스
선택 사항: ExternalIP와 함께 사용하도록 구성된 IP 주소 범위를 확인하려면 다음 명령을 입력합니다.
$ oc get networks.config cluster -o jsonpath='{.spec.externalIP}{"\n"}'
autoAssignCIDRs
가 설정된 경우spec.externalIPs
필드가 지정되지 않으면 OpenShift Container Platform에서 새Service
오브젝트에 ExternalIP를 자동으로 할당합니다.서비스에 ExternalIP를 연결합니다.
새 서비스를 생성하는 경우
spec.externalIPs
필드를 지정하고 하나 이상의 유효한 IP 주소 배열을 제공합니다. 예를 들면 다음과 같습니다.apiVersion: v1 kind: Service metadata: name: svc-with-externalip spec: ... externalIPs: - 192.174.120.10
ExternalIP를 기존 서비스에 연결하는 경우 다음 명령을 입력합니다.
<name>
을 서비스 이름으로 교체합니다.<ip_address>
를 유효한 ExternalIP 주소로 교체합니다. 쉼표로 구분된 여러 IP 주소를 제공할 수 있습니다.$ oc patch svc <name> -p \ '{ "spec": { "externalIPs": [ "<ip_address>" ] } }'
예를 들면 다음과 같습니다.
$ oc patch svc mysql-55-rhel7 -p '{"spec":{"externalIPs":["192.174.120.10"]}}'
출력 예
"mysql-55-rhel7" patched
ExternalIP 주소가 서비스에 연결되었는지 확인하려면 다음 명령을 입력합니다. 새 서비스에 ExternalIP를 지정한 경우 먼저 서비스를 생성해야 합니다.
$ oc get svc
출력 예
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE mysql-55-rhel7 172.30.131.89 192.174.120.10 3306/TCP 13m