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 通

下一篇:计算功能测试

相关推荐
island13141 小时前
CANN Catlass 算子模板库深度解析:高性能 GEMM 架构、模板元编程与融合算子的显存管理策略
人工智能·神经网络·架构·智能路由器
CS创新实验室14 小时前
《计算机网络》深入学:从自治系统内部到全球互联
计算机网络·考研·智能路由器·协议·408
迎仔14 小时前
02-网络硬件设备详解:从大喇叭到算力工厂的进化
网络·智能路由器
人间打气筒(Ada)18 小时前
k8s:CNI网络插件flannel与calico
linux·云原生·容器·kubernetes·云计算·k8s
江畔何人初19 小时前
pod的内部结构
linux·运维·云原生·容器·kubernetes
苦逼IT运维1 天前
从 0 到 1 理解 Kubernetes:一次“破坏式”学习实践(一)
linux·学习·docker·容器·kubernetes
腾讯云开发者1 天前
言出法随 -- Chaterm如何通过ASR精准操作K8S
云原生·容器·kubernetes
伟大的大威1 天前
NVIDIA DGX Spark (ARM64/Blackwell) Kubernetes 集群 + GPU Operator 完整部署指南
大数据·spark·kubernetes
only_Klein1 天前
kubernetes Pod 通信过程演示
网络·kubernetes·tcpdump