GKE(Google Kubernetes Engine)에서 Ingress를 이용하여 서비스를 외부로 노출할 때, External HTTP(S) Load Balancer를 생성합니다
Ingress 생성 시 backend로 지정한 서비스를 대상으로 NEG(Network Endpoint Group)가 생성되어 위에서 생성한 로드밸런서의 Backend Service로 지정합니다
이 때, 이 NEG가 각각의 endpoint에 대해서 수행하는 health check 규칙을 지정할 수 있습니다
이 문서에서는 health check를 규칙을 지정하는 방법을 설명합니다
이 문서는 GCP 공식문서 설명의 내용을 기반으로 작성되었습니다. 더 상세한 정보를 원하시는 경우 앞의 GCP 공식문서 설명을 참고하시기 바랍니다.
이 방법은 GKE에서 지원하는 BackendConfig CRD(Custom Resource Definition)를 이용하는 방법입니다.
설정 방법은
BackendConfig CRD생성
Service 생성 시 annotation을 이용하여 BackendConfig 지정
이렇게 두 단계로 이루어집니다
Ingress의 Backend에 지정된 Service를 대상으로 NEG가 생성될 때, annotation에 BackendConfig 정보가 있으면, 해당 BackendConfig에 선언된 정보를 바탕으로 생성됩니다
아래와 같은 형태로 BackendConfig를 생성합니다.
papiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
name: my-backendconfig