搜索

1.5.2.5. 删除了对 Microsoft Azure 的 mint 凭证的支持

download PDF

从 OpenShift Container Platform 4.7.47 开始,在 Microsoft Azure 集群上以 mint 模式使用 Cloud Credential Operator(CCO)的支持已从 OpenShift Container Platform 4.7 中删除。此更改的原因是 Microsoft 的 Azure AD Graph API 将于 2022 年 6 月 30 日停用,并被向后移植到 z-stream 更新中所有支持的 OpenShift Container Platform 版本。

对于在以前安装的使用 mint 模式的 Azure 集群,CCO 会尝试更新现有的 secret。如果 secret 包含之前 minted 应用程序注册服务主体的凭证,则会使用 kube-system/azure-credentials 中的 secret 的内容更新。这个行为和 passthrough 模式类似。

对于将凭证模式设置为默认值 "" 的集群,更新的 CCO 会自动从 mint 模式运行,以 passthrough 模式运行。如果您的集群将凭证模式明确设置为 mint 模式("Mint"),则必须将值改为 """Passthrough"

注意

除了 mint 模式所需的 Contributor 角色外,修改后的应用程序注册服务主体现在还需要用于 passthrough 模式的 User Access Administrator 角色。

虽然 Azure AD Graph API 仍然可用,但升级版 OpenShift Container Platform 的 CCO 会尝试清理之前 mint 的应用注册服务主体。在 Azure AD Graph API 之前升级集群可能会避免需要手动清理资源。

如果在 Azure AD Graph API 停用后,集群被升级到一个不再支持 mint 模式的 OpenShift Container Platform 版本,CCO 会在关联的 CredentialsRequest 上设置 OrphanedCloudResource 条件,但不会将相关错误视为是致命(fatal)错误。该条件包括与 unable to clean up App Registration / Service Principal: <app_registration_name> 类似的消息。在 Azure AD Graph API 停用后,清理需要使用 Azure CLI 工具或 Azure Web 控制台手动删除剩余的应用程序注册服务主体。

要手动清理资源,您必须找到并删除受影响的资源。

  1. 使用 Azure CLI 工具,通过运行以下命令从 OrphanedCloudResource 条件消息过滤使用 <app_registration_name> 的应用程序注册服务主体:

    $ az ad app list --filter "displayname eq '<app_registration_name>'" --query '[].objectId'

    输出示例

    [
      "038c2538-7c40-49f5-abe5-f59c59c29244"
    ]

  2. 运行以下命令来删除应用程序注册服务主体:

    $ az ad app delete --id 038c2538-7c40-49f5-abe5-f59c59c29244
注意

在手动清理资源后,OrphanedCloudResource 条件会保留,因为 CCO 无法验证资源是否已清理。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.