《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"

时间: 2024-11-03 07:53:31

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

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

2.1.3 计算节点的安装 计算节点主要负责运行虚拟机.在这个测试案例中,使用KVM作为底层的虚拟化技术,OpenStack采用libvirt库来管理KVM.网络使用Open vSwitch来和其他计算节点及网络节点通信.在计算节点上,需要安装以下几个部分: Open vSwitch neutron-plugin-openvswitch-agent nova-compute open-iscsi 1.?系统环境准备 操作系统仍旧使用Ubuntu 12.04 LTS.网络节点需要两个网口,分别连接

《OpenStack实战指南》—— 2.2.3 网络节点的安装

2.2.3 网络节点的安装 网络节点需要安装Neutron和openvswitch-plugins.和计算节点一样,也需要手动安装Open vSwtich的包.在网络节点中,安装Neutron和openvswitch-plugins的方式和控制节点.计算节点的安装类似,唯一的区别是需要把源代码中关于dhcp-agent.l3-agent和metadata-agent的配置文件复制到/etc/neutron目录中,其余的这里不再重复写出.这里给出启动三个服务的命令: $ tmux -c "pyth

《OpenStack实战指南》—— 导读

前 言 在2007年前后,许多网站站长发现当时一部分主流机托管商开始逐步使用虚拟化技术提供云主机的托管服务,而当时的虚拟化程度还停留在半虚拟化或类似OpenVZ这样的伪虚拟化的水平.即便如此,一台服务器已经可以承载数十台甚至上百台虚拟主机的负荷,而且安全性更好,价格也更低.通过更加有效的隔离和封装,虚拟主机的创建和恢复也变得更加迅速和可靠.与此同时,像Eucalyptus和OpenNebula这样的云计算管理工具也开始逐步进入人们的视野. 次年,笔者机缘巧合地加入了EMC(也就是VMware的母

《OpenStack实战指南》—— 2.1.2 网络节点的安装

2.1.2 网络节点的安装 网络节点主要负责虚拟机的网络控制,包括DHCP.虚拟路由.公网访问虚拟机等.通过软件网桥等方式控制虚拟机的网络,代替传统环境中所需要的交换机.路由器等.在这个测试案例中,使用Open vSwitch作为底层的网络驱动. 1.?系统环境准备 操作系统仍旧使用Ubuntu 12.04 LTS.网络节点需要三个网口,分别连接network-1.network-2.network-3,前两个网络在控制节点安装的时候定义过,而network-3是个新网络,是个私有的网络,IP网

《OpenStack实战指南》—— 2.1.4 块存储节点的安装

2.1.4 块存储节点的安装 块存储节点负责提供volume(云硬盘).Cinder服务可以在块存储上创建volume,以块存储的形式通过iSCSI提供给计算节点,计算节点使用底层的libvirt库把volume块存储挂载给虚拟机使用.在控制节点上已经安装了cinder-api和cinder-scheduler,在真正的块存储节点上需要安装cinder-volume的服务,它调度相应程序,在节点上创建或删除volume,并更新维护volume在数据库中的状态.cinder-volume可以使用多

《OpenStack实战指南》—— 2.1 在Ubuntu上使用二进制包安装

2.1 在Ubuntu上使用二进制包安装 笔者写本书的时候,OpenStack已经发展到Havana版本,几大主流的Linux发行版本都会将OpenStack的源代码做成各自平台的二进制安装包,以供用户使用.随着OpenStack使用的人越来越多,发行版本对Linux的支持力度也越来越大,就目前来看,Ubuntu(Debian).RedHat.OpenSUSE都有相应的包和开发定制的安装程序.当然,各个Linux平台上的包制作发布的时间各有快慢,同时支持的版本更新也有快有慢.Ubuntu是更新最

《OpenStack实战指南》—— 第2章 Chapter 2

第2章 Chapter 2 OpenStack的安装 2.1 在Ubuntu上使用二进制包安装 笔者写本书的时候,OpenStack已经发展到Havana版本,几大主流的Linux发行版本都会将OpenStack的源代码做成各自平台的二进制安装包,以供用户使用.随着OpenStack使用的人越来越多,发行版本对Linux的支持力度也越来越大,就目前来看,Ubuntu(Debian).RedHat.OpenSUSE都有相应的包和开发定制的安装程序.当然,各个Linux平台上的包制作发布的时间各有快

《OpenStack实战指南》—— 2.2 在Ubuntu上使用源代码编译安装

2.2 在Ubuntu上使用源代码编译安装 对于各个版本的Linux来说,都会制作OpenStack相应的软件包.虽然在2.1节中介绍了二进制包安装,但是在这里笔者还是会讲一下源代码安装OpenStack基本组件的过程,因为从学习的角度来说,通过源代码安装OpenStack各个组件的过程,可以使读者对OpenStack的框架和各个组件的作用有一个比使用二进制安装更全面的了解.另一个好处是,二进制包的发布会滞后于源代码,如果想在第一时间尝试一些最新的功能或修复Bug后的版本,源代码安装是个不错的选

《OpenStack实战指南》—— 1.2 OpenStack的结构

1.2 OpenStack的结构 OpenStack包含了许多组件.有些组件会首先出现在孵化项目中,待成熟以后进入下一个OpenStack发行版的核心服务中.同时也有部分项目是为了更好地支持OpenStack社区和项目开发管理,不包含在发行版代码中. OpenStack的核心服务包括: Nova计算服务(Compute as a Service) Neutron网络服务(Networking as a Service) Swift对象存储服务(Object Storage as a Servic