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 通

下一篇:计算功能测试

相关推荐
CJY6217 小时前
k8spod管理
云原生·容器·kubernetes
NJCloud11 小时前
OpenStack(五)——进阶篇之虚拟机镜像封装与云主机发布实践
openstack
gx234811 小时前
控制器管理
docker·容器·kubernetes
sryyd_0216 小时前
Kubernetes Pod 管理从入门到实战:命令、YAML 与生命周期全解析
云原生·容器·kubernetes
暴力求解17 小时前
Linux网络---NAT代理服务、内网穿透
linux·网络·智能路由器
NJCloud19 小时前
OpenStack(四)——进阶篇之私有网络配置与块存储服务(Cinder)部署
linux·网络·云计算·openstack
凤山老林21 小时前
Spring Boot 3.x 集成 Spring Cloud Kubernetes:原生服务发现、配置注入与优雅下线
spring boot·spring cloud·kubernetes
Eloudy21 小时前
路由器与交换电路的非必须关系
智能路由器
mister_guo1 天前
Docker、Docker Compose 与 Kubernetes:分别解决什么问题?
docker·容器·kubernetes
AugustSkys1 天前
云原生运维实战:ETCD 分布式存储集群运维、Kubernetes 高可用集群部署与版本平滑升级
运维·kubernetes