3.3.3. 서비스


Kubernetes 서비스는 내부 로드 밸런서 역할을 합니다. 수신 연결을 프록시하기 위해 복제된 포드 집합을 식별합니다. 서비스에 의존하는 모든 항목이 일관된 주소에서 참조할 수 있도록 백업 포드를 서비스에 임의로 추가하거나 제거할 수 있습니다. 기본 서비스 clusterIP 주소는 OpenShift Container Platform 내부 네트워크에서 제공되며 포드가 서로 액세스할 수 있도록 허용하는 데 사용됩니다.

서비스에 대한 외부 액세스를 허용하려면 클러스터 외부에 있는 추가 externalIP 및 ingressIP 주소를 서비스에 할당할 수 있습니다. 이러한 externalIP 주소는 서비스에 대한 고가용성 액세스를 제공하는 가상 IP 주소일 수도 있습니다.

서비스에 액세스할 때 적절한 지원 포드로 프록시하는 IP 주소 및 포트 쌍이 할당됩니다. 서비스는 레이블 선택기를 사용하여 특정 포트에서 특정 네트워크 서비스를 제공하는 실행 중인 모든 컨테이너를 찾습니다.

포드와 마찬가지로 서비스는 REST 개체입니다. 다음 예는 위에서 정의한 Pod에 대한 서비스 정의를 보여줍니다.

서비스 오브젝트 정의(YAML)

apiVersion: v1
kind: Service
metadata:
  name: docker-registry      1
spec:
  selector:                  2
    docker-registry: default
  clusterIP: 172.30.136.123   3
  ports:
  - nodePort: 0
    port: 5000               4
    protocol: TCP
    targetPort: 5000         5

1
서비스 이름 docker-registry 는 동일한 네임스페이스의 다른 포드에 삽입된 서비스 IP를 사용하여 환경 변수를 구성하는 데도 사용됩니다. 최대 이름 길이는 63자입니다.
2
레이블 선택기는 docker-registry=default 레이블이 백업 포드로 연결된 모든 포드를 식별합니다.
3
내부 IP 풀에서 생성 시 자동으로 할당되는 서비스의 가상 IP IP입니다.
4
서비스가 수신 대기하는 포트입니다.
5
서비스가 연결을 전달하는 백업 포드의 포트입니다.

Kubernetes 설명서 에는 서비스에 대한 자세한 정보가 있습니다.

3.3.3.1. 서비스 externalIPs

클러스터의 내부 IP 주소 외에도 사용자는 클러스터 외부에 있는 IP 주소를 구성할 수 있습니다. 관리자는 트래픽이 이 IP를 사용하여 노드에 도착하는지 확인합니다.

master-config.yaml 파일에 구성된 externalIPNetworkCIDRs 범위에서 클러스터 관리자가 externalIP를 선택해야 합니다. master-config.yaml 이 변경되면 마스터 서비스를 다시 시작해야 합니다.

Sample externalIPNetworkCIDR /etc/origin/master/master-config.yaml

networkConfig:
  externalIPNetworkCIDRs:
  - 192.0.1.0.0/24

서비스 externalIPs 정의(JSON)

{
    "kind": "Service",
    "apiVersion": "v1",
    "metadata": {
        "name": "my-service"
    },
    "spec": {
        "selector": {
            "app": "MyApp"
        },
        "ports": [
            {
                "name": "http",
                "protocol": "TCP",
                "port": 80,
                "targetPort": 9376
            }
        ],
        "externalIPs" : [
            "192.0.1.1"         1
        ]
    }
}

1
포트를 노출하는 외부 IP 주소 목록입니다. 이 목록은 내부 IP 주소 목록에 추가되어 있습니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.