openstack安装部署5——计算服务(控制节点&计算节点)
来源:互联网 发布:新版淘宝联盟自己买 编辑:程序博客网 时间:2024/06/06 20:56
1.前言
Openstack计算服务通过认证服务获取认证;通过镜像服务获取镜像;通过仪表盘提供的用户界面与用户交互。镜像的存取受工程和用户的限制,配额受工程的限制(例如不同工程允许虚拟机实例数量不同)。Openstack计算服务可以在标准硬件上进行横向扩展,可以下载镜像并开启虚拟机实例。
Openstack计算服务包含如下几部分,每部分都对应一个组件:
nova-api
接收并响应终端用户的计算服务API调用。该服务执行若干策略并且发起大多数编排行为,比如运行某个虚拟机实例。
nova-api-metadata 服务
接收来自虚拟机实例的元数据请求。当用户处在多主机模式中与nova-network协作时,通常会使用nova-api-metadata 。更多信息参考Metadata service in the OpenStack Administrator Guide.nova-compute service
一个守护进程(worker daemon),通过虚拟机管理程序的API来创建和销毁虚拟机实例。例如:
XenAPI for XenServer/XCP
libvirt for KVM or QEMU
VMwareAPI for VMware
处理过程是相当复杂的。基本的,该进程接收队列中的动作并且声称一系列系统命令,例如启动一个KVM实例或者在数据库中更新它的状态。nova-scheduler service
从队列中获取虚拟机实例的请求并决定其运行在哪个实际的计算服务节点。nova-conductor module
提供nove-compute服务与数据库的交互方式,防止nova-compute服务与云计算系统数据库有直接的交互。Nova-conductor支持横向扩展。需要注意的是,不要将nova-conductor服务部署在运行着nova-compute服务的节点上。更多信息,参见metadata service
理论上,Openstack计算服务支持任何形式的关系型数据库。一般情况下,测试与研发过程多使用SQLite3,还包括MySQL,PostgreSQL。
2.控制节点安装
2.1安装前提
在安装和配置Nova前,需要创建数据库,服务认证和API endpoint。
2.1.1 创建数据库
创建使用root用户登陆数据库client:
mysql -u root -p
2.创建nova-api和nova数据库
MariaDB [(none)]> CREATE DATABASE nova_api;
MariaDB [(none)]> CREATE DATABASE nova;
3.给数据库赋予权限
NOVA_DBPASS用合适的密码替代:123456
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'NOVA_DBPASS';GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'NOVA_DBPASS';
- 4.退出数据库:exit
2.1.2source admin-openrc
. admin-openrc
2.1.3 创建服务授权证书
- 1.创建“nova”user,用户密码为123456
openstack user create --domain default --password-prompt nova
- 2.将admin角色添加到“nova”user
openstack role add --project service --user nova admin
- 3.创建nova服务实例
openstack service create --name nova --description "OpenStack Compute" compute
2.1.4 创建计算服务API endpoint
Public
openstack endpoint create --region RegionOne \ compute public http://controller:8774/v2.1/%\(tenant_id\)s
Internal
openstack endpoint create --region RegionOne \ compute internal http://controller:8774/v2.1/%\(tenant_id\)s
- admin
openstack endpoint create --region RegionOne \ compute admin http://controller:8774/v2.1/%\(tenant_id\)s
2.2安装与配置组件
2.2.1安装包
apt-get install nova-api nova-conductor nova-consoleauth nova-novncproxy nova-scheduler
2.2.2配置文件
1.修改配置文件/etc/nova/nova.conf
- 在[DEFAULT]部分
添加如下部分,仅仅enable comput和metadate APIS,其他的部分删除ec2
[DEFAULT]...enabled_apis = osapi_compute,metadata
- 在[api_database] 和 [database] 部分
配置数据参数信息,NOVA_DBPASS用nova数据库的密码123456替代。
[api_database]...connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api[database]...connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
- 在 [DEFAULT] 和 [oslo_messaging_rabbit] 部分
配置消息队列参数RabbitMQ:RABBIT_PASS用具体密码代替
[DEFAULT]...rpc_backend = rabbit[oslo_messaging_rabbit]rabbit_host = controllerrabbit_userid = openstackrabbit_password = RABBIT_PASS
- 在[DEFAULT]和[Keystone_authtoken]
配置身份认证参数,NOVA_PASS用实际的密码123456替换
[DEFAULT]...auth_strategy = keystone[keystone_authtoken]auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = NOVA_PASS
- 在[DEFAULT]里配置网络
添加参数“my_ip”为管理节点的ip地址
[DEFAULT]...my_ip = 10.10.80.180use_neutron = Truefirewall_driver = nova.virt.firewall.NoopFirewallDriver
- 在[VNC]配置
VNC代理,配置为管理节点$my_ip,值在上一步骤中赋予。
[vnc]vncserver_listen = $my_ipvncserver_proxyclient_address = $my_ip
- 在[glance]部分
配置镜像服务API
[glance]api_servers = http://controller:9292
- 在 [oslo_concurrency] 部分
配置lock path
[oslo_concurrency]lock_path = /var/lib/nova/tmp
- 在[default]中移除logdir
2.2.3 同步数据库
su -s /bin/sh -c "nova-manage api_db sync" nova
su -s /bin/sh -c "nova-manage db sync" nova
2.2.4完成安装,重启服务
service nova-api restartservice nova-consoleauth restartservice nova-scheduler restartservice nova-conductor restartservice nova-novncproxy restart
3.计算节点安装
3.1 安装包
apt-get install nova-compute
3.2 配置文件/etc/nova/nova.conf
- 在[DEFAULT]和[oslo_messaging_rabbit]部分
配置RabbitMQ接口,RABBIT_PASS用实际使用密码123456替代。
[DEFAULT]...rpc_backend = rabbit[oslo_messaging_rabbit]rabbit_host = controllerrabbit_userid = openstackrabbit_password = RABBIT_PASS
- 在[DEFAULT]和[keystone_authtoken]部分
配置身份认证接口,NOVA_PASS用认证服务中为nova配置的实际密码123456替代。
[DEFAULT]...auth_strategy = keystone[keystone_authtoken]auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = NOVA_PASS
- 在[DEFAULT]和[keystone_authtoken]部分
配置身份认证接口,NOVA_PASS用认证服务中为nova配置的实际密码123456替代。
[DEFAULT]...auth_strategy = keystone[keystone_authtoken]auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = NOVA_PASS
- 在[DEFAULT]部分
配置my_ip,ip地址为此计算节点的ip
[DEFAULT]...my_ip = 10.10.80.181
- 在[DEFAULT]部分
添加支持网络服务参数
[DEFAULT]...use_neutron = Truefirewall_driver = nova.virt.firewall.NoopFirewallDriver
- 在[vnc]部分
激活和配置远程端口访问
[vnc]enabled = Truevncserver_listen = 0.0.0.0vncserver_proxyclient_address = $my_ipnovncproxy_base_url = http://controller:6080/vnc_auto.html
- 在[glance]部分
配置image的API服务
[glance]api_servers = http://controller:9292
- 在[oslo_concurrency]部分
配置lock路径
[oslo_concurrency]lock_path = /var/lib/nova/tmp
- 在[default]中移除“logdir”参数
3.3安装完成
3.3.1确定是否计算节点支持虚拟设备的硬件加速
egrep -c '(vmx|svm)' /proc/cpuinfo
如果返回1或更多,则计算节点支持硬件优化,不需要额外配置。
如果返回zero,则计算节点不支持硬件优化,必须配置libvirt来使用QEMU,而不是KVM。具体的配置参考:配置libvirt中finalize installation-1。
3.3.2重启计算服务
service nova-compute restart
4.验证
在控制节点上进行以下操作:
- 1.在/root目录下执行命令
. admin-openrc
- 2.列举所有的服务,验证是否成功启动和注册
openstack compute service list
正常情况在管理节点出现三个激活的服务组件,在计算节点列出一个激活的服务组件:
- openstack安装部署5——计算服务(控制节点&计算节点)
- openstack安装部署8——块存储组件(控制节点、计算节点、存储节点)
- openstack安装部署6——网络服务(控制节点&计算节点)
- [部署篇7]VMWare搭建Openstack——网络(计算)节点的Neutron安装
- [部署篇5]VMWare搭建Openstack——计算节点的基础部署和Nova的安装
- openstack (havana) 计算节点安装
- openstack--计算节点安装(Node)
- openstack-计算节点安装(Node)
- [部署篇8]VMWare搭建Openstack——计算节点的Neutron安装
- openstack搭建--5--控制节点和计算节点安装配置nova
- OpenStack 最小化安装配置(九):计算节点的服务安装
- openstack安装部署4——Glance镜像安装(仅部署在控制节点)
- openstack平台的计算节点部署
- CentOS7.3部署OpenStack-Ocata版本手记(计算节点)
- OpenStack Newton版本部署---- 网络服务(neutron)(计算节点)
- OpenStack 计算节点
- OpenStack删除计算节点
- openstack搭建--6--控制节点和计算节点安装配置neutron
- 笔记
- Dynamics CRM Ribbon WorkBench 当ValueRule的值为空时的设置
- Yii 1.1: Using CButtonColumn to customize buttons in CGridView Follow @yiiframework
- 【数论】Send a Table, UVa10820 【线性筛法】【欧拉函数】
- 【大规模图像检索的利器】Deep哈希算法介绍
- openstack安装部署5——计算服务(控制节点&计算节点)
- 两个activity之间发送本地广播
- 手把手教你如何搭建iOS项目基本框架
- JavaScript模板替换html内容
- SpringMVC中使用@RequestBody,@ResponseBody注解实现Java对象和XML/JSON数据自动转换(上)
- MFC中功能键键值(转)
- c++ prime plus2.5
- CSS之搜索框
- 8招秘诀 网站盈利不再是梦