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

节点网络配置

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

网络接口

当 Azure CycleCloud 为群集预配 Azure 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 地址和 VM 的 DNS 条目,该地址解析为 myuniquename.eastus.cloudapp.azure.com (,并 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指定,或者,如果省略,它将从节点上的 input-endpoints 节自动生成。 SecurityGroup 为接口指定的将替代为输入终结点创建的自动 nsg。 除非指定了特定 SecurityGroup 值,否则所有接口都将从输入终结点定义中获取自动 nsg。

节点数组中的Input-Endpoints

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

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

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

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

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

注意

节点启动 AssociatePublicIpAddress后,它将保留该 IP,直到删除节点或群集。