NSX Controller 是一个高级分布式状态管理系统,它提供了控制层面功能以实现 NSX 逻辑交换和路由功能。它充当网络内所有逻辑交换机的中央控制点,并维护所有主机、逻辑交换机 (VXLAN) 和分布式逻辑路由器的相关信息。如果您计划部署 1) 分布式逻辑路由器或 2) 单播或混合模式下的 VXLAN,则需要控制器。

无论 NSX 部署的大小如何,VMware 都要求每个 NSX Controller 群集包含三个控制器节点。其他的控制器节点数量不受支持。

前提条件

  • 在部署 NSX Controller 之前,必须部署 NSX Manager 设备并向 NSX Manager 注册 vCenter。

  • 确定控制器群集的 IP 池设置,包括网关和 IP 地址范围。DNS 设置是可选设置。NSX Controller IP 网络必须具有与 NSX Manager 以及 ESXi 主机上的管理接口的连接。

过程

  1. 在 vCenter 中,导航到主页 > 网络和安全 > 安装,然后选择管理选项卡。

    例如:

  2. 在“NSX Controller 节点”部分,单击添加节点 (添加) 图标。
  3. 输入适用于您环境的 NSX Controller 设置。

    应将 NSX Controller 部署到不基于 VXLAN 并连接到 NSX Manager、其他控制器和主机(通过 IPv4)的 vSphere 标准交换机或 vSphere Distributed Switch 端口组。

    例如:

  4. 如果尚未为您的控制器群集配置 IP 池,请立即通过单击新建 IP 池配置一个。

    如果需要,单个控制器可以位于单独的 IP 子网中。

    例如:

  5. 键入并再次键入控制器的密码。
    注:

    密码中不得包含用户名作为子字符串。任何字符不得连续重复 3 次或以上。

    该密码必须至少为 12 个字符,且必须遵循以下 4 个规则中的 3 个:

    • 至少一个大写字母

    • 至少一个小写字母

    • 至少一个数字

    • 至少一个特殊字符

  6. 在完全部署第一个控制器后,部署其他两个控制器。

    必须具有三个控制器。我们建议配置 DRS 反关联性规则以防止控制器位于相同的主机上。

结果

成功部署后,控制器将处于正常状态并显示绿色选中标记。

通过 SSH 连接到每个控制器,并确保可以 ping 主机管理接口 IP 地址。如果 ping 操作失败,请确保所有控制器都具有正确的默认网关。要查看控制器路由表,请运行 show network routes 命令。要更改控制器默认网关,请运行 clear network routes 命令,随后运行 add network default-route <IP-address> 命令。

运行以下命令以验证控制器群集是否按预期运行。

  • show control-cluster status

    Type                Status                                       Since
    --------------------------------------------------------------------------------
    Join status:        Join complete                                05/04 02:36:03
    Majority status:    Connected to cluster majority                05/19 23:57:23
    Restart status:     This controller can be safely restarted      05/19 23:57:12
    Cluster ID:         ff3ebaeb-de68-4455-a3ca-4824e31863a8
    Node UUID:          ff3ebaeb-de68-4455-a3ca-4824e31863a8
    
    Role                Configured status   Active status
    --------------------------------------------------------------------------------
    api_provider        enabled             activated
    persistence_server  enabled             activated
    switch_manager      enabled             activated
    logical_manager     enabled             activated
    directory_server    enabled             activated
    

    对于“加入”状态,请验证控制器节点是否正在报告“加入完成”。

    对于“多数”状态,请验证控制器是否已连接到群集中的多数节点。

    对于群集 ID,群集中的所有控制器节点应具有相同的群集 ID。

    对于“已配置”状态和“活动”状态,请验证是否所有控制器角色均已启用并激活。

  • show control-cluster roles

    
                              Listen-IP  Master?    Last-Changed  Count
    api_provider         Not configured      Yes  06/02 08:49:31      4
    persistence_server              N/A      Yes  06/02 08:49:31      4
    switch_manager            127.0.0.1      Yes  06/02 08:49:31      4
    logical_manager                 N/A      Yes  06/02 08:49:31      4
    directory_server                N/A      Yes  06/02 08:49:31      4
    
    

    一个控制器节点将为每个角色的主节点。在此示例中,一个节点为所有角色的主节点。

    如果某个角色的主 NSX Controller 实例失败,则群集会从可用的 NSX Controller 实例中为该角色选择一个新的主实例。

    NSX Controller 实例位于控制层面上,因此 NSX Controller 故障不会影响数据层面流量。

  • show control-cluster connections

    role                port            listening open conns
    --------------------------------------------------------
    api_provider        api/443         Y         2
    --------------------------------------------------------
    persistence_server  server/2878     Y         2
                        client/2888     Y         1
                        election/3888   Y         0
    --------------------------------------------------------
    switch_manager      ovsmgmt/6632    Y         0
                        openflow/6633   Y         0
    --------------------------------------------------------
    system              cluster/7777    Y         0
    
    

    此命令显示群集内部的通信状态。

    控制器群集多数前导者会侦听端口 2878(如“listening”列中的“Y”所示)。其他控制器节点在端口 2878 的“listening”列中将显示短划线 (-)。

    在所有 3 个控制器节点上,会侦听所有其他端口。

    “open conns”列显示控制器节点与其他控制器节点之间打开的连接的数量。在 3 节点控制器群集中,控制器节点最多只有 2 个打开的连接。

下一步做什么

小心:

当控制器状态为正在部署时,请勿在您的环境中添加或修改逻辑交换机或分布式路由。另外,不要继续进行主机准备过程。在向控制器群集添加新的控制器后,所有控制器都将在短时间(不超过 5 分钟)内处于非活动状态。在此停机期间,任何与控制器相关的操作(例如,主机准备)都可能导致出现意外结果。即使主机准备可能看上去成功完成,但 SSL 证书可能无法正确建立,因此会导致 VXLAN 网络中出现问题。

如果您需要删除部署的控制器,请参见NSX 管理指南中的“从 NSX Controller 故障恢复”。

在第一次部署 NSX Controller 节点的主机上,NSX 会启用自动虚拟机启动/关机。如果控制器节点虚拟机后来被迁移到其他主机,则新的主机可能不会启用自动虚拟机启动/关机。因此,VMware 建议您检查群集中的所有主机,以确保启用了自动虚拟机启动/关机。请参见http://pubs.vmware.com/vsphere-60/index.jsp?topic=%2Fcom.vmware.vsphere.vm_admin.doc%2FGUID-5FE08AC7-4486-438E-AF88-80D6C7928810.html