6.12. 验证 ML2/OVN 部署

在 Red Hat OpenStack Platform (RHOSP) 部署中验证 ML2/OVN 网络包括创建测试网络和子网,并执行诊断任务,如验证 specfic 容器是否正在运行。

先决条件

流程

  1. 创建测试网络和子网。

    NETWORK_ID=\
    $(openstack network create internal_network | awk '/\| id/ {print $4}')
    
    openstack subnet create internal_subnet \
    --network $NETWORK_ID \
    --dns-nameserver 8.8.8.8 \
    --subnet-range 192.168.254.0/24

    如果您遇到错误,请执行以下步骤。

  2. 验证相关容器是否在 Controller 主机上运行:

    1. 以具有访问 OVN 容器所需的权限的用户身份,登录 Controller 主机。

      示例

      $ ssh tripleo-admin@controller-0.ctlplane

    2. 输入以下命令:

      $ sudo podman ps -a --format="{{.Names}}"|grep ovn

      如以下示例所示,输出应列出 OVN 容器:

      输出示例

      container-puppet-ovn_controller
      ovn_cluster_north_db_server
      ovn_cluster_south_db_server
      ovn_cluster_northd
      ovn_controller

  3. 验证相关容器是否在 Compute 主机上运行:

    1. 以具有访问 OVN 容器的所需特权的用户身份登录计算主机。

      示例

      $ ssh tripleo-admin@compute-0.ctlplane

    2. 输入以下命令:

      $ sudo podman ps -a --format="{{.Names}}"|grep ovn

      如以下示例所示,输出应列出 OVN 容器:

      输出示例

      container-puppet-ovn_controller
      ovn_metadata_agent
      ovn_controller

  4. 检查日志文件是否有错误消息。

    grep -r ERR /var/log/containers/openvswitch/ /var/log/containers/neutron/
  5. 提供别名文件,以运行 OVN 数据库命令。

    更多信息请参阅 第 6.8 节 “为 OVN 故障排除命令创建别名”

    示例

    $ source ~/ovn-alias.sh

  6. 查询北向和南向数据库,以检查响应。

    # ovn-nbctl show
    # ovn-sbctl show
  7. 尝试从同一第 2 层网络上的 OVN 元数据接口 ping 实例。

    更多信息请参阅 第 6.5 节 “在 ML2/OVN 命名空间中执行基本 ICMP 测试”

  8. 如果您需要联系红帽以获取支持,请执行 Red Hat Solution 中描述的步骤,如何收集红帽支持所需的所有日志以调查 OpenStack 问题

其他资源