OpenStack on Kubernetes 生产部署实战(十四)

网络功能测试

本文介绍 OpenStack 网络功能的完整测试方案。

系列导航

上一篇:Horizon 管理控制台 | 下一篇:计算功能测试


一、测试准备

1.1 环境检查

bash 复制代码
# 检查网络代理状态
openstack network agent list

# 确保所有 Agent 状态为 UP

二、外部网络测试

2.1 创建外部网络

bash 复制代码
openstack network create --external \
  --provider-network-type flat \
  --provider-physical-network external \
  external-net

openstack subnet create --network external-net \
  --subnet-range 172.16.10.0/24 \
  --gateway 172.16.10.1 \
  --allocation-pool start=172.16.10.100,end=172.16.10.200 \
  external-subnet

2.2 验证外部网络

bash 复制代码
openstack network show external-net
openstack subnet show external-subnet

三、租户网络测试

3.1 创建租户网络

bash 复制代码
openstack network create tenant-net

openstack subnet create --network tenant-net \
  --subnet-range 192.168.100.0/24 \
  --gateway 192.168.100.1 \
  --dns-nameserver 8.8.8.8 \
  tenant-subnet

3.2 验证租户网络

bash 复制代码
openstack network list
openstack subnet list

四、路由器测试

4.1 创建路由器

bash 复制代码
openstack router create tenant-router
openstack router add subnet tenant-router tenant-subnet
openstack router set --external-gateway external-net tenant-router

4.2 验证路由器

bash 复制代码
openstack router show tenant-router
openstack router list

五、浮动 IP 测试

5.1 创建浮动 IP

bash 复制代码
openstack floating ip create external-net

5.2 绑定浮动 IP

bash 复制代码
# 创建测试虚拟机
openstack server create --flavor m1.tiny --image cirros --network tenant-net test-vm

# 绑定浮动 IP
FIP=$(openstack floating ip list -f value -c "Floating IP Address" | head -1)
openstack server add floating ip test-vm $FIP

5.3 测试连通性

bash 复制代码
ping $FIP

六、安全组测试

6.1 配置安全组

bash 复制代码
# 允许 ICMP
openstack security group rule create --proto icmp default

# 允许 SSH
openstack security group rule create --proto tcp --dst-port 22 default

6.2 验证安全组

bash 复制代码
openstack security group rule list default

七、VXLAN 隧道测试

7.1 检查隧道

bash 复制代码
kubectl exec -n openstack <ovs-pod> -- \
  ovs-vsctl show | grep vxlan

7.2 测试跨节点通信

创建两个虚拟机在不同计算节点,测试互通性。


八、测试脚本

bash 复制代码
#!/bin/bash
# network-test.sh

echo "=== 网络功能测试 ==="

# 1. 检查网络代理
echo "[1/6] 检查网络代理"
AGENTS_UP=$(openstack network agent list -f value -c Alive | grep -c ":-)")
echo "UP Agents: $AGENTS_UP"

# 2. 创建网络
echo "[2/6] 创建测试网络"
openstack network create test-net
openstack subnet create --network test-net --subnet-range 192.168.200.0/24 test-subnet

# 3. 创建路由器
echo "[3/6] 创建路由器"
openstack router create test-router
openstack router add subnet test-router test-subnet

# 4. 创建虚拟机
echo "[4/6] 创建虚拟机"
openstack server create --flavor m1.tiny --image cirros --network test-net test-vm
sleep 30

# 5. 分配浮动 IP
echo "[5/6] 分配浮动 IP"
FIP=$(openstack floating ip create external-net -f value -c floating_ip_address)
openstack server add floating ip test-vm $FIP

# 6. 测试连通性
echo "[6/6] 测试连通性"
ping -c 3 $FIP

echo "=== 测试完成 ==="

九、测试结果

测试项 预期结果 实际结果
网络代理状态 12/12 UP
外部网络创建 成功
租户网络创建 成功
路由器创建 成功
浮动 IP 分配 成功
网络连通性 可 ping 通

下一篇:计算功能测试

相关推荐
Waay1 小时前
图文详解|K8s Pod内部结构
docker·云原生·kubernetes
码点滴2 小时前
CRI-O选型与容器运行时标准
开发语言·人工智能·架构·kubernetes·cri-o
sdszoe49225 小时前
H3C网络基础实验准备
网络·智能路由器·h3c网络基础
minji...6 小时前
Linux 网络基础之网络IP层(十二)路由、路由表,分片和组装
linux·网络·tcp/ip·智能路由器·路由表·ip分片
牛奶咖啡138 小时前
k8s容器编排技术实践——OpenEuler安装部署k8s
kubernetes·信创·containerd配置加速器·openeuler安装k8s·k8s的常见安装方式·彻底关闭swap·工作节点使用kubectl
老码观察8 小时前
K8s 容器化部署的宿主机资源规划的踩坑实录
docker·容器·kubernetes
密瓜智能8 小时前
HAMi 正式接入 Kubernetes DRA:下一代 GPU 资源模型实践指南
云原生·容器·kubernetes
roman_日积跬步-终至千里8 小时前
【系统架构师-综合题(9)】 计算机网络知识点
计算机网络·系统架构·智能路由器
俊哥工具8 小时前
解决网速卡顿、断网、网络报错,万能网络修复工具教程
网络·python·django·计算机外设·智能路由器·pygame
泰晶科技9 小时前
【时钟元件:路由器的“隐形指挥家”】
智能路由器