容器网络接口 (CNI) 插件、Open vSwitch (OVS) 和 NCP Docker 映像必须安装在 OpenShift 节点上。安装是通过运行 Ansible playbook 执行的。

注:

如果使用单个 playbook 安装 NCP 和 OpenShift,则不需要执行此步骤。请参见使用单个 Playbook 安装 NCP 和 OpenShift

playbook 包含为节点配置 NSX-T 资源的说明。您也可以手动配置 NSX-T Data Center 资源,如设置 NSX-T 资源中所述。perform_nsx_config参数指示在运行 playbook 时是否配置资源。

过程

  1. 更新 roles/ncp_prep/default/main.yamlroles/nsx_config/default/main.yaml 中的参数值,包括可从中下载 CNI 插件 RPM、OVS 及其相应的内核模块 RPM 的 URL。此外,uplink_port 是节点虚拟机上的上行链路端口 VNIC 的名称。其余变量与 NSX-T Data Center 管理层面配置有关。

    需要指定的参数:

    • perform_nsx_config:是否执行资源配置。如果手动完成配置,请将其设置为 false,将不会运行 nsx_config 脚本。

    • nsx_manager_ipNSX Manager 的 IP

    • nsx_edge_cluster_name:第 0 层路由器将使用的 Edge 群集的名称

    • nsx_transport_zone_name:覆盖网络传输区域的名称

    • os_node_name_list:以逗号分隔的节点名称列表

      例如 node1,node2,node3

    • subnet_cidr:管理员将分配给节点上的 br-int 的 IP CIDR 地址

    • vc_hostvCenter Server 的 IP 地址

    • vc_uservCenter Server 管理员的用户名

    • vc_passwordvCenter Server 管理员的密码

    • vms:以逗号分隔的虚拟机名称列表。顺序必须与 os_node_name_list 匹配。

    以下参数具有默认值。您可以根据需要进行修改。

    • nsx_t0_router_name:群集的第 0 层逻辑路由器的名称。默认值:t0

    • pod_ipblock_name:pod 的 IP 块的名称。默认值:podIPBlock

    • pod_ipblock_cidr:该 IP 块的 CIDR 地址。默认值:172.20.0.0/16

    • snat_ippool_name:SNAT 的 IP 块的名称。默认值为 externalIP

    • snat_ippool_cidr:该 IP 块的 CIDR 地址。默认值:172.30.0.0/16

    • start_range:为此 IP 池指定的 CIDR 起始 IP 地址。默认值:172.30.0.1

    • end_range:为此 IP 池指定的 CIDR 结束 IP 地址。默认值:172.30.255.254

    • os_cluster_name:OpenShift 群集的名称。默认值:occl-one

    • nsx_node_ls_name:连接到节点的逻辑交换机的名称。默认值:node_ls

    • nsx_node_lr_name:交换机 node_ls 的逻辑路由器的名称。默认值:node_lr

    nsx-config playbook 仅支持创建一个 IP 池和一个 IP 块。如果需要更多,则必须手动创建。

  2. 转到 openshift-ansible-nsx 目录并运行 ncp_prep 角色。
        ansible-playbook -i /PATH/TO/HOSTS/hosts ncp_prep.yaml

结果

playbook 包含执行以下操作的说明:

  • 下载 CNI 插件安装文件。

    文件名是 nsx-cni-1.0.0.0.0.xxxxxxx-1.x86_64.rpm,其中 xxxxxxx 是内部版本号。

  • 安装 CNI 插件安装文件。

    该插件安装在 /opt/cni/bin 中。CNI 配置文件 10.net.conf 将复制到 /etc/cni/net.d 中。该 rpm 还会为环回插件安装 /etc/cni/net.d/99-loopback.conf 配置文件。

  • 下载并安装 OVS 安装文件。

    这些文件为 openvswitch-2.9.1.xxxxxxx-1.x86_64.rpmopenvswitch-kmod-2.9.1.xxxxxxx-1.el7.x86_64.rpm,其中 xxxxxxx 是内部版本号。

  • 如果尚未创建 br-int 实例,请创建该实例。

        # ovs-vsctl add-br br-int

  • 将连接到节点逻辑交换机的网络接口 (node-if) 添加到 br-int 中。

  • 确保 br-intnode-if link 状态为 up。

        # ip link set br-int up
        # ip link set <node-if> up

  • 更新网络配置文件,以确保网络接口在重新引导后处于已启动状态。

  • 下载 NCP tar 文件并从 tar 文件加载 Docker 映像。

  • 下载 ncp-rbac yaml 文件并将 apiVersion 更改为 v1

  • NSX-T Data Center 中创建逻辑拓扑和相关资源并对其创建标记,以便它们可由 NCP 识别。

  • 使用 NSX-T Data Center 资源信息更新 ncp.ini

下一步做什么

安装 OpenShift 容器平台。请参见安装 OpenShift 容器平台