class="markdown_views prism-tomorrow-night">
在controller节点上配置
一、安装Nova基本组件
1.自动挂载:
(1)进入自动挂载配置文件
#
vi /etc/fstab
在配置文件中添加:
/opt/CentOS-7-x86_64-DVD-1511.iso /opt/centos iso9660 defaults 0 0
/opt/XianDian-IaaS-v2.2.iso /opt/iaas iso9660 defaults 0 0
注意除了最后两个0是空格隔开,其他的栏位之间是tab键
(2)加载自动挂载文件
#
mount -a
(3)查看是否挂载成功
#
df -T
2.安装软件包
#
yum install -y openstack-nova-api openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler
二、创建数据库、用户及授权
(1)创建nova数据库
#
mysql -uroot -p000000
create database if not exists nova;
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY '000000';
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY '000000';
(2)创建nova_api数据库
create database IF NOT EXISTS nova_api;
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY '000000' ;
GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY '000000' ;
(3)修改数据库连接
#vi /etc/nova/nova.conf
在[database]下面添加:
connection=mysql+pymysql://nova:000000@controller/nova
在[api_database]下面添加:
connection=mysql+pymysql://nova:000000@controller/nova_api
(4)同步数据库,为nova创建数据库表
#
su -s /bin/sh -c "nova-manage db sync" nova
#
su -s /bin/sh -c "nova-manage api_db sync" nova
可以使用命令查看已创建的表:
#
mysql -uroot -p000000 -e"use nova;show tables;"
三、注册Nova服务至Keystone认证
注册用户(user)、租户(project)和端点(endpoint)
其中project在keystone里已经注册了一个service供所有服务使用。
(1)导入环境变量
#
source admin-openrc.sh
(2)创建用户
#
openstack user create --domain default --password 000000 nova
(3)为nova用户在service租户下分配admin权限
#
openstack role add --project service --user nova admin
(4)注册服务信息
#
openstack service create --name nova --description "OpenStack Compute" compute
(5)注册端点信息
#
openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1/%(tenant_id)s
#
openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1/%(tenant_id)s
#
openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1/%(tenant_id)s
四、修改配置文件,配置Nova使用消息队列服务
修改下
vi /etc/nova/nova.conf
文件
[DEFAULT]
enabled_apis = osapi_compute,metadata
rpc_backend = rabbit
auth_strategy = keystone
my_ip = 192.168.100.10
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
metadata_listen = 0.0.0.0
metadata_listen_port = 8775
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 000000
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = 000000
[vnc]
vncserver_listen = 192.168.100.10
vncserver_proxyclient_address = 192.168.100.10
[glance]
api_servers = http://controller:9292
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
五、启动服务添加开机自启
#
systemctl enable openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
#
systemctl start openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
六、验证Nova
#
nova image-list
compute节点
1.安装逻辑卷lvm2管理包
#
yum install lvm2 -y
如果无法安装确认一下控制节点的ftp服务是否可以访问,如果不可以访问,查看一下控制节点的防火墙状态,关闭防火墙
#
firewall-cmd --state
#
setenforce 0
#
systemctl stop firewalld
2.安装nova计算服务软件包
#
yum install openstack-nova-compute -y
3.配置nova认证和数据库连接
修改
vi /etc/nova/nova.conf
[DEFAULT]
enabled_apis = osapi_compute,metadata
rpc_backend = rabbit
my_ip = 192.168.100.20
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = 000000
[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = 000000
[vnc]
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = 192.168.100.20
novncproxy_base_url = 192.168.200.10:6080/vnc_auto.html
[glance]
api_servers = http://controller:9292
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
[libvirt]
inject_key = True
4.检查系统处理器是否支持虚拟机的硬件加速
#
egrep -c '(vmx|svm)' /proc/cpuinfo
(1)如果该命令返回一个1或更大的值,说明你的系统支持硬件加速,通常不需要额外的配置。
(2)如果这个指令返回一个0值,说明你的系统不支持硬件加速,你必须配置libvirt取代KVM来使用QEMU:
#
openstack-config --set /etc/nova/nova.conf libvirt virt_type qemu
5.设置开机启动项并启动服务
#
systemctl enable libvirtd.service openstack-nova-compute.service
#
systemctl start libvirtd.service openstack-nova-compute.service
6.清除防火墙
-----------controller、compute--------------
#
iptables -F
#
iptables -X
#
iptables -Z
7.在控制节点验证
(1)导入环境变量
#
source admin-openrc.sh
#
openstack compute service list
openstack日志
日志的位置
统一放在/var/log目录下,每个服务都有自己的日志文件。
各个子服务的日志文件也是单独保存,命名也很规范,容易区分。
比如 nova-api 的日志一般就命名为 /var/log/nova/api.log,其他日志类似。
这条日志我们可以得知:
这是一个 INFO 日志
具体内容是 “Successfully synced instances from host ‘compute’.r”
该日志没有指明源代码位置
时间戳 日志记录的时间,包括 年 月 日 时 分 秒 毫秒
日志等级 有INFO WARNING ERROR DEBUG等
代码模块 当前运行的模块
Request ID 日志会记录连续不同的操作,为了便于区分和增加可读性,每个操 作都被分配唯一的Request ID,便于查找
日志内容 这是日志的主体,记录当前正在执行的操作和结果等重要信息
源代码位置 日志代码的位置,包括方法名称,源代码文件的目录位置和行号。这一项不是所有日志都有
有任何疑问或建议欢迎留言讨论,下一节进行Neutron网络服务的安装欢迎访问,点击传送。
有任何疑问或建议欢迎留言讨论,下一节进行Cinder块存储的安装欢迎访问,
点击传送 。