이 페이지에서는 Google Distributed Cloud용 관리자 워크스테이션 구성 파일의 필드를 설명합니다.
구성 파일 템플릿 생성
gkeadm
명령줄 도구를 다운로드합니다.
템플릿을 생성하는 방법은 다음과 같습니다.
./gkeadm create config --config=OUTPUT_FILENAME
OUTPUT_FILENAME
을 생성된 템플릿에 대해 선택한 경로로 바꿉니다. 이 플래그를 생략하면 gkeadm
은 파일 이름을 admin-ws-config.yaml
로 지정하고 현재 디렉터리에 넣습니다.
템플릿
구성 파일 작성
구성 파일에 다음 섹션에 설명된 대로 필드 값을 입력합니다.
gcp
이 섹션에는 구성요소 액세스 서비스 계정에 대한 정보가 포함되어 있습니다.
gcp.componentAccessServiceAccountKeyPath
문자열. 구성요소 액세스 서비스 계정의 JSON 키 파일 경로입니다. JSON 키 파일 만들기에 대한 자세한 내용은 구성요소 액세스 서비스 계정을 참조하세요.
예를 들면 다음과 같습니다.
gcp: componentAccessServiceAccountKeyPath: "my-key-folder/component-access-key.json"
vCenter
이 섹션에서는 사용자의 vSphere 환경에 대한 정보를 제공합니다.
vCenter.credentials.address
문자열. vCenter Server의 IP 주소 또는 호스트 이름입니다.
address
필드를 입력하기 전에 vCenter Server의 사용 중인 인증서를 다운로드하여 검사합니다. 다음 명령어를 입력하여 인증서를 다운로드하고 vcenter.pem
이라는 파일로 저장합니다.
true | openssl s_client -connect VCENTER_IP:443 -showcerts 2>/dev/null | sed -ne '/-BEGIN/,/-END/p' > vcenter.pem
VCENTER_IP
를 vCenter Server의 IP 주소로 바꿉니다.
인증서 파일을 열어서 제목 일반 이름 및 제목 대체 이름을 확인합니다.
openssl x509 -in vcenter.pem -text -noout
결과에 Subject
일반 이름(CN)이 표시됩니다. 이 이름은 IP 주소이거나 호스트 이름일 수 있습니다. 예를 들면 다음과 같습니다.
Subject: ... CN = 203.0.113.100
Subject: ... CN = my-host.my-domain.example
결과의 Subject Alternative Name
아래에는 DNS 이름이 1개 이상 포함될 수도 있습니다.
X509v3 Subject Alternative Name: DNS:vcenter.my-domain.example
Subject
일반 이름을 선택하거나 Subject Alternative Name
아래에서 구성 파일의 vcenter.credentials.address
값으로 사용할 DNS 이름 중 하나를 선택합니다. 예를 들면 다음과 같습니다.
vCenter: credentials: address: "203.0.113.1" ...
vCenter: credentials: address: "my-host.my-domain.example" ...
vCenter.credentials.fileRef.path
문자열. vCenter 사용자 계정의 사용자 이름과 비밀번호가 포함된 사용자 인증 정보 구성 파일의 경로입니다. 사용자 계정에 관리자 역할 또는 이에 상응하는 권한이 있어야 합니다. vSphere 요구사항을 참조하세요.
gkeadm create config
를 실행하면 admin-ws-config.yaml
이라는 관리자 워크스테이션 구성 파일 템플릿이 생성됩니다. credential.yaml
이라는 사용자 인증 정보 구성 파일의 템플릿도 만듭니다.
예시:
vCenter: credentials: fileRef: path: "credential.yaml"
vCenter.credentials.fileRef.entry
문자열. vCenter 사용자 계정의 사용자 이름과 비밀번호가 포함된 사용자 인증 정보 구성 파일의 사용자 인증 정보 블록의 이름입니다.
credential.yaml
에서 gkeadm
은 vCenter
라는 사용자 인증 정보 블록을 자동으로 만듭니다.
예시:
vCenter: credentials: fileRef: entry: "vCenter"
vCenter.datacenter
문자열. vCenter 데이터 센터의 이름입니다. 예를 들면 다음과 같습니다.
vCenter: datacenter: "MY-DATACENTER"
vCenter.datastore
문자열. vCenter Datastore의 이름입니다. 예를 들면 다음과 같습니다.
vCenter: datastore: "MY-DATASTORE"
vCenter.cluster
문자열. vCenter 클러스터의 이름입니다. 예를 들면 다음과 같습니다.
vCenter: cluster: "MY-CLUSTER"
vCenter.network
문자열. 관리자 워크스테이션을 만들려는 vCenter 네트워크의 이름입니다. 예를 들면 다음과 같습니다.
vCenter: network: "MY-VM-NETWORK"
vCenter.folder
문자열. 클러스터 VM이 위치할 데이터 센터의 폴더입니다. 예를 들면 다음과 같습니다.
vCenter: folder: "MY-FOLDER"
vCenter.resourcePool
문자열. 기본이 아닌 리소스 풀을 사용하는 경우에는 vCenter 리소스 풀의 이름을 입력합니다. 예를 들면 다음과 같습니다.
vCenter: resourcePool: "MY-POOL"
기본 리소스 풀을 사용하는 경우 다음 값을 제공합니다.
vCenter: resourcePool: "MY_CLUSTER/Resources"
MY_CLUSTER
를 vCenter 클러스터의 이름으로 바꿉니다.
독립형 호스트의 루트 리소스 풀 지정을 참조하세요.
vCenter.caCertPath
문자열. Google Distributed Cloud와 같은 클라이언트가 vCenter 서버로 요청을 전송할 때 서버는 인증서 또는 인증서 번들을 제공하여 클라이언트에 해당 ID를 입증해야 합니다. 인증서 또는 번들을 확인하려면 Google Distributed Cloud의 신뢰 체인에 루트 인증서가 있어야 합니다.
vCenter.caCertPath
를 루트 인증서의 경로로 설정합니다. 예를 들면 다음과 같습니다.
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"
VMware 설치에는 vCenter Server에 인증서를 발급하는 인증 기관(CA)이 포함됩니다. 신뢰 체인의 루트 인증서는 VMware에서 생성된 자체 서명 인증서입니다.
기본값인 VMWare CA를 사용하지 않을 경우 다른 인증 기관을 사용하도록 VMware를 구성할 수 있습니다.
사용자의 vCenter 서버가 기본 VMware CA에서 발급한 인증서를 사용하는 경우 다음과 같이 인증서를 다운로드합니다.
curl -k "https://SERVER_ADDRESS/certs/download.zip" > download.zip
SERVER_ADDRESS
를 vCenter 서버의 주소로 바꿉니다.
unzip
명령어를 설치하고 인증서 파일의 압축을 풉니다.
sudo apt-get install unzip unzip download.zip
처음에 unzip 명령어가 작동하지 않으면 명령어를 다시 입력합니다.
certs/lin
에서 인증서 파일을 찾습니다.
proxyUrl
문자열: gkeadm
을 실행하는 데 사용하는 머신에서 프록시 서버를 사용하여 인터넷에 액세스하는 경우 이 필드를 프록시 서버의 URL로 설정합니다. 포트 번호가 스키마의 기본 포트와 동일하더라도 포함합니다. 예를 들면 다음과 같습니다.
proxyUrl: "https://my-proxy.example.local:80"
adminWorkstation
이 섹션에는 관리자 워크스테이션에 대한 정보가 포함되어 있습니다.
adminWorkstation.name
문자열. 관리자 워크스테이션의 이름입니다. 이 필드는 생성된 값으로 채워집니다. 생성된 값을 유지하거나 원하는 다른 이름으로 수정할 수 있습니다. 예를 들면 다음과 같습니다.
adminWorkstation name: "gke-admin-ws-200617-113711"
adminWorkstation.cpus
정수. 관리자 워크스테이션의 가상 CPU 수입니다. 예를 들면 다음과 같습니다.
adminWorkstation: cpus: 4
adminWorkstation.memoryMB
정수. 관리자 워크스테이션의 메모리 용량 수(MB)입니다. 예를 들면 다음과 같습니다.
adminworkstation: memoryMB: 8192
adminWorkstation.diskGB
정수. 관리자 워크스테이션 부팅 디스크의 크기(GB)입니다. 100GB 이상이 좋습니다. 예를 들면 다음과 같습니다.
adminWorkstation: diskGB: 100
adminWorkstation.dataDiskName
문자열. 홈 디렉터리에 마운트할 영구 디스크의 이름입니다.
이 필드는 생성된 값으로 채워집니다. 생성된 값을 유지하거나 원하는 이름을 제공할 수 있습니다. .vmdk
로 끝나야 합니다. 제공된 경로의 모든 디렉터리는 배포 전에 만들어야 합니다. 이 필드에 설정된 값이 없으면 기본값은 다음과 같습니다.
gke-on-prem-admin-workstation-data-disk/ADMIN_WORKSTATION_NAME-data-disk.vmdk
예를 들면 다음과 같습니다.
adminWorkstation: dataDiskName: "gke-on-prem-admin-workstation-data-disk/gke-admin-ws-200617-113711-data-disk.vmdk"
adminWorkstation.dataDiskMB
정수. 데이터 디스크의 크기(MB)입니다. 이 필드에 설정된 값이 없으면 기본값은 512
입니다. 예를 들면 다음과 같습니다.
adminWorkstation: dataDiskMB: 512
adminWorkstation.network.ipAllocationMode
문자열. 관리자 워크스테이션이 DHCP 서버에서 IP 주소를 가져오게 하려면 "dhcp"
로 설정합니다. 관리자 워크스테이션에서 원하는 고정 IP 주소를 사용하려면 "static"
으로 설정합니다. 예를 들면 다음과 같습니다.
adminWorkstation: network: ipAllocationMode: "static"
adminWorkstation.network.hostconfig
ipAllocationMode
를 "static"
으로 설정한 경우 이 섹션의 필드를 입력합니다.
ipAllocationMode
를 "dhcp"
로 설정한 경우 이 섹션을 삭제하거나 코멘트를 남깁니다.
adminWorkstation.network.hostConfig.ip
문자열. 관리자 워크스테이션의 IP 주소입니다. 예를 들면 다음과 같습니다.
adminWorkstation: network: hostconfig: ip: "172.16.5.1"
adminWorkstation.network.hostConfig.gateway
문자열. 관리자 워크스테이션이 포함된 네트워크의 기본 게이트웨이 IP 주소입니다. 예를 들면 다음과 같습니다.
adminWorkstation: network: hostconfig: gateway: "172.16.6.254"
adminWorkstation.network.hostConfig.netmask
문자열. 관리자 워크스테이션이 포함된 네트워크의 넷마스크입니다. 예를 들면 다음과 같습니다.
adminWorkstation: network: hostConfig: netmask: "255.255.248.0"
adminWorkstation.network.hostConfig.dns
문자열 배열. 관리자 워크스테이션에서 사용할 수 있는 DNS 서버의 IP 주소 배열입니다. 예를 들면 다음과 같습니다.
adminWorkstation: network: hostconfig: dns: - "172.16.255.1" - "172.16.255.2"
adminWorkstation.proxyUrl
문자열. 네트워크가 프록시 서버로 보호되는 상태에서 관리자 워크스테이션과 관리자 클러스터 모두 같은 프록시 서버를 사용하도록 하려면 adminworkstation.proxyURL
을 프록시 서버 URL로 설정합니다.
포트 번호가 스키마의 기본 포트와 동일하더라도 포함합니다. 예를 들면 다음과 같습니다.
adminworkstation: proxyUrl: "http://aw-proxy.example:80"
adminWorkstation.ntpServer
문자열. 관리자 워크스테이션에서 사용해야 하는 네트워크 시간 프로토콜 서버의 호스트 이름 또는 IP 주소입니다. 예를 들면 다음과 같습니다.
adminWorkstation: ntpServer: "216.239.35.0"
이 필드를 비워두면 Google Distributed Cloud에서 "ntp.ubuntu.com"
을 사용합니다.
완료된 구성 파일의 예시
다음은 완성된 관리자 워크스테이션 구성 파일의 예시입니다.
gcp: componentAccessServiceAccountKeyPath: "my-key-folder/component-access-key.json" vCenter: credentials: address: "203.0.113.1" username: "administrator.vsphere.local" password: "#STyZ2T#Ko2o" datacenter: "MY-DATACENTER" datastore: "MY-DATASTORE" cluster: "MY-CLUSTER" network: "MY-VM-NETWORK" resourcePool: "MY-POOL" caCertPath: "/usr/local/google/home/me/certs/the-root.cert" proxyUrl: "" adminWorkstation: name: "my-admin-workstation" cpus: 4 memoryMB: 8192 diskGB: 50 dataDiskName: "gke-on-prem-admin-workstation-data-disk/gke-admin-ws-200617-113711-data-disk.vmdk" dataDiskMB: 512 network: ipAllocationMode: "static" hostConfig: ip: "172.16.5.1" gateway: "172.16.6.254" netmask: "255.255.248.0" dns: - "172.16.255.1" - "172.16.255.2 proxyUrl: "" ntpServer: "216.239.35.0"