创建客户端证书
GKE on Azure 使用 AzureClient 资源向 Azure 进行身份验证。创建客户端时,Google 会生成密钥对。您将公钥上传到 Azure Active Directory (Azure AD)。GKE Multi-Cloud API 使用 AzureClient 作为应用的服务主账号进行身份验证。
您可以使用同一 AzureClient 在同一 Google Cloud 项目中创建多个集群。如果您已有 AzureClient,请跳到创建 SSH 密钥对。
如需创建 AzureClient,请运行以下命令:
使用 Azure 租户和应用 ID 设置环境变量:
export SUBSCRIPTION_ID=$(az account show --query "id" --output tsv) export TENANT_ID=$(az account list \ --query "[?id=='${SUBSCRIPTION_ID}'].{tenantId:tenantId}" --output tsv) export APPLICATION_ID=$(az ad app list --all \ --query "[?displayName=='APPLICATION_NAME'].appId" --output tsv)
将
APPLICATION_NAME
替换为您在完成前提条件时使用的 Azure AD 应用名称。创建客户端:
gcloud container azure clients create CLIENT_NAME \ --location=GOOGLE_CLOUD_LOCATION \ --tenant-id="${TENANT_ID}" \ --application-id="${APPLICATION_ID}"
替换以下内容:
CLIENT_NAME
:AzureClient 的名称GOOGLE_CLOUD_LOCATION
:管理集群的受支持的 Google Cloud 区域,例如us-west1
从 AzureClient 获取证书并将其保存到环境变量:
CERT=$(gcloud container azure clients get-public-cert --location=GOOGLE_CLOUD_LOCATION \ CLIENT_NAME)
替换以下内容:
GOOGLE_CLOUD_LOCATION
CLIENT_NAME
将证书上传到 Azure AD 上的应用:
az ad app credential reset --id "${APPLICATION_ID}" --cert "${CERT}" --append
证书上传完毕并创建集群之前,请等待至少一分钟时间,以便证书可供使用。如果命令失败,您可以重试。