六:安装服务-compute node
一:工具、环境准备-controller node
二:OpenStack环境准备-controller node
三:安装服务-controller node
四:工具、环境准备-compute node
五:OpenStack环境准备-compute node
六:安装服务-compute node
七:仪表盘安装
- 切换至超级用户模式:
执行指令:
sudo su
Compute service – nova installation
a. 安装并配置组件
-
- 安装软件包
执行指令:
apt install nova-compute -y
-
- 编辑文件
执行指令:
vim /etc/nova/nova.conf
在 [DEFAULT] 中添加以下内容:
[DEFAULT]
transport_url = rabbit://openstack:123456@controller
my_ip = 192.168.20.20
123456
是用户 nova 的密码,
名为 RABBIT_PASS
192.168.20.20
替换成接口 ens34 对应的 ip 地址,名为 MANAGEMENT_INTERFACE_IP_ADDRESS
在 [api] 中添加以下内容:
[api]
auth_strategy = keystone
将 [keystone_authtoken] 中其他所有选项则都给注释掉,再添加以下内容:
[keystone_authtoken]
www_authenticate_uri = http://controller:5000/
auth_url = http://controller:5000/
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = nova
password = 123456
123456
是用户 nova 的密码,
名为 NOVA_PASS
在 [service_user] 中添加以下内容:
[service_user]
send_service_user_token = true
auth_url = https://controller/identity
auth_strategy = keystone
auth_type = password
project_domain_name = Default
project_name = service
user_domain_name = Default
username = nova
password = 123456
123456
是用户 nova 的密码,
名为 NOVA_PASS
在 [vnc] 中添加以下内容:
[vnc]
enabled = true
server_listen = 0.0.0.0
server_proxyclient_address = $my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html
在 [glance] 中添加以下内容:
[glance]
api_servers = http://controller:9292
在 [oslo_concurrency] 中添加以下内容:
[oslo_concurrency]
lock_path = /var/lib/nova/tmp
在 [placement] 中添加以下内容:
[placement]
region_name = RegionOne
project_domain_name = Default
project_name = service
auth_type = password
user_domain_name = Default
auth_url = http://controller:5000/v3
username = placement
password = 123456
123456
是用户 placement 的密码,
名为 PLACEMENT_PASS
若没有对应的[***]节段,则手动添加
b. 完成安装
- 将 libvirt 配置为使用 QEMU
执行指令:
vim /etc/nova/nova-compute.conf
在 [libvirt] 中修改为以下内容:
[libvirt]
virt_type = qemu
- 重启计算服务
执行指令:
service nova-compute restart
c. 添加 compute node 到 cell 数据库
注意:本 "c" 章节
的的命令都在 controller 节点中执行
,而当前位于 compute 节点
-
- 加载 admin-openrc 文件
执行指令:
. admin-openrc
-
- 确认数据库中是否有计算主机
执行指令:
openstack compute service list --service nova-compute
输出示例:
+----+-------+--------------+------+-------+---------+----------------------------+
| ID | Host | Binary | Zone | State | Status | Updated At |
+----+-------+--------------+------+-------+---------+----------------------------+
| 1 | node1 | nova-compute | nova | up | enabled | 2017-04-14T15:30:44.000000 |
+----+-------+--------------+------+-------+---------+----------------------------+
-
- 找到计算主机
执行指令:
su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova
继续在 compute 节点中执行:
Networking service – neutron installation
a. 安装组件
执行指令:
apt install neutron-openvswitch-agent -y
b. 配置普通组件
-
- 编辑文件
执行指令:
vim /etc/neutron/neutron.conf
在 [DEFAULT] 中修改为以下内容:
[DEFAULT]
transport_url = rabbit://openstack:123456@controller
auth_strategy = keystone
123456
是用户 admin 的密码,
名为 RABBIT_PASS
删除 [keystone_authtoken] 中所有其他内容,再添加以下内容:
[keystone_authtoken]
www_authenticate_uri = http://controller:5000
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = service
username = neutron
password = 123456
123456
是用户 neutron 的密码,
名为 NEUTRON_PASS
在 [oslo_concurrency] 中修改为以下内容:
[oslo_concurrency]
lock_path = /var/lib/neutron/tmp
在 [database] 中修改为以下内容:
删除 [database] 部分中所有的内容
c. 配置Open vSwitch agent
-
- 编辑文件
执行指令:
vim /etc/neutron/plugins/ml2/openvswitch_agent.ini
在 [ovs] 中修改为以下内容:
[ovs]
bridge_mappings = provider:ens33
ens33
名为 PROVIDER_INTERFACE_NAME
在 [securitygroup] 中修改为以下内容:
[securitygroup]
enable_security_group = true
firewall_driver = openvswitch
#firewall_driver = iptables_hybrid
-
- 验证以下值是否都设为 1
执行指令:
sysctl net.bridge.bridge-nf-call-iptables
sysctl net.bridge.bridge-nf-call-ip6tables
输出:
root@compute:/home/cbz# sysctl net.bridge.bridge-nf-call-iptables
net.bridge.bridge-nf-call-iptables = 1
root@compute:/home/cbz# sysctl net.bridge.bridge-nf-call-ip6tables
net.bridge.bridge-nf-call-ip6tables = 1
d. 为使用网络服务配置 compute 服务
- 编辑文件
执行指令:
vim /etc/nova/nova.conf
在 [neutron] 中修改为以下内容:
[neutron]
auth_url = http://controller:5000
auth_type = password
project_domain_name = Default
user_domain_name = Default
region_name = RegionOne
project_name = service
username = neutron
password = 123456
123456
是用户 neutron 的密码,
名为 NEUTRON_PASS
e. 完成安装
-
- 重启 compute 服务
执行指令:
service nova-compute restart
需要等一会儿
-
- 重启 Linux bridge agent
执行指令:
service neutron-openvswitch-agent restart