type: ClusterIP
서비스다.type: ClusterIP
서비스를 생성하면 쿠버네티스 클러스터 내부에서만 통신 가능한, Internal Network에 생성되는 가상 IP가 할당된다.매니페스트 예시
apiVersion: v1
kind: Service
metadata:
name: sample-clusterip
spec:
type: ClusterIP
ports:
- name: "http-port"
protocol: "TCP"
port: 8080
targetPort: 80
selector:
app: sample-app
type: ClusterIP
를 지정하면 ClusterIP 서비스를 생성할 수 있다.spec.ports[].port
에는 ClusterIP에서 수신할 포트 번호를 지정하고, spec.ports[].targetPort
는 목적지 컨테이너 포트 번호를 지정한다.애플리케이션에서 데이터베이스 서버를 지정하는 경우에는 기본적으로 쿠버네티스 서비스에 등록된 클러스터 내부 DNS 레코드를 사용하여 호스트를 지정하는 것이 바람직하다.
IP 주소로 지정해야 하는 경우 ClusterIP를 정적으로 지정할 수도 있다.
spec.clusterIP
를 지정하여 설정할 수 있다.
apiVersion: v1
kind: Service
metadata:
name: sample-clusterip-vip
spec:
type: ClusterIP
clusterIP: 10.3.251.194
ports:
- name: "http-port"
protocol: "TCP"
port: 8080
targetPort: 80
selector:
app: sample-app