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

节点网络配置

Azure CycleCloud 群集节点附带了用于网络的默认设置。 可以在群集模板的节点定义部分更改这些设置。

网络接口

当 Azure CycleCloud 为群集创建 Azure VM 时,它会将虚拟网络接口附加到 VM。 对于虚拟机规模集,虚拟网络接口将连接到负载均衡器。

可以通过更改群集模板中节点的网络接口定义部分来配置节点的网络设置。

分配公共 IP 地址

AssociatePublicIpAddress将属性添加到节点,以指定节点是否应接收公共 IP 地址。 例如:

[[node scheduler]]
[[[network-interface eth0]]]
    AssociatePublicIpAddress = true

上述配置允许通过虚拟网络的网络安全组许可的端口对调度节点进行公共访问。

默认情况下,节点会获取一个动态公共 IP 地址,该地址每次启动群集时都会更改。 若要将静态公共 IP 地址分配给节点,请先 在 Azure 订阅中创建公共 IP 地址。 然后将该 PublicIP 属性添加到节点网络接口部分,并为其分配已创建的 PublicIP 对象的资源 ID。

[[node scheduler]]
[[[network-interface eth0]]]
    PublicIp = /subscriptions/${subscription_id/resourceGroups/${resource_group_name}/providers/Microsoft.Network/publicIPAddresses/${public-ip-name}

或者,在 Azure 订阅中创建网络接口,并将公共 IP 地址附加到该网络接口。 然后,在节点配置中指定网络接口 ID:

[[node scheduler]]
[[[network-interface eth0]]]
    NetworkInterfaceId = /subscriptions/${subscription_id/resourceGroups/${resource_group_name}/providers/Microsoft.Network/networkInterfaces/${network-interface-name}

分配公共 DNS 标签

通过 PublicDnsLabel 添加到公共网络接口,可以自定义该 IP 地址的 DNS 名称。

[[node scheduler]]
[[network-interface eth0]]
    AssociatePublicIpAddress = true
    PublicDnsLabel = myuniquename

通过上述配置,您将获得一个静态分配的公共 IP 地址,以及一个解析到myuniquename.eastus.cloudapp.azure.com的 DNS 条目(eastus与 VM 对应的 Azure 位置匹配)。

分配专用 IP 地址

默认情况下,虚拟机在 Azure 中获取动态分配的专用 IP 地址。 在某些情况下,需要固定节点的专用 IP 地址。 若要配置此选项,请使用群集配置的网络接口部分:

[[[network-interface eth0]]]
PrivateIp = x.x.x.x

指定的专用 IP 地址必须对关联的子网有效。 Azure 保留子网中的前四个 IP 和最后一个 IP。 无法手动将这些地址分配给节点。

网络安全组

Azure CycleCloud 在用户定义的虚拟网络和子网中预配虚拟机和虚拟机规模集。 与虚拟网络关联的网络安全组控制对节点上特定端口的访问。 有关详细信息,请参阅 虚拟网络文档

如果配置节点的网络接口使用AssociatePublicIpAddress = true或分配PublicIp,则节点会自动接收一个网络安全组。

可以使用 SecurityGroup 指定此网络安全组。 如果省略 SecurityGroup,则网络安全组会自动从节点上的 input-endpoints 部分生成。 你为接口指定的 SecurityGroup 会覆盖为 input-endpoints 创建的 auto-nsg。 除非指定 SecurityGroup,否则所有接口都会从 input-endpoint 定义中获取 auto-nsg。

节点数组中的输入终结点

[[nodearray execute]]
  [[[network-interface eth0]]]
    AssociatePublicIpAddress = true

  [[[input-endpoint SSH]]]
  PrivatePort = 22
  PublicPort = 10000

  [[[input-endpoint MyCustomPort]]]
  PrivatePort = 999
  PublicPort = 10999
  Protocol = tcp

上述配置允许对网络安全组允许的虚拟网络端口上的执行节点进行公共访问。 对于节点数组, PublicPort 是数组中节点的基端口号。 为节点数组保留的端口范围是每个终结点的 500 个端口。 终结点默认为 TCP 协议,但 UDP 也受设置 Protocol = UDP支持。 默认情况下,节点会获取一个动态公共 IP 地址,该地址每次启动群集时都会更改。 若要为节点分配静态公共 IP 地址,请在主接口的网络接口配置中添加 PublicIP

对于返回代理节点,如果未指定 AssociatePublicIpAddress,系统会自动创建公共 IP 地址。 如果设置为 AssociatePublicIpAddressFalse,则节点会失败并显示警告,并且不会为节点创建自动 nsg。

注释

当使用 AssociatePublicIpAddress 启动节点时,该节点将保留其 IP 地址,直到移除节点或群集。