一、安装并配置控制节点
1.先决条件
1)完成下面的步骤以创建数据库:
mysql-uroot -p123123
createdatabase nove;
createdatabase nova_api;
grantall privileges on nove.* to ‘nove‘@‘localhost‘ identified by ‘123123‘;
grantall privileges on nove.* to ‘nove‘@‘%‘ identified by ‘123123‘;
grantall privileges on nove_api.* to ‘nove‘@‘localhost‘ identified by ‘123123‘;
grantall privileges on nove_api.* to ‘nove‘@‘%‘ identified by ‘123123‘;
exit
2)获得admin凭证来获取只有管理员能执行命令的访问权限
sourceadmin-openrc.sh
3)创建服务证书
a.创建nove用户
openstackuser create --domain default --password-prompt nova ##设置密码
b.添加admin角色到nova用户
openstackrole add --project service --user nova admin
c.创建nova服务实体
openstackservice create --name nova --description "Openstack Compute" compute
4)创建计算服务API端点
openstackendpoint create --region RegionOne compute public http://controller:8774/v2.1/%\(tenant_id\)s
openstackendpoint create --region RegionOne compute internal http://controller:8774/v2.1/%\(tenant_id\)s
openstackendpoint create --region RegionOne compute admin http://controller:8774/v2.1/%\(tenant_id\)s
2.安全并配置组件
1)安装软件包
yuminstall openstack-nova-api openstack-nova-conductor openstack-nova-consoleopenstack-nova-novncproxy openstack-nova-scheduler
2)编译/etc/nova/nova.conf文件并完成下面的操作
vi/etc/nova/nova.conf
[DEFAULT]
enable_apis= osapi_compute,metadata ##只启用计算和元数据API
rpc_backend = rabbit ##配置rabbit消息队列访问
auth_strategy = keystone ## 配置认证服务访问
my_ip = 10.0.0.11 ##使用控制节点的管理接口的IP 地址
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver ##使用Networking服务
[database]
connection = mysql+pymysql://nova:[email protected]/nova ##配置数据库的连接
[api_database]
connection= mysql+pymysql://nova:[email protected]/nova_api ##配置数据库的连接
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 123123 ##配置rabbit消息队列访问
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = 123123 在[keystone_authtoken]中注释或者删除其他选项。
[vnc]
vncserver_listen = $my_ip
vncserver_proxyclient_address = $my_ip ##配置VNC代理使用控制节点的管理接口IP地址
[glance]
api_servers= http://controller:9292
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
3)同步Compute数据库
su-s /bin/sh -c “nova-manage api_db sync” nova
su -s /bin/sh -c "nova-manage dbsync" nova
3.完成安装
1)启动Compute服务并将其设置为随系统启动
systemctl enable openstack-nova-api.serviceopenstack-nova-consoleauth.service openstack-nova-scheduler.serviceopenstack-nova-conductor.service openstack-nova-novacproxy.service
systemctl start openstack-nova-api.serviceopenstack-nova-consoleauth.service openstack-nova-scheduler.serviceopenstack-nova-conductor.service openstack-nova-novncproxy.service
二、安装和配置计算节点
1.安装并配置组件
1)安装软件包
yum -y install openstack-nova-compute
2)编辑/etc/nova/nova.conf文件并完成下面的操作
vi /etc/nova/nova.conf
[DEFAULT]
rpc_backend = rabbit ##配置rabbitmq消息队列的连接
auth_strategy = keystone ##配置认证服务访问
my_ip = 10.0.0.31
use_neutron = True ##使用Networking服务
firewall_driver = nova.virt.firewall.NoopF irewallDriver ##使用Networking服务
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = nova
password = 123123 ##配置认证服务访问,在[keystone_authtoken]中注释或者删除其他选项
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 123123 ##配置rabbitmq消息队列的连接
[vnc]
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = $my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html ##启用并配置远程控制台访问
[glance]
api_servers = http://controller:9292 ##配置镜像服务API的位置
[oslo_concurrency]
lock_path = /var/lib/nova/tmp ##配置锁路径
2.完成安装
1)确定您的计算节点是否支持虚拟机的硬件加速。
egrep-c ‘(vmx|svm)‘ /proc/cpuinfo
##如果这个命令返回 ``one或者更大``的值,说明您的计算节点支持硬件加速,一般不需要进行额外的配置。
如果这个命令返回``zero``,你的计算节点不支持硬件加速,你必须配置 libvirt 使用QEMU而不是使用KVM。
vi /etc/nova/nova.conf
[libvirt]
virt_type = qemu
2)启动计算服务及其依赖,并将其配置为随系统自动启动:
systemctl enable libvirtd.serviceopenstack-nova-compute.service
systemctl start libvirtd.serviceopenstack-nova-compute.service
三、验证操作
1.获得admin凭证来获取只有管理员能执行的命令的访问权限
source admin-openrc
2.列出服务组件,以验证是否成功启动并注册了每个进程
openstack compute service list