在Ubuntu上学习OpenStack之八:网络(计算)节点上安装Neutron代理
这里介绍的都是物理环境,一个控制节点,一个计算节点,但是我们虚拟机之间也存在内部网络,所以我们也需要有一个逻辑的网络节点,我们又经常将网络节点和计算节点放在一起,所以标题就成为了网络(计算)节点。
计算节点需要有两块网卡,第二块网卡的配置如下:
v 编辑:sudo vi /etc/sysctl.conf
修改如下三项配置:
v 执行命令:suoo sysctl -p
v 安装网络服务包:sudo apt-get install neutron-plugin-ml2 neutron-plugin-openvswitch-agent openvswitch-datapath-dkms neutron-l3-agent neutron-dhcp-agent
(注意:此处可以对比一下控制节点上安装Neutron的命令:sudo apt-get install neutron-server neutron-plugin-ml2 python-neutronclient,可以发现控制节点上安装的是Neutron服务,而计算节点上安装的是Neutron代理。)
安装过程中遇到如下报错:
Building module:
cleaning build area....(bad exit status: 2)
./configure --with-linux='/lib/modules/3.13.0-24-generic/build' && make -C datapath/linux.....(bad exit status: 1)
Traceback (most recent call last):
File "/usr/share/apport/package-hooks/dkms_packages.py", line 87, in <module>
if 'Segmentation fault' in report['DKMSBuildLog']:
TypeError: Type str doesn't support the buffer API
Error! Bad return status for module build on kernel: 3.13.0-24-generic (x86_64)
Consult /var/lib/dkms/openvswitch/2.0.2/build/make.log for more information.
查看make.log,说内核版本不匹配:configure: error: Linux kernel in /lib/modules/3.13.0-24-generic/build is version 3.13.9, but version newer than 3.12.x is not supported
于是执行了一下sudo apt-get update,然后重新执行上面的安装,通过。
v 编辑sudo vi /etc/neutron/neutron.conf
修改如下配置:
v 编辑sudo vi /etc/neutron/l3_agent.ini
更新三个配置:
v 编辑sudo vi /etc/neutron/dhcp_agent.ini
v 编辑sudo vi /etc/neutron/metadata_agent.ini
v 编辑sudo vi /etc/neutron/plugins/ml2/ml2_conf.ini
修改如下配置:
并修改和添加一个配置:
v 重启服务:sudo service openvswitch-switch restart
v 重启计算服务:
sudo service neutron-l3-agent restart
sudo service neutron-dhcp-agent restart
sudo service neutron-metadata-agent restart
sudo service neutron-plugin-openvswitch-agent restart
如果几个服务全部重启成功,说明安装没有问题!
补充配置:sudo vi /etc/nova/nova.conf
[DEFAULT]下新增如下配置:
然后重启如下服务:
sudo service openvswitch-switch restart
sudo service nova-compute restart
sudo service neutron-plugin-openvswitch-agent restart