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

Azure Stack Edge 2407 发行说明

适用于:对于 Pro GPU SKU 是必需的Azure Stack Edge Pro - GPU对于 Pro 2 SKU 是必需的Azure Stack Edge Pro 2对于 Pro R SKU 是必需的Azure Stack Edge Pro R对于 Mini R SKU 是必需的Azure Stack Edge Mini R

以下发行说明明确了 2407 版 Azure Stack Edge 设备的重要未结问题和已解决问题。 与 Azure Stack Edge 的特定模型相对应的功能和问题会在适当的位置进行调用。

发行说明会持续进行更新,并且会陆续将所发现的需要解决的重要问题添加到说明中。 在部署设备之前,请仔细查看本发行说明中包含的信息。

本文适用于 Azure Stack Edge 2407 版本,该版本对应软件版本 3.2.2754.1029

警告

在此版本中,需要先将数据包核心版本更新到 AP5GC 2308,然后才能更新到 Azure Stack Edge 2407。 有关详细步骤,请参阅 Azure 专用 5G 核心 2308 发行说明。 如果在更新到封包核心 2308.0.1 之前更新到 Azure Stack Edge 2407,将遇到系统全面中断。 在这种情况下,必须在 Azure Stack Edge 设备上删除并重新创建 Azure Kubernetes 服务群集。 每次更改 Kubernetes 工作负载配置文件时,系统都会提示你更新 Kubernetes。 继续并应用更新。

支持的更新路径

若要应用 2407 更新,设备必须运行版本 2403 或更高版本。

  • 如果未运行所需的最低版本,则会看到此错误:

    无法安装更新包,因为它的依赖项不满足。

  • 可以从 2303 或更高版本更新到 2403,然后更新到 2407。

可以使用以下更新路径更新到最新版本:

Azure Stack Edge 软件和 Kubernetes 的当前版本 更新到 Azure Stack Edge 软件和 Kubernetes 理想的 2407 更新
2303 2403 2407
2309 2403 2407
2312 2403 2407
2403 直接连接 2407

新增功能

2407 版本具有以下新功能和增强功能:

  • Kubernetes 节点的基本 OS 更新。

  • Kubernetes 节点的 OpenSSH 版本更新。

  • Azure Stack Edge Kubernetes v1.28。

  • Azure Arc for Kubernetes v1.16.10。

  • 弃用了对 Ubuntu 18.04 LTS GPU 扩展的支持。 在 Azure Stack Edge 设备上运行的 Ubuntu 18.04 GPU VM 上不再支持 GPU 扩展。 如果计划使用 Ubuntu 版本 18.04 LTS 发行版,请参阅 CUDA Toolkit 12.1 Update 1 下载的手动 GPU 驱动程序安装步骤。

    安装之前,可能需要下载 CUDA 签名密钥。

    有关安装签名密钥的详细步骤,请参阅排查 Azure Stack Edge Pro GPU 上的 GPU VM 的 GPU 扩展问题

本版本中的已知问题

否。 功能 问题 解决方法/备注
1 VM 创建 如果使用 2403 之前版本的 Azure Stack Edge 创建了市场映像,然后使用现有市场映像创建 VM,则你的 VM 创建会失败,因为 Azure Stack Edge 2407 更改了市场映像的下载路径。 删除市场映像,然后从 Azure 门户创建新映像。 有关详细步骤,请参阅排查 VM 创建问题

以前版本中的已知问题

下表总结了以前发行版中遗留的已知问题。

