1.2. 为 Microsoft Azure 创建凭证
您需要一个凭证来使用 Red Hat Advanced Cluster Management for Kubernetes 控制台在 Microsoft Azure 或 Microsoft Azure Government 上创建和管理 Red Hat OpenShift Container Platform 集群。
需要的访问权限: Edit
注:这个过程是使用 Red Hat Advanced Cluster Management for Kubernetes 创建集群的先决条件。
1.2.1. 先决条件
创建凭证前必须满足以下先决条件:
- 已部署 Red Hat Advanced Cluster Management for Kubernetes hub 集群。
- 可通过互联网访问 Red Hat Advanced Cluster Management for Kubernetes hub 集群,以便它在 Azure 上创建 Kubernetes 集群
- Azure 登录凭证,其中包括您的基域资源组和 Azure Service Principal JSON。请参阅 azure.microsoft.com。
- 允许在 Azure 上安装集群的帐户权限。如需更多信息,请参阅如何配置 Cloud Services 和配置 Azure 帐户。
1.2.2. 使用控制台管理凭证
要从 Red Hat Advanced Cluster Management for Kubernetes 控制台创建凭证,请完成控制台中的步骤。从导航菜单开始。单击 Credentials 以从现有凭证选项中进行选择。提示: 为方便起见,同时为了提高安全性,创建一个命名空间,专门用于托管您的凭证。
- 可选:为您的凭证添加基本 DNS 域。如果您将基本 DNS 域添加到凭证中,则在使用此凭证创建集群时,会自动填充到正确的字段中。
-
选择集群的环境是
AzurePublicCloud
还是AzureUSrianCloud
。Azure 政府环境的设置有所不同,以确保正确设置了此设置。 - 为您的 Azure 帐户添加 基本域资源组名称。此条目是您使用 Azure 帐户创建的资源名称。您可以在 Azure 界面中选择 Home > DNS Zones 来查找您的基域资源组名称。请参阅使用 Azure CLI 创建 Azure 服务主体,以查找您的基域资源组名称。
在 Red Hat Advanced Cluster Management 中,为您的 客户端 ID 提供内容。当您使用以下命令创建服务主体时,这个值作为
appId
属性被生成:az ad sp create-for-rbac --role Contributor --name <service_principal>
将 service_principal 替换为您的服务主体名。
添加您的 客户端 Secret。当您使用以下命令创建服务主体时,这个值作为
password
属性被生成:az ad sp create-for-rbac --role Contributor --name <service_principal>
将 service_principal 替换为您的服务主体名。
添加您的 订阅 ID。这个值是以下命令输出中的
id
属性:az account show
添加您的租户 ID。这个值是以下命令输出中的
tenantId
属性:az account show
如果要启用代理,请输入代理信息:
-
HTTP 代理 URL:用作
HTTP
流量的代理的 URL。 -
HTTPS 代理 URL:用于
HTTPS
流量的安全代理 URL。如果没有提供值,则使用相同的值HTTP Proxy URL
,用于HTTP
和HTTPS
。 -
无代理域:应当绕过代理的以逗号分隔的域列表。使用一个句点 (
.
) 开始的域名,包含该域中的所有子域。添加星号 (*
) 以绕过所有目的地的代理。 - Additional trust bundle:访问镜像 registry 所需的证书文件内容。
-
HTTP 代理 URL:用作
- 输入您的 Red Hat OpenShift pull secret。您可以从 Pull secret 下载 pull secret。
- 添加用于连接到集群的 SSH 私钥和 SSH 公钥。您可以使用现有密钥对,或使用密钥生成程序创建新密钥对。请参阅生成 SSH 私钥并将其添加到代理中,以了解有关如何生成密钥的更多信息。
要创建使用此凭证的集群,您可以完成在 Microsoft Azure 上创建集群 中的步骤。
您可以在控制台中编辑凭证。
当您不再管理使用凭证的集群时,请删除凭证来保护凭证中的信息。选择要批量删除的 Actions,或者选择您要删除的凭证旁边的选项菜单。
1.2.3. 使用 API 创建不透明的 secret
要使用 API 而不是控制台为 Microsoft Azure 创建不透明 secret,请在类似以下示例的 YAML preview 窗口中应用 YAML 内容:
kind: Secret metadata: name: <managed-cluster-name>-azure-creds namespace: <managed-cluster-namespace> type: Opaque data: baseDomainResourceGroupName: $(echo -n "${azure_resource_group_name}" | base64 -w0) osServicePrincipal.json: $(base64 -w0 "${AZURE_CRED_JSON}")
注: 在您选择的受管集群命名空间中创建不透明 secret。Hive 使用 opaque secret 来置备集群。当使用 Red Hat Advanced Cluster Management 控制台置备集群时,您预先创建的凭证将复制到受管集群命名空间中,作为 opaque secret。