openstack的环境搭好了,想在里面部署LBv2.
LBv2目前在horizon中没有实现,只能使用cli。
部署步骤:
lbaas v2环境搭建
controller node
- . 需要更新数据库
neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini --service lbaas upgrade head
下面这条命令只是按照neutron的数据库,由于lbaas从neutron里独立出来了,所以还需要执行上面这条命令
# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron
- neutron.conf里需要增加service_provider
[service_providers]
service_provider=LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default
- /usr/lib/python2.7/site-packages/neutron-2015.1.1-py2.7.egg-info/entry_points.txt文件里增加lbaasv2
[neutron.service_plugins]
lbaasv2=neutron_lbaas.services.loadbalancer.plugin:LoadBalancerPluginv2
在neutron-server启动时,会load service_plugins,此时就会在这里寻找lbaasv2存不存在
4 . neutron.conf里
将service_plugins = router,firewall,lbaas,vpnaas ==> service_plugins = router,firewall,lbaasv2,vpnaas
. 源代码里的neutron目录下有个setup.cfg,里面有支持的service_plugins定义,这个文件不会被安装到系统里,只能看源代码
network node
- neutron_lbaas.conf里需要使用v2版本的service_provider
service_provider=LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default
- lbaas_agent.ini里的device_driver路径需要修改
device_driver=neutron_lbaas.drivers.haproxy.namespace_driver.HaproxyNSDriver
- 增加服务
/usr/lib/systemd/system/neutron-lbaasv2-agent.service,参考neutron-lbaas-agent.service写,替换成下面这一行
ExecStart=/usr/bin/neutron-lbaasv2-agent --config-file /usr/share/neutron/neutron-dist.conf --config-file /usr/share/neutron/neutron-lbaas-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/neutron_lbaas.conf --config-file /etc/neutron/lbaas_agent.ini --config-dir /etc/neutron/conf.d/neutron-lbaas-agent --log-file /var/log/neutron/lbaasv2-agent.log
- systemctl start neutron-lbaasv2-agent.service
- sudo修改
#chmod u+w /etc/sudoers #修改权限
#vi /etc/sudoers
#Defaults requiretty #注释掉这一行,使得在后台的进程也可以运行sudo命令