适用于 Internet 服务提供商的 Microsoft 连接缓存 (早期预览版)
重要提示
本文档适用于 Microsoft 连接缓存 (早期预览版) 。 适用于 ISP 的 Microsoft 连接缓存现已推出公共预览版 - 对于我们的早期预览版客户,我们强烈建议你将缓存节点迁移到我们的公共预览版。 请参阅下面 有关如何迁移的说明 。
概述
Microsoft 连接的缓存 (MCC) 预览版是一种纯软件缓存解决方案,可在运营商网络中提供 Microsoft 内容。 MCC 可以根据需要部署到任意数量的物理服务器或 VM,并从云门户进行管理。 Microsoft 云服务处理使用者设备到缓存服务器的路由,以便进行内容下载。
Microsoft 连接缓存是一个混合应用程序,它混合了本地和云资源。 它由部署到服务器的 Docker 兼容 Linux 容器和云管理门户组成。 Microsoft 选择 Azure IoT Edge 作为安全可靠的控制平面。 有关IoT Edge的详细信息,请参阅附录。 即使你的方案与 IoT 无关,Azure IoT Edge也是我们安全的 Linux 容器部署和管理基础结构。
MCC 的工作原理
以下步骤介绍了如何预配和使用 MCC:
Azure 管理门户用于创建和管理 MCC 节点。
shell 脚本用于预配服务器和部署 MCC 应用程序。
Azure 管理门户和 shell 脚本的组合用于配置 Microsoft 传递优化服务,以将流量路由到 MCC 服务器。
在门户中配置了服务器的可公开访问 IPv4 地址。
手动路由: 提供表示客户端 IP 地址空间的 CIDR 块,这些空间应路由到 MCC 节点。
BGP 路由: shell 脚本用于启动与运营商网络中路由器的对等互连会话,操作员与 MCC 节点启动会话。
注意
目前仅支持 IPv4 地址。 输入 IPv6 地址将导致错误。
Microsoft 最终用户设备 (客户端) 定期与 Microsoft 传递优化服务连接,并且服务将客户端的 IP 地址与相应 MCC 节点的 IP 地址相匹配。
Microsoft 客户端对 MCC 节点中的内容发出范围请求。
MCC 节点从 CDN 获取内容,为其存储在磁盘上的本地缓存种子,并将内容传送到客户端。
来自最终用户设备的后续内容请求将从缓存提供。
如果 MCC 节点不可用,客户端将从 CDN 获取内容,以确保订阅者服务不间断。
MCC 的 ISP 要求
适用于 Internet 服务提供商的 Microsoft 连接缓存现已推出公共预览版! 若要开始,请访问 Azure 门户 注册适用于 Internet 服务提供商的 Microsoft 连接缓存。 有关注册和载入要求的详细信息,请参阅 Microsoft 连接缓存的操作员 注册和服务载入。
验证 MCC 服务器是否正常运行
验证客户端
登录到连接的缓存服务器或使用 SSH。 从终端运行以下命令,查看正在运行的模块 (容器) :
sudo iotedge list
如果它列出了 edgeAgent 和 edgeHub 容器,但不包括 MCC,请使用 命令查看IoT Edge安全管理器的状态:
sudo journalctl -u iotedge -f
例如,此命令提供容器的启动和停止或容器拉取和启动的当前状态:
验证服务器端
部署容器可能需要几分钟时间。
若要验证 MCC 正常运行,请在缓存服务器的终端或网络中的任何设备中运行以下命令。 将 替换为 <CacheServerIP>
缓存服务器的 IP 地址。
wget http://<CacheServerIP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com
以下屏幕截图显示了成功的测试结果:
同样,在网络上任何设备上的 Web 浏览器中输入以下 URL:
http://<CacheServerIP>/mscomtest/wuidt.gif?cacheHostOrigin=au.download.windowsupdate.com
如果测试失败,有关详细信息,请参阅 常见问题 部分。
常见问题
注意
本部分仅列出常见问题。 有关配置IoT Edge时可能遇到的其他问题的详细信息,请参阅IoT Edge故障排除指南。
使用以下命令检查IoT Edge日志:
sudo journalctl -u iotedge -f
需要配置 DNS
运行以下IoT Edge安装状态检查:
sudo iotedge check --verbose
如果发现端口 5671、443 和 8883 出现问题,IoT Edge设备需要更新 Docker 的 DNS。
若要将设备配置为使用 DNS,请使用以下步骤:
使用
ifconfig
查找相应的 NIC 适配器名称。ifconfig
运行
nmcli device show <network adapter name>
以显示以太网适配器的 DNS 名称。 例如,若要显示 eno1 的 DNS 信息,nmcli device show eno1
打开或创建用于配置 DNS 服务器的 Docker 配置文件。
sudo nano /etc/docker/daemon.json
将以下字符串粘贴到 daemon.json 文件中,并包含相应的 DNS 服务器地址。 例如,在上一张屏幕截图中,
IP4.DNS[1]
为10.50.10.50
。{ "dns": ["x.x.x.x"]}
将更改保存到daemon.json。 如果需要更改对此文件的权限,请使用以下命令:
sudo chmod 555 /etc/docker/daemon.json
重启 Docker 以选取新的 DNS 设置。 然后重启IoT Edge。
sudo systemctl restart docker sudo systemctl daemon-reload sudo restart IoTEdge
将 MCC 迁移到公共预览版
注意
请注意,如果重新启动服务器,当前所在的版本将不再有效,之后需要迁移到新版本。
建议立即迁移到新版本,以访问这些权益,并确保不会停机。
若要迁移,请使用以下步骤:
- 导航到要迁移的缓存节点,并使用页面顶部的按钮 选择“下载迁移包 ”。
- 按照 Azure 门户 中“连接的缓存迁移脚本”部分下的说明进行操作。
- 转到https://portal.azure.com并导航到资源,检查迁移的缓存节点。
卸载 MCC
在安装程序 zip 文件中,你将找到 文件 uninstallmcc.sh。此脚本卸载 MCC 和所有相关组件。 在运行此脚本之前,请联系 MCC 团队。 仅在遇到 MCC 安装问题时运行它。
警告
在运行此脚本之前请谨慎。 它还将擦除此 VM 中的现有 IoT 工作流。
uninstallmcc.sh 脚本删除以下组件:
- IoT Edge
- Edge 代理
- Edge Hub
- MCC
- Moby CLI
- Moby 引擎
若要运行脚本,请使用以下命令:
sudo chmod +x uninstallmcc.sh
sudo ./uninstallmcc.sh
附录
获取 Azure 订阅 ID 的步骤
- 登录到Azure 门户。
- 选择“ 订阅”。 如果未看到 “订阅”,请在搜索栏中键入 “订阅 ”。 开始键入时,列表会根据输入进行筛选。
- 如果已有 Azure 订阅,请跳到步骤 5。 如果没有 Azure 订阅,请选择左上角的“ + 添加 ”。
- 选择“ 即用即付 ”订阅。 系统会要求你输入信用卡信息,但不会因使用 MCC 服务而向你收费。
- 在 “订阅 ”页上,可以找到有关当前订阅的详细信息。 选择订阅名称。
- 选择订阅名称后,会在“ 概述 ”选项卡中找到订阅 ID。选择“订阅 ID”旁边的“ 复制到剪贴板” 图标以复制该值。
虚拟环境中的 MCC 性能
在虚拟环境中,缓存服务器出口峰值约为 1.1 Gbps。 如果要在虚拟环境中最大化出口,请务必更改以下两个设置:
在以下三个位置启用 SR-IOV :
- MCC VM 的 BIOS
- MCC VM 的网络卡属性
- MCC VM 的虚拟机监控程序
Microsoft 发现这些设置在使用Microsoft Hyper-V部署时传出量翻倍。
在 BIOS 中启用“高性能”,而不是节能。 Microsoft 发现此设置在Microsoft Hyper-V部署中几乎翻了一番。
授予其他用户管理 MCC 的权限
可以授予更多用户管理 Microsoft 连接缓存的权限,即使他们没有 Azure 帐户也是如此。 在门户中创建第一个缓存节点后,可以将其他用户添加为 Microsoft 连接缓存资源组和 Microsoft 连接缓存资源的 所有者 。
有关如何将其他用户添加为所有者的详细信息,请参阅使用 Azure 门户授予用户对 Azure 资源的访问权限。 请确保对 MCC 资源和 MCC资源组执行此操作。
在 Windows Server 上设置 VM
可以使用本机运行 Ubuntu 20.04 LTS 的硬件,也可以运行 Ubuntu VM。 以下步骤介绍如何在 Hyper-V 上设置 VM。
下载 ISO。 可以使用 Ubuntu Desktop 或 Ubuntu Server。
在 Hyper-V 中启动 “新建虚拟机向导 ”。
指定名称并选择位置。
选择“ 第 2 代”。 以后无法更改此设置。
指定启动内存。
选择网络适配器连接。
设置虚拟硬盘参数。 应为 OS 和要缓存的内容指定足够的空间。 例如,
1024
GB 为 1 TB。从可启动映像文件选择“安装 OS”,并浏览到之前下载的 ISO for Ubuntu 20.04 LTS。
查看设置并选择“ 完成 ”以创建 Ubuntu VM。
在启动 Ubuntu VM 之前,请禁用 安全启动 并将多个核心分配给 VM。
在 Hyper-V 管理器中, 打开 VM 的设置。
选择“ 安全性”。 禁用 “启用安全启动”选项。
选择“ 处理器”。 增加虚拟处理器的数量。 此示例显示
12
,但配置可能会有所不同。
启动 VM 并选择“ 安装 Ubuntu”。
选择默认语言。
选择用于安装更新和第三方硬件的选项。 例如,下载更新并安装第三方软件驱动程序。
选择 “擦除磁盘”并安装 Ubuntu。 如果已安装以前版本的 Ubuntu,建议擦除并安装 Ubuntu 16.04。
查看有关将更改写入磁盘的警告,然后选择“ 继续”。
选择时区。
选择键盘布局。
指定你的名称、计算机名称、用户名和强密码。 选择“ 需要我的密码才能登录”选项。
提示
在 Linux 中,所有内容都区分大小写。
若要完成安装,请选择“ 立即重启”。
计算机重启后,使用用户名和密码登录。
重要提示
如果显示升级可用,请选择“ 不升级”。
Ubuntu VM 现在已准备好安装 MCC。
IoT Edge运行时
Azure IoT Edge运行时在IoT Edge设备上启用自定义和云逻辑。 运行时位于 IoT Edge 设备上,执行管理和通信操作。 运行时执行以下功能:
- (设备上的 Docker 容器) 安装和更新工作负载。
- 维护设备上的 Azure IoT Edge安全标准。
- 确保 (Docker 容器) IoT Edge模块始终运行。
- 报表模块 (Docker 容器) 运行状况到云进行远程监视。
- 管理IoT Edge设备和云之间的通信。
有关 Azure IoT Edge的详细信息,请参阅 Azure IoT Edge 文档。
相关文章
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