Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

27.3. 고유한 외부 IP를 사용하도록 클러스터 구성

클라우드 이외의 클러스터에서 ingressIPNetworkCIDR 은 기본적으로 172.29.0.0/16 으로 설정됩니다. 클러스터 환경에서 이 프라이빗 범위를 아직 사용하지 않는 경우 기본값을 사용할 수 있습니다. 그러나 다른 범위를 사용하려면 수신 IP를 할당하기 전에 /etc/origin/master/master-config.yaml 파일에서 ingressIPNetworkCIDR 을 설정해야 합니다. 그런 다음 마스터 서비스를 다시 시작합니다.

경고

LoadBalancer 유형의 서비스에 할당된 외부 IP는 항상 ingressIPNetworkCIDR 범위에 있습니다. 할당된 외부 IP가 더 이상 범위를 벗어나도록 ingressIPNetworkCIDR 이 변경되면 영향을 받는 서비스에는 새 범위와 호환되는 새 외부 IP가 할당됩니다.

참고

고가용성을 사용하는 경우 이 범위는 255 IP 주소보다 작아야 합니다.

샘플 /etc/origin/master/master-config.yaml

networkConfig:
  ingressIPNetworkCIDR: 172.29.0.0/16

27.3.1. 서비스에 대한 Ingress IP 구성

인그레스 IP를 할당하려면 다음을 수행합니다.

  1. loadBalancerIP 설정을 통해 특정 IP를 요청하는 LoadBalancer 서비스에 대한 YAML 파일을 생성합니다.

    샘플 LoadBalancer 구성

    apiVersion: v1
    kind: Service
    metadata:
      name: egress-1
    spec:
      ports:
      - name: db
        port: 3306
      loadBalancerIP: 172.29.0.1
      type: LoadBalancer
      selector:
        name: my-db-selector

  2. Pod에서 LoadBalancer 서비스를 생성합니다.

    $ oc create -f loadbalancer.yaml
  3. 서비스에 외부 IP가 있는지 확인합니다. 예를 들어 myservice 라는 서비스의 경우 다음을 실행합니다.

    $ oc get svc myservice

    LoadBalancer-type 서비스에 외부 IP가 할당된 경우 출력에 IP가 표시됩니다.

    NAME         CLUSTER-IP      EXTERNAL-IP   PORT(S)   AGE
    myservice    172.30.74.106   172.29.0.1    3306/TCP    30s