你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

升级 Active Directory 连接器

本文介绍如何升级 Active Directory 连接器。

先决条件

在继续完成本文中的任务之前,你需要:

  • 连接到 Kubernetes 群集并进行身份验证
  • 已选择现有 Kubernetes 上下文
  • directindirect 模式部署 Azure Arc 数据控制器
  • 部署 Active Directory 连接器

安装工具

要升级 Active Directory 连接器 (adc),需要安装 Kubernetes 工具,如 kubectl。

本文中的示例使用 kubectl,但如果你熟悉 Kubernetes 仪表板、oc 或等其他 Kubernetes 工具和 Kubernetes yaml/json,也可通过这些工具使用类似方法。

安装 kubectl 工具

限制

Active Directory 连接器的自动升级适用于 ImageTag v1.12.0_2022-10-11 及更高版本,并且 ARC 数据控制器必须至少为 v1.11.0_2022-09-13 版本。

在升级数据控制器之前,Active Directory 连接器 (adc) 的版本必须与数据控制器的版本相同。

目前没有可用的批处理升级过程。

升级以前版本的 Active Directory 连接器

对于 ImageTag 版本 v1.11.0_2022-09-13 或更低版本,必须手动升级 Active Directory 连接器,如下所示:

使用 kubectl 命令查看 yaml 中的现有规范。

kubectl get adc <adc-name> --namespace <namespace> --output yaml

运行 kubectl 修补程序以更新所需版本。

kubectl patch adc <adc-name> --namespace <namespace> --type merge --patch '{"spec": {"update": {"desiredVersion": "v1.11.0_2022-09-13"}}}'

监视

可以使用 kubectl 监视升级进度,如下所示:

kubectl describe adc <adc-name> --namespace <namespace>

输出

该命令的输出将显示资源信息。 升级信息将显示在“状态”中。

在升级过程中,State 将显示 UpdatingRunning Version 将是当前版本:

Status:
  Last Update Time:     2022-09-20T16:01:48.449512Z
  Observed Generation:  1
  Running Version:      v1.10.0_2022-08-09
  State:                Updating

升级完成后,State 将显示 ReadyRunning Version 将是新版本:

Status:
  Last Update Time:     2022-09-20T16:01:54.279612Z
  Observed Generation:  2
  Running Version:      v1.11.0_2022-09-13
  State:                Ready

疑难解答

当所需版本设置为特定版本时,引导程序作业将尝试升级到该版本,直到它成功为止。 如果升级成功,则规范的 RunningVersion 属性将更新为新版本。 对于映像标记不正确、无法连接到注册表或存储库、分配给容器的 CPU 或内存不足或存储不足等情况,升级可能会失败。

  1. 运行以下命令,查看是否有任何 Pod 显示 Error 状态或具有较高重启次数:

    kubectl get pods --namespace <namespace>
    
  2. 若要查看事件以了解是否存在错误,请运行

    kubectl describe pod <pod name> --namespace <namespace>
    
  3. 若要获取 Pod 中的容器列表,请运行

    kubectl get pods <pod name> --namespace <namespace> -o jsonpath='{.spec.containers[*].name}*'
    
  4. 若要获取容器的日志,请运行

    kubectl logs <pod name> <container name> --namespace <namespace>
    

若要查看常见错误以及如何对其进行故障排除,请转到对资源进行故障排除