본문 바로가기

Kubenetes/Service & Ingress

외부 서비스에 연결 (Endpoint)

ㅁ 서비스 Endpoint 

 

Service는 Pod를 직접 link하지 않는다. 대신 Endpoint라 불리는 리소스가 Pod와 Service 사이에 위치 한다.

 

$ kubectl describe svc kubia

와 같은 describe 명으로 서비스 확인 가능

 

get endpoints로 endpoint 정보 확인 가능

$ kubectl get endpoints kubia 

 

ㅁ 수동으로 Endpoint 설정

 

- Selector 없이 Service 생성

apiVersion: v1
kind: Service
metadata:
    name: external-service
spec:
    ports:
   - ports: 80

 

80으로 들어오는 연결을 처리하는 external-service를 정의

 

- Selector없이 Service를 위한 Endpoint Resource 생성

apiVersion: v1
kind: Endpoints
metadata:
    name: external-service
subsets:
    - addresses:
        - ip: 11.11.11.11
        - ip: 22.22.22.22
        ports:
        - port: 80

 

두 개의 외부 엔드포인트를 갖는 서비스를 사용하는 Pod

ㅁ 외부 Service를 위한 별칭 생성

apiVersion: v1
kind: Service
metadata:
    name: external-service
spec:
    type: ExternalName
    externalName: someapi.somecompany.com
    ports:
    - port: 80