OpenStack Zed环境中VPNaaS安装配置故障排查求助
OpenStack Zed VPNaaS 部署故障排查与解决
问题概述
部署OpenStack Zed环境,FWaaS配置正常,但VPNaaS安装后出现多类故障:
- 首次将
vpnaas加入service_plugins后,Neutron重启失败,报错找不到neutron.service_plugins的vpnaas驱动 - 安装
python3-neutron-vpnaas后,重启Neutron提示No providers specified for 'VPN' service - 移除FWaaS配置后Neutron可启动,但CLI无任何VPN相关命令
相关错误日志
初始驱动找不到错误
2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime [req-a32b0298-9d9f-49c9-a0fb-d914020d1edd - - - - -] Error loading class by alias: stevedore.exception.NoMatches: No 'neutron.service_plugins' driver found, looking for 'vpnaas' 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime Traceback (most recent call last): 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime File "/usr/lib/python3/dist-packages/neutron_lib/utils/runtime.py", line 113, in load_class_by_alias_or_classname 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime mgr = driver.DriverManager( 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime File "/usr/lib/python3/dist-packages/stevedore/driver.py", line 53, in __init__ 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime super(DriverManager, self).__init__( 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime File "/usr/lib/python3/dist-packages/stevedore/named.py", line 89, in __init__ 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime self._init_plugins(extensions) 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime File "/usr/lib/python3/dist-packages/stevedore/driver.py", line 112, in _init_plugins 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime raise NoMatches('No %r driver found, looking for %r' % 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime stevedore.exception.NoMatches: No 'neutron.service_plugins' driver found, looking for 'vpnaas' 2023-02-26 09:17:25.217 895152 ERROR neutron_lib.utils.runtime 2023-02-26 09:17:25.218 895152 ERROR neutron_lib.utils.runtime [req-a32b0298-9d9f-49c9-a0fb-d914020d1edd - - - - -] Error loading class by class name: ValueError: Empty module name
安装python3-neutron-vpnaas后错误
2023-03-04 16:45:48.055 277379 INFO neutron.manager [req-493ddd6c-a9d0-417e-99c1-05d049749a71 - - - - -] Loading Plugin: vpnaas 2023-03-04 16:45:48.070 277379 WARNING stevedore.named [req-493ddd6c-a9d0-417e-99c1-05d049749a71 - - - - -] Could not load neutron_fwaas.services.firewall.service_drivers.agents.agents.FirewallAgentDriver 2023-03-04 16:45:48.070 277379 ERROR neutron.services.service_base [req-493ddd6c-a9d0-417e-99c1-05d049749a71 - - - - -] No providers specified for 'VPN' service, exiting
故障解决步骤
1. 清理冲突包,重新安装VPNaaS系统包
- 先卸载pip安装的冲突包:
pip uninstall -y neutron-vpnaas
- 用系统包管理器重新安装(以Debian/Ubuntu为例):
apt-get install -y python3-neutron-vpnaas neutron-vpnaas-common
- 验证驱动注册:检查
/usr/lib/python3/dist-packages/neutron_vpnaas.egg-info/entry_points.txt是否包含以下内容:
[neutron.service_plugins] vpnaas = neutron_vpnaas.services.vpn.plugin:VPNDriverPlugin
2. 修正Neutron配置,确保加载VPN服务提供者
修改neutron.conf
- 启用VPNaaS服务插件:
[DEFAULT] service_plugins = router,firewall_v2,vpnaas
- 添加VPNaaS配置文件加载项:
[DEFAULT] config_file = /etc/neutron/neutron_vpnaas.conf
- 修复FWaaS驱动路径错误(Zed版本正确路径):
[service_providers] service_provider = FIREWALL_V2:fwaas:neutron_fwaas.services.firewall.service_drivers.agents.firewall_agent.FirewallAgentDriver:default
验证neutron_vpnaas.conf
确保服务提供者配置正确:
[service_providers] service_provider = VPN:strongswan:neutron_vpnaas.services.vpn.service_drivers.ipsec.IPsecVPNDriver:default
3. 确认L3 Agent配置并重启服务
- 检查
l3_agent.ini的扩展配置:
[agent] extensions = fwaas_v2,vpnaas
- 重启Neutron相关服务:
systemctl restart neutron-server neutron-l3-agent
- 验证VPN CLI命令:
openstack vpn service list
4. 清理手动安装的源码残留
如果之前手动安装过VPNaaS源码包,删除残留文件:
rm -rf /usr/local/lib/python3.10/dist-packages/neutron_vpnaas*
替换python3.10为系统实际的Python版本。
内容的提问来源于stack exchange,提问作者OpenStackNoob
相关产品推荐
相关产品推荐

