《OpenStack实战指南》—— 2.2.2 计算节点的安装

简介:

本节书摘来自华章出版社《OpenStack实战指南》一 书中的第2章,第2.2节,作者:黄 凯 毛伟杰 顾骏杰 ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.2.2 计算节点的安装

计算节点的任务就是负责运行虚拟机,对于计算节点操作系统的安装,默认把/目录分区尽量分配充足,至少50GB。这里使用KVM。此外,这个架构中使用的网络方式是Neutron,使用的Neutron的plugin是Open vSwitch,因此,还需要安装Neutron的Open vSwitch的agent,以及Open vSwitch本身。
需要使用或安装的组件:
KVM、libvirt
nova-compute
neutron-plugin-openvswitch-agent
Open vSwitch
为了保证和controller节点的时间一致,需安装NTP并同步时间。
1.?安装nova-compute
首先,回到工作目录,命令如下:

$ cd

下载devstack脚本和Nova的源代码,命令如下:

$ git clone https://github.com/openstack-dev/devstack
$ git clone https://github.com/openstack/nova

安装nova-compute所需要的依赖软件包,代码如下:

$ cd devstack/files/apts
$ for i in ` cut -f1 -d" " n-cpu`; do sudo apt-get install -y $i; done

安装nova-compute组件,代码如下:

$ cd ~/nova
$ git checkout stable/havana
$ sudo python setup.py develop

因为底层使用KVM虚拟化技术,所以必须安装KVM和libvirt库,命令如下:

$ sudo apt-get install -y kvm libvirt-bin python-libvirt

2.?配置Nova相关文件
配置示例如下:

$ cd ~/nova
$ sudo mkdir /etc/nova
$ sudo chown openstack:openstack /etc/nova
$ cp etc/nova/api-paste.ini /etc/nova/
$ cp etc/nova/nova.conf.sample /etc/nova/nova.conf
$ mkdir -m 755 /etc/nova/rootwrap.d
$ cp etc/nova/rootwrap.d/*.filters /etc/nova/rootwrap.d
$ sudo chown -R root:root /etc/nova/rootwrap.d
$ sudo chmod 644 /etc/nova/rootwrap.d/*
$ cp etc/nova/rootwrap.conf /etc/nova
$ sed -e "s:^filters_path=.*$:filters_path=/etc/nova/rootwrap.d:" -i /etc/nova/
    rootwrap.conf
$ sudo chown root:root /etc/nova/rootwrap.conf
$ sudo chmod 0644 /etc/nova/rootwrap.conf
$ sudo vi /etc/sudoers.d/nova-rootwrap

把第一行内容添加到nova-rootwrap文件中,并执行余下命令。

openstack ALL=(root) NOPASSWD: /usr/local/bin/nova-rootwrap /etc/nova/rootwrap.conf *
    $ sudo chmod 0440 /etc/sudoers.d/nova-rootwrap

需要手动建立存放虚拟机文件的实际目录instances,代码如下:

$ sudo mkdir -p /data/nova/instances
$ sudo chown -R opsntack:openstack /data/nova
$ sudo mkdir /var/log/nova
$ sudo chown -R openstack:openstack /var/log/nova

3.?配置nova-compute
配置示例如下:

$ sudo modprobe nbd || true/
$ sudo modprobe kvm || true/
$ kvm-ok
$ sudo vi /etc/libvirt/qemu.conf

修改qemu.conf文件中以下部分内容:

cgroup_device_acl = [
"/dev/null", "/dev/full", "/dev/zero",
"/dev/random", "/dev/urandom",
"/dev/ptmx", "/dev/kvm", "/dev/kqemu",
"/dev/rtc", "/dev/hpet","/dev/net/tun",
]
$ sudo usermod -G libvirtd openstack

然后修改配置文件,可参照2.1节相关内容,其代码如下。注意,在这个例子中,nova.conf中的state_path的目录应该设置成/data/nova。在一切配置完成之后,启动nova-compute服务。

$ cd ~/nova
$ tmux -c "sg libvirtd bin/nova-compute --config-file=/etc/nova/nova.conf"

4.?安装Neutron的Open vSwitch plugin
计算节点需要使用Open vSwitch和Neutron的Open vSwitch plugin。在二进制包安装过程中,Open vSwitch在安装Neutron时候被依赖安装了,而在这里我们必须手动安装Open vSwitch,其代码如下:

$ sudo apt-get install -y openvswitch-switch openvswitch-datapath-dkms

Neutron的Open vSwitch plugin的源代码包含在Neutron中,参照控制节点安装neutron-server部分,建立相应的目录,把Open vSwitch的 plugin复制出来,然后编辑配置文件即可。完成后,运行neutron-openvswitch-plugin的命令如下:

$ cd ~/neutron
$ tmux -c "python neutron-openvswitch-agent --config-file /etc/neutron/neutron.
    conf --config-file /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini"
相关文章
|
7月前
|
IDE Linux KVM
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
283 0
|
7月前
|
云计算 数据安全/隐私保护 虚拟化
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
182 0
|
4月前
|
存储 网络协议 Linux
如何安装OpenStack?
【8月更文挑战第21天】
545 1
|
7月前
|
云计算
云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)
256 0
|
7月前
|
弹性计算 Linux 网络安全
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
95 0
|
7月前
|
存储 云计算 虚拟化
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
325 0
|
7月前
|
存储 虚拟化 数据安全/隐私保护
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初始安装(一)
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初始安装(一)
567 0
|
网络协议 Linux 网络安全
openstack 云平台一体化部署(超详细)
openstack 云平台一体化部署(超详细)
1297 0
openstack 云平台一体化部署(超详细)
|
4月前
|
消息中间件 缓存 Shell
跟我一起来学OpenStack部署
跟我一起来学OpenStack部署
313 0
|
5月前
|
存储 数据安全/隐私保护 Docker
Kolla-ansible部署openStack
Kolla-ansible部署openStack
430 11