2.8.3. 경로를 생성하여 서비스 노출
OpenShift Container Platform에서 실행되는 애플리케이션에 대한 외부 액세스를 활성화하려면 oc expose 명령을 사용하여 서비스를 경로로 노출할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform에 로그인되어 있습니다.
프로세스
노출하려는 서비스가 있는 프로젝트에 로그인합니다.
$ oc project <project_name>애플리케이션의 노드 포트를 공개하려면 다음 명령을 입력하여 서비스의 CRD(사용자 정의 리소스 정의)를 수정합니다.
$ oc edit svc <service_name>출력 예
spec: ports: - name: 8443-tcp nodePort: 30327 port: 8443 protocol: TCP targetPort: 8443 sessionAffinity: None type: NodePort-
NodePort: 선택 매개변수입니다. 애플리케이션의 노드 포트 범위를 지정합니다. 기본적으로 OpenShift Container Platform은30000-32767범위에서 사용 가능한 포트를 선택합니다. -
type: 서비스 유형을 지정합니다.
-
선택 사항: 노드 포트가 노출된 상태로 서비스를 사용할 수 있는지 확인하려면 다음 명령을 입력합니다.
$ oc get svc -n myproject출력 예
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE nodejs-ex ClusterIP 172.30.217.127 <none> 3306/TCP 9m44s nodejs-ex-ingress NodePort 172.30.107.72 <none> 3306:31345/TCP 39s선택 사항:
oc new-app명령에서 자동 생성한 서비스를 제거하려면 다음 명령을 입력합니다.$ oc delete svc nodejs-ex
검증
30000-32767범위의 포트로 서비스 노드 포트가 업데이트되었는지 확인하려면 다음 명령을 입력합니다.$ oc get svc다음 예제 출력에서 업데이트된 포트는
30327입니다.출력 예
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE httpd NodePort 172.xx.xx.xx <none> 8443:30327/TCP 109s