openstack newton 負載均衡Lbaas配置

參考官網:
http://docs.openstack.org/newton/networking-guide/config-lbaas.html#lbaas-v2-concepts

[root@control ~]# yum -y install openstack-neutron-lbaas haproxy
[root@control ~]# vim /etc/neutron/neutron.conf
[DEFAULT]
service_plugins = router,neutron_lbaas.services.loadbalancer.plugin.LoadBalancerPluginv2

接著編輯/etc/neutron/neutron_lbaas.conf設定檔,在[service_providers]中加入以下內容:
[root@control ~]# vim /etc/neutron/neutron_lbaas.conf
[service_providers]
service_provider = LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default

完成後在 Controller節點更新 Neutron 資料庫:
[root@control ~]# su -s /bin/sh -c "neutron-db-manage \
--config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/plugins/ml2/ml2_conf.ini \
--subproject neutron-lbaas upgrade head" neutron

之後重新啟動neutron-server服務:
[root@control ~]# systemctl restart neutron-server.service

========================================
編輯/etc/neutron/lbaas_agent.ini設定檔,在[DEFAULT]部分加入以下內容:
[root@control ~]# /etc/neutron/lbaas_agent.ini
[DEFAULT]
interface_driver=neutron.agent.linux.interface.BridgeInterfaceDriver

[haproxy]

user_group = nobody

接著編輯編輯/etc/neutron/neutron_lbaas.conf設定檔,在[service_providers]部分加入以下內容:
[service_providers]
service_provider = LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default

neutron-lbaasv2-agent \
--config-file /etc/neutron/neutron.conf \
--config-file /etc/neutron/lbaas_agent.ini

預設的 Horizon 目前只支援LBaaSv1,若要使用LBaaSv2則需要安裝 neutron-lbaas-dashboard。 

neutron-lbaas-dashboard下載地址:
https://github.com/openstack/neutron-lbaas-dashboard
cd neutron-lbaas-dashboard
python setup.py install

重點:
Copy the _1481_project_ng_loadbalancersv2_panel.py file from the neutron-lbaas-dashboard/enabled directory into the Dashboard openstack_dashboard/enabled directory. 如果按照官網拷貝到openstack_dashboard/local/enabled會報錯。
拷貝好後重啓http 重啓後可能web界面無法操作了,這時候刪除掉_1481_project_ng_loadbalancersv2_panel.py 這個文件只保留
_1481_project_ng_loadbalancersv2_panel.pyc文件,然後再重啓http服務。或者pyc文件直接使用下面壓縮包中的文件即可。

If Dashboard is configured to compress static files for better performance (usually set through COMPRESS_OFFLINE in local_settings.py), optimize the static files again:

$ ./manage.py collectstatic
$ ./manage.py compress

最後檢查 Dashboard 的檔案local_settings.py,是否有開啟 UI:

OPENSTACK_NEUTRON_NETWORK = {
'enable_lb': True,
...
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章