Service Fabric 独立群集为你提供选择自己的环境的选项,并创建群集作为 Service Fabric 所采用的“任何 OS、任何云”方法的一部分。 在本系列教程中,我们将创建一个托管在 Azure VM 上的独立群集,并将应用程序安装到其中。
本教程是一个系列中的第一部分。 在本文中,我们将生成所需的 Azure VM 资源用于托管 Service Fabric 的独立群集。 在后续文章中,我们需要安装 Service Fabric 独立套件、将示例应用程序安装到群集,最后清理群集。
在该系列的第一部分中,你会学习如何:
- 创建一组 AzureVM 实例
- 修改安全组
- 登录到其中一个实例
- 准备 Service Fabric 的实例
先决条件
需要一个 Azure 订阅才能完成此教程。 如果你没有帐户,可以使用 Azure 门户创建一个帐户。
创建 Azure 虚拟机实例
登录 Azure 门户,选择“虚拟机”(而不是“虚拟机(经典)”) 。

选择”添加”按钮,这将打开“创建虚拟机”窗体 。
在“基本”选项卡上,确保选择你想选择的订阅和资源组(建议使用新资源组) 。
将“映像”类型更改为“Windows Server 2016 Datacenter” 。
将实例“大小”更改为“标准 DS2 v2” 。 设置一个管理员用户名和密码,记下它们的内容 。
暂时将“入站端口规则”保留为“已阻止”;我们将在下一节中配置它们 。
在“网络”选项卡上,创建一个新虚拟网络并记下其名称 。
接下来,将“NIC 网络安全组”设置为“高级” 。 创建新的安全组,记下其名称,并创建以下规则以允许来自任何源的 TCP 流量:

- 端口
3389,适用于 RDP 和 ICMP(基本连接)。 - 端口
19000-19003,适用于 Service Fabric。 - 端口
19080-19081,适用于 Service Fabric。 - 端口
8080,适用于 web 浏览器请求。
提示
若要在 Service Fabric 中将虚拟机连接到一起,托管基础结构的 VM 需有相同的凭据。 可通过两种常用方法获取一致的凭据:将所有 VM 加入同一个域,或者在每个 VM 上设置相同的管理员密码。 幸运的是,Azure 支持同一虚拟网络上所有虚拟机轻松连接,因此我们肯定能在同一网络上拥有我们的所有实例 。
- 端口
添加另一个规则。 将源设置为“服务标记”,并将源服务标记设置为“VirtualNetwork” 。 Service Fabric 需要为群集内通信打开以下端口:135、137-139、445、20001-20031、20606-20861。

其他选项可以接受默认状态。 如果你愿意,可以查看它们,然后启动你的虚拟机。
创建 Service Fabric 群集的更多实例
再启动两个虚拟机,确保与上一部分所述的设置相同 。 特别注意保持相同的管理员用户名和密码。 不应该重新创建虚拟网络和 NIC 网络安全组;选择你已从下拉菜单中创建的虚拟网络和 NIC 网络安全组 。 部署每个实例可能需要几分钟时间。
连接到实例
从“虚拟机”部分选择一个你的实例 。
在“概述”选项卡中,记下专用 IP 地址 。 然后单击“连接”。
在“RDP”选项卡中,注意我们使用的是之前特别设置为打开的公共 IP 地址和端口 3389 。 下载 RDP 文件。
打开 RDP 文件,并在出现提示时输入 VM 设置中提供的用户名和密码。
连接到实例后,你需要验证远程注册表是否已运行、启用 SMB,并为 SMB 和远程注册表打开所需的端口。
要启用 SMB,需要使用以下 PowerShell 命令:
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes若要在防火墙中打开端口,请使用以下 PowerShell 命令:
New-NetFirewallRule -DisplayName "Service Fabric Ports" -Direction Inbound -Action Allow -RemoteAddress LocalSubnet -Protocol TCP -LocalPort 135, 137-139, 445在其他实例中重复此过程,请再次记下专用 IP 地址。
验证设置
若要验证基本连接,使用 RDP 连接到一个 VM。
在 VM 中打开命令提示符,然后使用 ping 命令从一个 VM 连接到另一个 VM,将以下 IP 地址替换为先前记下的一个专用 IP 地址(不是你已经连接到 VM 的 IP) 。
ping 172.31.20.163如果类似于
Reply from 172.31.20.163: bytes=32 time<1ms TTL=128的输出重复出现四次,则表示实例之间的连接正常。现在,使用以下命令验证 SMB 共享功能是否正常工作:
net use * \\172.31.20.163\c$此命令应返回
Drive Z: is now connected to \\172.31.20.163\c$.作为输出。现在你的实例已为 Service Fabric 准备好。
后续步骤
本系列教程的第一篇文章介绍了如何启动三个 Azure VM 实例,并将其配置为用于 Service Fabric 安装:
- 创建一组 Azure VM 实例
- 修改安全组
- 登录到其中一个实例
- 准备 Service Fabric 的实例
请继续学习本系列教程的第二篇文章,了解如何在群集中配置 Service Fabric。