错误。 功能 问题 解决方法/备注
1 Azure Stack Edge Pro + Azure SQL 创建 SQL 数据库需要管理员访问权限。 执行以下步骤,而不是 Create-the-sql-database 中的步骤 1-2。
1.在设备的本地 UI 中,启用计算接口。 选择“计算”>“端口号”>“启用计算”>“应用”
2.从 SQL 命令实用工具中下载 sqlcmd 至你的客户端计算机。
3.连接到计算接口 IP 地址(已启用的端口),在地址末尾添加“,1401”。
4.最终命令将类似于:sqlcmd -S {Interface IP},1401 -U SA -P "Strong!Passw0rd"。 完成此操作后,当前文档中的步骤 3-4 应相同。
2. 刷新 不支持对通过刷新还原的 blob 进行增量更改 对于 Blob 终结点,刷新后对 blob 进行部分更新可能导致更新无法上传到云中。 例如这样的一系列操作:
1. 在云中创建 blob。 或从设备删除之前上传的 blob。
2. 使用刷新功能,将 blob 从云中刷新到设备。
3. 使用 Azure SDK REST API 仅更新部分 blob。 这些操作可能导致 blob 已更新的部分不在云中更新。
规避方法:使用 robocopy 等工具,或者通过资源管理器或命令行进行常规文件复制,替换整个 blob。
3. 限制 在限制期间,如果不允许对设备执行新写入,NFS 客户端写入会失败并出现“权限被拒绝”错误。 错误如下所示:
hcsuser@ubuntu-vm:~/nfstest$ mkdir test
mkdir:无法创建目录“test”:权限被拒绝
4. Blob 存储引入 使用 AzCopy 版本 10 进行 Blob 存储引入时,请使用以下参数运行 AzCopy:Azcopy <other arguments> --cap-mbps 2000 如果没有为 AzCopy 提供这些限制,前者可能会将大量请求发送到设备,导致服务出现问题。
5. 分层存储帐户 使用分层存储帐户时,以下内容适用:
- 仅支持块 blob。 不支持页 blob。
- 不提供快照或复制 API 支持。
- 不支持通过 distcp 引入 Hadoop 工作负载,因为它会大量使用复制操作。
6. NFS 共享连接 如果将多个进程复制到相同的共享,并且未使用 nolock 属性,则可能会在复制过程中出现错误。 必须将 nolock 属性传递给 mount 命令,才能将文件复制到 NFS 共享。 例如:C:\Users\aseuser mount -o anon \\10.1.1.211\mnt\vms Z:
7. Kubernetes 群集 在运行 kubernetes 群集的设备上应用更新时,Kubernetes 虚拟机将重启并重新引导。 在这种情况下,更新后只会自动还原使用指定副本部署的 pod。 如果在未指定副本集的情况下在复制控制器之外创建了单独的 pod,则在设备更新后,不会自动还原这些 pod。 必须还原这些 Pod。
副本集会替换因任何原因(例如节点故障或中断性节点升级)而删除或终止的 pod。 由此,即使你的应用程序只需要一个 pod,仍建议使用副本集。
8. Kubernetes 群集 只有 Helm v3 或更高版本支持 Azure Stack Edge Pro 上的 Kubernetes。 有关详细信息,请参阅常见问题解答:删除 Tiller
9. Kubernetes 端口 31000 保留给 Kubernetes 仪表板。 端口 31001 保留给 Edge 容器注册表。 同样,在默认配置中,IP 地址 172.28.0.1 和 172.28.0.10 分别保留用于 Kubernetes 服务和核心 DNS 服务。 不要使用保留的 IP。
10. Kubernetes Kubernetes 当前不允许多协议 LoadBalancer 服务。 例如,需要同时侦听 TCP 和 UDP 的 DNS 服务。 若要使用 MetalLB 解决 Kubernetes 的这一限制,可在同一 pod 选择器上创建两个服务(一个用于 TCP,一个用于 UDP)。 这些服务使用相同的共享密钥和 spec.loadBalancerIP 来共享相同的 IP 地址。 如果服务数多于可用 IP 地址数,还可以共享 IP。
有关详细信息,请参阅 IP 地址共享
11. Kubernetes 群集 现有 Azure IoT Edge 市场模块可能需要经过修改才能在 Azure Stack Edge 设备上的 IoT Edge 中运行。 有关详细信息,请参阅在 Azure Stack Edge Pro GPU 设备上运行 Azure Stack Edge Pro FPGA 设备中的现有 IoT Edge 模块
12. Kubernetes Azure Stack Edge 设备上的 Kubernetes 上的 Azure IoT Edge 不支持基于文件的绑定装载。 IoT Edge 使用转换层将 ContainerCreate 选项转换为 Kubernetes 构造。 创建到 hostpath 目录的 Binds 映射,使得基于文件的绑定安装不能绑定到 IoT Edge 容器中的路径。 尽可能映射父目录。
13. Kubernetes 如果你为 IoT Edge 自带证书,并在设备上配置了计算后将这些证书添加到 Azure Stack Edge 设备上,则不会提取新证书。 若要解决此问题,应在设备上配置计算之前上传证书。 如果已配置计算,请连接到设备的 PowerShell 界面并运行 IoT Edge 命令。 重新启动 iotedgededgehub pod。
14. 证书 在某些情况下,本地 UI 中的证书状态可能需要几秒钟才能更新。 本地 UI 中的以下场景可能会受到影响。
- “证书”页上的“状态”列。
- “入门”页上的“安全性”磁贴。
- “概览”页上的“配置”磁贴。
15. 证书 即使上传新的签名链证书,与签名链证书相关的警报也不会从门户中删除。
16. Web 代理 不支持基于 NTLM 身份验证的 Web 代理。
17. Internet Explorer 如果启用了增强的安全性功能,则可能无法访问本地 Web UI 页面。 禁用增强的安全性,并重新启动浏览器。
18. Kubernetes Kubernetes 在 .NET 应用程序使用的环境变量名称中不支持“:”。 这也是事件网格 IoT Edge 模块在 Azure Stack Edge 设备和其他应用程序上运行时所必需的。 有关详细信息,请参阅 ASP.NET 核心文档 将“:”替换为双下划线。 有关详细信息,请参阅 Kubernetes 问题
19. Azure Arc + Kubernetes 群集 默认情况下,从 Git 存储库中删除资源 yamls 时,不会从 Kubernetes 群集中删除相应的资源。 若要允许从 git 存储库删除资源时同时删除群集中的相应资源,请在 Arc OperatorParams 中设置 --sync-garbage-collection。 有关详细信息,请参阅删除配置
20. NFS 那些使用设备上的 NFS 共享装载来写入数据的应用程序应使用独占写入。 这可确保数据写入磁盘。
21. 计算配置 如果网络配置中的网关或交换机或路由器为网络上不存在的系统响应地址解析协议 (ARP) 请求,计算配置在网络配置中会失败。
22. 计算和 Kubernetes 如果先在设备上设置了 Kubernetes,它会声明获取所有可用 GPU。 因此在设置 Kubernetes 后就无法使用 GPU 创建 Azure 资源管理器 VM 了。 如果设备有 2 个 GPU,可以先创建 1 个使用 GPU 的 VM,然后再配置 Kubernetes。 在这种情况下,Kubernetes 将使用剩余可用的一个 GPU。
23. 自定义脚本 VM 扩展 在早期版本中创建的 Windows VM 存在一个已知问题,并且设备已更新为 2103。
如果在这些虚拟机上添加自定义脚本扩展,Windows VM 来宾代理(仅限版本 2.7.41491.901)会在更新中停滞,导致扩展部署超时。
若要解决此问题,请执行以下操作:
1.使用远程桌面协议 (RDP) 连接到 Windows VM。
2.确保 waappagent.exe 正在计算机上运行:Get-Process WaAppAgent
3.如果 waappagent.exe 未在运行,请重启 rdagent 服务:Get-Service RdAgent | Restart-Service。 等待 5 分钟。
4.在 waappagent.exe 正在运行时,终止 WindowsAzureGuest.exe 进程。
5.在终止该进程后,该进程会使用较新的版本再次开始运行。
6.使用此命令来验证 Windows VM 来宾代理版本是否为 2.7.41491.971:Get-Process WindowsAzureGuestAgent | fl ProductVersion
7.在 Windows VM 上设置自定义脚本扩展
24. 多进程服务 (MPS) 在更新设备软件和 Kubernetes 群集时,不会为工作负载保留 MPS 设置。 重新启用 MPS 并重新部署曾经使用 MPS 的工作负载。
25. WLAN 在此版本中,Wi-Fi 在 Azure Stack Edge Pro 2 上不起作用。
26. Azure IoT Edge Azure Stack Edge 上的托管 Azure IoT Edge 解决方案目前在已终止服务的较旧过时 IoT Edge 运行时上运行。 有关详细信息,请参阅 IoT Edge v1.1 生命周期终止:这对我来说意味着什么?。 解决方案虽然不会在服务终止后便失效,但已没有更新计划。 若要在 Azure Stack Edge 上运行具有最新更新和功能的最新版本 Azure IoT Edge LTS,建议部署在 Linux VM 上运行的客户自托管 IoT Edge 解决方案。 有关详细信息,请参阅 将工作负载从 Azure Stack Edge 上的托管 IoT Edge 移动到 Linux VM 上的 IoT Edge 解决方案
27. Azure Stack Edge 上的 AKS 在此版本中,一旦在 Azure Stack Edge 群集上部署了 AKS 群集,便无法再修改虚拟网络。 若要修改虚拟网络,需要删除 AKS 群集,然后修改虚拟网络,然后再在 Azure Stack Edge 上重新创建 AKS 群集。
28. AKS 更新 如果其中一个 AKS VM 未运行,AKS Kubernetes 更新可能会失败。 双节点群集中可能会出现此问题。 如果 AKS 更新失败,请连接到设备的 PowerShell 接口。 通过运行 Get-VM cmdlet 来检查 Kubernetes VM 的状态。 如果 VM 已关闭,请运行 Start-VM cmdlet 来重启 VM。 在 Kubernetes VM 正常运行后,重新应用更新。
29. WLAN Azure Stack Edge Mini R 的 Wi-Fi 功能已弃用。
30. Azure 存储资源管理器 由 Azure Stack Edge 设备自动生成的 Blob 存储终结点证书可能无法搭配 Azure 存储资源管理器正常工作。 替换 Blob 存储终结点证书。 有关详细步骤,请参阅自带证书
31. 网络连接 在包含端口 1 和端口 2 的组合虚拟交换机的双节点 Azure Stack Edge Pro 2 群集上,如果端口 1 或端口 2 链接已关闭,可能需要长达 5 秒的时间才能在剩余的活动端口上恢复网络连接。 如果 Kubernetes 群集使用此组合虚拟交换机管理流量,Pod 通信可能会中断长达 5 秒。
32. 虚拟机 主机或 Kubernetes 节点池 VM 关闭后,节点池 VM 中的 kubelet 可能由于 CPU 静态策略错误而无法启动。 节点池 VM 显示“未就绪”状态,不会在此 VM 上计划 Pod。 输入技术支持会话并用 ssh 登录到节点池 VM,然后执行“更改 CPU 管理器策略”中的步骤以修正 kubelet 服务。

后续步骤