이 문서에서는 기존 클러스터에서 구성 파일 집합을 생성하는 방법을 보여줍니다.
클러스터를 만드는 한 가지 방법은 gkectl
명령줄 도구를 사용하는 것입니다. 먼저 클러스터의 구성 파일 집합을 만듭니다. 그리고 나서 다음 명령어 중 하나를 실행합니다.
gkectl create admin
: 관리자 클러스터 만들기gkectl create cluster
: 사용자 클러스터 만들기
시간이 경과하면 원래 구성 파일이 클러스터의 실제 상태와 동기화되지 않을 수 있습니다. 예를 들어 커스텀 리소스를 수정하여 클러스터를 업데이트하는 경우 원래 구성 파일에서 클러스터를 정확하게 나타내지 못할 수 있습니다.
클러스터를 만드는 또 다른 방법은 Google Cloud 콘솔을 사용하는 것입니다. 이 경우 클러스터 구성 파일이 없습니다. 나중에 클러스터를 업데이트할 수 있도록 클러스터 구성 파일이 필요할 수 있습니다.
원래 구성 파일이 클러스터와 동기화되지 않은 것으로 의심되거나 구성 파일이 없으면 gkectl get-config
명령어를 사용하여 클러스터의 현재 상태를 정확하게 나타내는 새로운 구성 파일 집합을 만들 수 있습니다.
다음에서 gkectl get-config
을 사용할 수 있습니다.
- 사용자 클러스터
- 관리자 클러스터
구성 파일 생성
사용자 클러스터의 새 구성 파일 집합을 생성하려면 다음 명령어를 실행합니다.
gkectl get-config cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --cluster-name USER_CLUSTER_NAME
다음을 바꿉니다.
ADMIN_CLUSTER_KUBECONFIG: 관리자 클러스터의 kubeconfig 파일 경로
USER_CLUSTER_NAME: 사용자 클러스터의 이름
관리자 클러스터의 새 구성 파일 집합을 생성하려면 다음 명령어를 실행합니다.
gkectl get-config admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --bundle-path BUNDLE
다음을 바꿉니다.
ADMIN_CLUSTER_KUBECONFIG: 관리자 클러스터의 kubeconfig 파일
BUNDLE: Google Distributed Cloud 번들 파일의 경로 번들 파일은 일반적으로
/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz
에 있는 관리 워크스테이션에 있습니다. 아직 번들 파일이 없으면 번들 파일을 다운로드할 수 있습니다.
기본적으로 생성된 구성 파일은 현재 디렉터리의 하위 디렉터리에 기록됩니다. 사용자 클러스터의 경우 출력 디렉터리 이름은 user-cluster-config-output
입니다. 관리자 클러스터의 경우 출력 디렉터리 이름은 admin-cluster-config-output
입니다.
생성된 파일을 다른 디렉터리에 저장하려는 경우 --output-dir
매개변수를 사용하여 출력 디렉터리의 경로를 지정하면 됩니다.
예를 들면 다음과 같습니다.
gkectl get-config cluster --kubeconfig my-kubeconfig \ --cluster-name my-cluster \ --output-dir /home/me/configuration/generated-files
기본 출력 디렉터리나 지정된 출력 디렉터리에 이미 파일이 있으면 새로 생성된 파일이 기존 파일을 대체하도록 --force
플래그를 포함해야 합니다. 그렇지 않으면 명령어가 실패합니다. 예를 들면 다음과 같습니다.
gkectl get-config cluster --kubeconfig my-kubeconfig \ --cluster-name my-cluster \ --output-dir /home/me/configuration/generated-files --force
관리자 클러스터용으로 생성된 파일
파일 이름 | 설명 |
---|---|
admin-cluster.yaml |
관리자 클러스터 구성 파일
항상 생성됨 |
admin-cluster-creds.yaml |
클러스터 사용자 인증 정보 파일
항상 생성됨 |
component-access-key.json |
구성요소 액세스 서비스 계정의 JSON 키 파일
항상 생성됨 |
vcenter-ca-cert.pem |
vCenter Server의 루트 인증서
항상 생성됨 |
admin-cluster-ipblock.yaml |
클러스터 노드의 IP 블록 파일
클러스터 노드에서 고정 IP 주소를 사용하는 경우에 생성됨 |
admin-seesaw-ipblock.yaml |
Seesaw VM의 IP 블록 파일
클러스터에서 Seesaw 부하 분산기를 사용하는 경우에 생성됨 |
connect-register-key.json |
연결 등록 서비스 계정의 JSON 키 파일
항상 생성됨 |
private-registry-ca.crt |
비공개 레지스트리 서버의 루트 인증서
클러스터에서 비공개 레지스트리를 사용하는 경우에 생성됨 |
stackdriver-key.json |
로깅 모니터링 서비스 계정의 JSON 키 파일
클러스터가 로그 및 측정항목을 Cloud Logging 및 Cloud Monitoring(클러스터 구성 파일의 stackdriver 섹션)으로 내보내도록 구성된 경우에 생성됨
|
audit-logging-key.json |
감사 로깅 서비스 계정의 JSON 키 파일
클러스터에서 Cloud 감사 로그를 사용하는 경우에 생성됨 |
사용자 클러스터용으로 생성된 파일
파일 이름 | 설명 |
---|---|
user-cluster.yaml |
사용자 클러스터 구성 파일
항상 생성됨 |
user-cluster-creds.yaml |
클러스터 사용자 인증 정보 파일
클러스터에서 준비된 사용자 인증 정보를 사용하지 않는 경우에 생성됨 |
vcenter-ca-cert.pem |
vCenter Server의 루트 인증서
항상 생성됨 |
user-cluster-ipblock.yaml |
클러스터 노드의 IP 블록 파일
클러스터 노드에서 고정 IP 주소를 사용하는 경우에 생성됨 |
user-seesaw-ipblock.yaml |
Seesaw VM의 IP 블록 파일
클러스터에서 Seesaw 부하 분산기를 사용하는 경우에 생성됨 |
private-registry-ca.crt |
비공개 레지스트리 서버의 루트 인증서
클러스터에서 비공개 레지스트리를 사용하는 경우에 생성됨 |
component-access-key.json |
구성요소 액세스 서비스 계정의 JSON 키 파일
클러스터에서 비공개 레지스트리를 사용하지 않는 경우에 생성됨 |
connect-register-key.json |
연결 등록 서비스 계정의 JSON 키 파일
항상 생성됨 |
stackdriver-key.json |
로깅 모니터링 서비스 계정의 JSON 키 파일
클러스터가 로그 및 측정항목을 Cloud Logging 및 Cloud Monitoring(클러스터 구성 파일의 stackdriver 섹션)으로 내보내도록 구성된 경우에 생성됨
|
audit-logging-key.json |
감사 로깅 서비스 계정의 JSON 키 파일
클러스터에서 Cloud 감사 로그를 사용하는 경우에 생성됨 |
usage-metering-key.json |
사용량 측정 서비스 계정의 JSON 키 파일
클러스터에서 사용 데이터를 BigQuery 데이터 세트에 저장하는 경우에 생성됨 |
secrets.yaml |
보안 비밀 구성 파일
클러스터에서 준비된 사용자 인증 정보를 사용하는 경우에 생성됨 이 파일을 생성하려면 gkectl get-config cluster 명령어에 --export-secrets-config 플래그를 포함해야 합니다.
|
sni-cert.pem |
Kubernetes API 서버의 추가 제공 인증서
클러스터가 서버 이름 표시(SNI)를 사용하도록 구성된 경우에 생성됨 |
sni-key.json |
추가 제공 인증서의 비공개 키 파일
클러스터가 SNI를 사용하도록 구성된 경우에 생성됨 |