1.Taas扩展
Taas(tap-as-a-service):监控及服务,这个插件的主要功能就是它提供了实例的端口流量镜像功能,并且,是以物理机为单位,进行安装部署。用来做基于网络型的入侵检测系统非常合适。该项目目前的地址如下:
2.Taas安装
Taas目前在它的git分支出了对应各个openstack版本的发行版,如下图,安装的时候最好对应自己目前openstack的版本。
2.1 安装前的注意事项
Taas的架构如下图所示,从架构图可以看出来,它底层是以openvswitch做的开发,之前如果l2层是用的是linux-bridge要换成openswitch,切换方法参考《Neutron替换linuxbridge-agent为openvswitch-agent》。
2.2 查看你的openstack版本
openstack各个发行版基本上和他的nova版本都是相对应的。查看nova版本可以直接查看python包下面的nova版本。我这里nova版本是15.1.5:
ls /usr/lib/python2.7/dist-packages/ | grep nova-
然后在openstack发行版官网点击进入各个release版本,可以查到各个版本对应的nova版本。这里我的nova版本跟Queens版本对应,说明安装的是Queens版本的openstack。
2.3 安装过程
注:以下命令均在root权限下执行
2.3.1 控制节点安装
1.下载对应版本的源码
git clone -b stable/queens https://opendev.org/x/tap-as-a-service
2.执行安装脚本
cd tap-as-a-service/
python setup.py install
注:如果出现如下图所示的编码错误提示,请执行如下命令:
export LC_ALL=en_US.UTF-8 export LANG=en_US.UTF-8
3.修改/etc/neutron/neutron.conf
#添加如下内容 [service_providers] service_provider = TAAS:TAAS:neutron_taas.services.taas.service_drivers.taas_rpc.TaasRpcDriver:default [default]节中service_plugins,添加taas service_plugins = router,taas
4.同步数据库
neutron-db-manage --subproject tap-as-a-service upgrade head
5.重启服务使配置生效
service neutron-server restart service neutron-openvswitch-agent restart
2.3.2 计算节点安装
1.下载对应版本的源码
git clone -b stable/queens https://opendev.org/x/tap-as-a-service
2.执行安装脚本
cd tap-as-a-service/
python setup.py install
3.修改配置文件/etc/neutron/plugins/ml2/openvswitch_agent.ini
在[agent]节添加如下内容 extensions = taas
4.重启服务使配置生效
service neutron-openvswitch-agent restart
5.查看日志,应该会包含如下提示加载taas插件的内容
tail -n 40 /var/log/neutron/neutron-openvswitch-agent.log
2020-03-21 14:38:29.850 2915 INFO neutron.agent.agent_extensions_manager [-] Loaded agent extensions: ['taas'] 2020-03-21 14:38:30.030 2915 INFO neutron.plugins.ml2.drivers.openvswitch.agent.openflow.native.ovs_bridge [-] Bridge br-int has datapath-ID 0000c2c0df87f842 2020-03-21 14:38:34.245 2915 INFO neutron.plugins.ml2.drivers.openvswitch.agent.openflow.native.ovs_bridge [req-e1f4e65e-dd1d-43ab-bd44-94b2e3f1c688 - - - - -] Bridge br-tun has datapath-ID 000096e69ff1374a 2020-03-21 14:38:34.258 2915 INFO neutron.agent.agent_extensions_manager [req-e1f4e65e-dd1d-43ab-bd44-94b2e3f1c688 - - - - -] Initializing agent extension 'taas'
参考
- https://docs.openstack.org/openstack-helm/latest/install/plugins/deploy-tap-as-a-service-neutron-plugin.html