이 페이지에서는 맞춤 허용 오차 및 라벨을 적용하여 GKE 연결 클러스터에서 Google 소유 시스템 구성요소를 맞춤설정하는 방법을 설명합니다. 이러한 구성요소를 맞춤설정하면 환경 내에서 이러한 구성요소가 작동하는 위치와 방식을 더 정확하게 관리할 수 있습니다.
개요
클러스터를 Google Cloud에 연결하면 기본적으로 Google 소유 시스템 구성요소에는 허용차와 같은 맞춤설정 가능한 필드가 포함되지 않습니다. 따라서 사용 가능한 노드에 포드를 예약하지 못하는 등의 문제가 발생하여 전체 클러스터 연결 및 기능에 영향을 미칠 수 있습니다. 또한 조직 및 운영 목적으로 맞춤 라벨을 적용하는 기능을 포함하여 특정 노드에 구성요소를 배치하고 관리하는 기능을 제어해야 할 수도 있습니다.
시스템 구성요소를 맞춤설정하면 이러한 문제가 해결되고 클러스터에서 이러한 구성요소가 작동하는 방식을 더 세부적으로 제어하고 유연하게 관리할 수 있습니다. Google 소유 시스템 구성요소에 맞춤 허용 및 라벨을 적용할 수 있습니다.
톨러레이션을 사용하면 Google 구성요소가 특정 Kubernetes taint가 있는 노드에 예약할 수 있으므로 워크로드 분리를 적용하거나 특수 노드 풀을 사용할 수 있습니다. 맞춤 톨러레이션은 수정할 수 없는 테인트로 인해 구성요소가 적절하게 배치되지 않는 문제를 직접 해결합니다.
라벨을 사용하면 자체 운영 표준에 따라 Google 시스템 구성요소를 유연하게 분류하고 식별할 수 있습니다. 맞춤 라벨을 사용하면 기존 모니터링, 로깅, 정책 시행 도구와 더 잘 통합할 수 있습니다.
제한 및 한도
다음 제한사항이 적용됩니다.
- 클러스터를 등록할 때만 맞춤 허용 오차 및 라벨을 추가할 수 있습니다.
- 클러스터에 최대 10개의 맞춤 허용 오차와 10개의 맞춤 라벨을 추가할 수 있습니다.
다음 라벨은 사용할 수 없습니다.
name
component
app
k8s.io
또는kubernetes.io
이 포함된 라벨(Kubernetes의 예약된 라벨에 속함)google
을 포함하는 라벨gke.io
을 포함하는 라벨
맞춤 허용차 추가
Google 소유 시스템 구성요소 포드에는 항상 다음 허용이 포함됩니다.
- key: components.gke.io/gke-managed-components
operator: Exists
맞춤 허용 오차를 지정하려면 gcloud container attached clusters register
명령어에 --system-component-tolerations
플래그를 추가합니다.
gcloud container attached clusters register CLUSTER_NAME \
--location=GOOGLE_CLOUD_REGION \
...
--system-component-tolerations=COMPONENT_TOLERATION \
다음을 바꿉니다.
- CLUSTER_NAME: 클러스터 이름입니다.
- GOOGLE_CLOUD_REGION: 클러스터를 관리할 Google Cloud 리전입니다.
COMPONENT_TOLERATION: 추가할 허용 오차를 쉼표로 구분한 목록입니다. 다음 형식으로 키, 값, 연산자, 효과를 제공할 수 있습니다.
Equal
연산자:key=value:operator:effect
형식을 사용합니다(예:workload=hpc:Equal:NoSchedule
). 이 설정은 taint의 키와 값이 정확히workload=hpc
인 경우에만 포드가 taint를 허용한다는 의미입니다.Exists
연산자:key:operator:effect
형식을 사용합니다(예:workload:Exists:NoSchedule
). 이 설정은 값이 무엇이든 노드에workload
키가 있는 모든 taint를 Pod가 허용함을 의미합니다.- 모든 노드에서 예약:
:operator:effect
형식을 사용합니다(예::Exists:NoSchedule
). 이 설정은 포드가 효과가NoSchedule
인 노드의 모든 taint를 허용하고 taint의 키나 값을 무시한다는 의미입니다.
사용할 수 있는 연산자와 효과 목록은 Kubernetes 문서의 taint 및 톨러레이션(toleration)을 참고하세요.
맞춤 라벨 추가
맞춤 라벨을 지정하려면 gcloud container attached clusters register
명령어에 --system-component-labels
플래그를 추가합니다.
gcloud container attached clusters register CLUSTER_NAME \
--location=GOOGLE_CLOUD_REGION \
...
--system-component-labels=COMPONENT_LABEL \
다음을 바꿉니다.
- CLUSTER_NAME: 클러스터 이름입니다.
- GOOGLE_CLOUD_REGION: 클러스터를 관리할 Google Cloud 리전입니다.
- COMPONENT_LABEL: 추가할 하나 이상의 라벨이 쉼표로 구분된 목록입니다.
key=value
형식으로 라벨과 값을 제공합니다. 예를 들면env=production,region=us-east-1
입니다. 모든 라벨에는 키가 있어야 하지만 해당 키와 연결된 값은 비어 있을 수 있습니다. 예를 들면backend=""
입니다.
다음 단계
- Kubernetes 문서에서 taint 및 톨러레이션(toleration)에 대해 자세히 알아보세요.
- CNCF 호환 클러스터를 연결하는 방법을 알아보세요.