本页面介绍了管理员工作站配置文件中的字段。
生成配置文件模板
要为管理员工作站配置文件生成模板,您需要 gkeadm
工具。
要下载 gkeadm
命令行工具并使其可执行,请运行以下命令:
gsutil cp gs://gke-on-prem-release-public/gkeadm/1.4.3-gke.3/linux/gkeadm ./ chmod +x gkeadm
要生成模板,请运行以下命令:
./gkeadm create config --config=[OUTPUT_FILENAME]
其中 [OUTPUT_FILENAME] 是您为生成的模板选择的路径。如果省略此标志,则 gkeadm
将该文件命名为 admin-ws-config.yaml
,并将其放在当前目录中。
填写配置文件
在配置文件中,按照以下部分的说明输入字段值。
gcp
本部分包含已列入许可名单的服务帐号的相关信息。
gcp.whitelistedServiceAccountKeyPath
字符串。已列入许可名单的服务帐号的 JSON 密钥文件的路径。如需了解如何创建 JSON 密钥文件,请参阅已列入许可名单的服务帐号。例如:
gcp: whitelistedServiceAccountKeyPath: "my-key-folder/whitelisted-key.json"
vCenter
本部分包含有关您的 vSphere 环境的信息。
vCenter.credentials.address
字符串。您的 vCenter 服务器的 IP 地址或主机名。
在填写 address
字段之前,请下载并检查您的 vCenter 服务器的服务证书。输入以下命令以下载证书并将其保存到名为 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 名称:
X509v3 Subject Alternative Name: DNS:vcenter.my-domain.example
选择 Subject
通用名称或 Subject Alternative Name
下的一个 DNS 名称,以在配置文件中用作 vcenter.credentials.address
的值。例如:
vCenter: credentials: address: "203.0.113.1" ...
vCenter: credentials: address: "my-host.my-domain.example" ...
vCenter.credentials.username
字符串。vCenter Server 用户帐号。用户帐号应具有 Administrator 角色或同等权限。请参阅 vSphere 要求。
例如:
vCenter: credentials: username: "administrator@vsphere.local"
vCenter.credentials.password
字符串。vCenter Server 用户帐号的密码。例如:
vCenter: credentials: password: "#STyZ2T#Ko2o"
vCenter.datacenter
字符串。您的 vCenter 数据中心的名称。例如:
vCenter: datacenter: "MY-DATACENTER"
vCenter.datastore
字符串。vCenter 数据存储区的名称。例如:
vCenter: datastore: "MY-DATASTORE"
vCenter.cluster
字符串。您的 vCenter 集群的名称。例如:
vCenter: cluster: "MY-CLUSTER"
vCenter.network
字符串。要在其中创建管理员工作站的 vCenter 网络的名称。例如:
vCenter: network: "MY-VM-NETWORK"
vCenter.resourcePool
字符串。如果您使用的是非默认资源池,请提供您的 vCenter 资源池的名称。例如:
vCenter: resourcePool: "MY-POOL"
如果您使用的是默认资源池,请提供以下值:
vCenter: resourcePool: "[MY_CLUSTER]/Resources"
其中,[MY_CLUSTER] 是您的 vCenter 集群的名称。
请参阅为独立主机指定根资源池。
vCenter.caCertPath
字符串。当客户端(如 GKE On-Prem)向您的 vCenter 服务器发送请求时,服务器必须通过提供证书或证书软件包来向客户端证明其身份。为了验证证书或软件包,GKE On-Prem 必须具有信任链中的根证书。
将 vCenter.caCertPath
设置为根证书的路径。例如:
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"
VMware 安装的证书授权机构 (CA) 会向您的 vCenter 服务器颁发证书。信任链中的根证书是由 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 downloads.zip
如果首次解压缩命令无效,请再次输入该命令。
在 certs/lin
中可找到证书文件。
proxyUrl
字符串:如果用于运行 gkeadm
的机器使用代理服务器访问互联网,请将此字段设置为代理服务器的网址。例如:
proxyUrl: "https://my-proxy.example.local"
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 为单位)。 我们建议至少使用 50 GB。例如:
adminWorkstation: diskGB: 50
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
字符串。如果您的网络在代理服务器后端,并且您希望管理员工作站和 GKE On-Prem 集群使用同一个代理服务器,请将 adminworkstation.proxyURL
设置为代理服务器的网址。例如:
adminworkstation: proxyUrl: "http://aw-proxy.example"
adminWorkstation.ntpServer
字符串。您的管理员工作站应使用的网络时间协议服务器的主机名或 IP 地址。例如:
adminWorkstation: ntpServer: "216.239.35.0"
如果您将此字段留空,则 GKE On-Prem 使用 "ntp.ubuntu.com"
。
已完成配置文件的示例
以下是已完成的管理员工作站配置文件的示例:
gcp: whitelistedServiceAccountKeyPath: "my-key-folder/whitelisted-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"