004-OpenStack-计算服务
OpenStack-计算服务
【基于此文章的环境】点我快速打开文章
1、控制节点(controller)
1.1 创库授权 nova_api, nova, 和 nova_cell0
mysql
CREATE DATABASE nova_api;
CREATE DATABASE nova;
CREATE DATABASE nova_cell0;
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';
GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' \
IDENTIFIED BY 'NOVA_DBPASS';
GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' \
IDENTIFIED BY 'NOVA_DBPASS';
用合适的密码代替
NOVA_DBPASS。


1.2 创建服务证书
1. 创建 nova 用户
openstack user create --domain default --password NOVA_PASS nova
用合适的密码代替
NOVA_PASS。


2. 给 nova 用户添加 admin 角色
openstack role add --project service --user nova admin


3. 创建 nova 服务实体
openstack service create --name nova \
--description "OpenStack Compute" compute


4. 创建 Compute API 服务端点
openstack endpoint create --region RegionOne \
compute public http://controller:8774/v2.1
openstack endpoint create --region RegionOne \
compute internal http://controller:8774/v2.1
openstack endpoint create --region RegionOne \
compute admin http://controller:8774/v2.1


5. 创建 Placement 服务用户
openstack user create --domain default --password PLACEMENT_PASS placement
用合适的密码代替
PLACEMENT_PASS。


6. 使用 admin 角色将 Placement 用户添加到服务项目
openstack role add --project service --user placement admin


7. 在服务目录中创建 Placement API 条目
openstack service create --name placement --description "Placement API" placement


8. 创建 Placement API 服务端点
openstack endpoint create --region RegionOne placement public http://controller:8778
openstack endpoint create --region RegionOne placement internal http://controller:8778
openstack endpoint create --region RegionOne placement admin http://controller:8778


1.3 安装配置 nova
1. 安装其软件包
yum install openstack-nova-api openstack-nova-conductor \
openstack-nova-console openstack-nova-novncproxy \
openstack-nova-scheduler openstack-nova-placement-api -y &>/dev/null
echo $?


2. 修改配置文件
1. 备份初始配置文件,然后重定向写入配置文件
cp /etc/nova/nova.conf{,.bak}
egrep -v '^$|#' /etc/nova/nova.conf.bak >/etc/nova/nova.conf


2. 编辑文件 /etc/nova/nova.conf 并完成如下动作:
vim /etc/nova/nova.conf
- 在
[DEFAULT]部分,只启用计算和元数据API
[DEFAULT]
# ...
enabled_apis = osapi_compute,metadata
- 在
[api_database]和[database]部分,配置数据库的连接
[api_database]
# ...
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api
[database]
# ...
connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova
用你为
Compute数据库选择的密码来代替NOVA_DBPASS。
- 在
[DEFAULT]部分,配置RabbitMQ消息队列访问权限
[DEFAULT]
# ...
transport_url = rabbit://openstack:RABBIT_PASS@controller
用你在
RabbitMQ中为openstack选择的密码替换RABBIT_PASS。
- 在
[api]和[keystone_authtoken]部分中,配置身份服务访问
[api]
# ...
auth_strategy = keystone
[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 = NOVA_PASS
使用你在身份认证服务中设置的
nova用户的密码替换NOVA_PASS。
- 在
[DEFAULT]部分,配置my_ip来使用控制节点的管理接口的IP地址。
[DEFAULT]
# ...
my_ip = 10.0.0.11
- 在
[DEFAULT]部分,启用网络服务支持
[DEFAULT]
# ...
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
- 在
[vnc]部分,配置VNC代理使用控制节点的管理接口IP地址
[vnc]
enabled = true
# ...
vncserver_listen = $my_ip
vncserver_proxyclient_address = $my_ip
- 在
[glance]区域,配置镜像服务API的位置:
[glance]
# ...
api_servers = http://controller:9292
- 在
[oslo_concurrency]部分,配置锁路径
[oslo_concurrency]
# ...
lock_path = /var/lib/nova/tmp
- 在
[placement]部分,配置Placement API
[placement]
# ...
os_region_name = RegionOne
project_domain_name = Default
project_name = service
auth_type = password
user_domain_name = Default
auth_url = http://controller:35357/v3
username = placement
password = PLACEMENT_PASS
替换
PLACEMENT_PASS为你placement在Identity服务中为用户选择的密码


3. 编辑文件 /etc/httpd/conf.d/00-nova-placement-api.conf 并完成如下动作:
cp /etc/httpd/conf.d/00-nova-placement-api.conf{,.bak}
vim /etc/httpd/conf.d/00-nova-placement-api.conf
#在16行</VirtualHost>这一行上面增加以下内容
<Directory /usr/bin>
<IfVersion >= 2.4>
Require all granted
</IfVersion>
<IfVersion < 2.4>
Order allow,deny
Allow from all
</IfVersion>
</Directory>


4. 重启 Httpd 服务
systemctl restart httpd


3. 同步数据库(创表)
su -s /bin/sh -c "nova-manage api_db sync" nova
su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
su -s /bin/sh -c "nova-manage db sync" nova


检查
nova-manage cell_v2 list_cells


4. 启动和自动启动
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


4. 检查
openstack compute service list


2、计算节点(compute1)
2.1 安装配置 nova
1. 安装其软件包
yum install openstack-nova-compute -y &>/dev/null
echo $?


2. 修改配置文件
1. 备份初始配置文件,然后重定向写入配置文件
cp /etc/nova/nova.conf{,.bak}
egrep -v '^$|#' /etc/nova/nova.conf.bak >/etc/nova/nova.conf


2. 编辑文件 /etc/nova/nova.conf 并完成如下动作:
vim /etc/nova/nova.conf
- 在
[DEFAULT]部分,只启用计算和元数据API
[DEFAULT]
# ...
enabled_apis = osapi_compute,metadata
- 在
[DEFAULT]部分,配置RabbitMQ消息队列访问权限
[DEFAULT]
# ...
transport_url = rabbit://openstack:RABBIT_PASS@controller
用你在
RabbitMQ中为openstack选择的密码替换RABBIT_PASS。
- 在
[api]和[keystone_authtoken]部分中,配置身份服务访问
[api]
# ...
auth_strategy = keystone
[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 = NOVA_PASS
使用你在身份认证服务中设置的
nova用户的密码替换NOVA_PASS。
- 在
[DEFAULT]部分,配置my_ip来使用控制节点的管理接口的IP地址。
[DEFAULT]
# ...
my_ip = 10.0.0.31
- 在
[DEFAULT]部分,启用网络服务支持
[DEFAULT]
# ...
use_neutron = True
firewall_driver = nova.virt.firewall.NoopFirewallDriver
- 在
[vnc]部分,启用并配置远程控制台访问
[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的位置:
[glance]
# ...
api_servers = http://controller:9292
- 在
[oslo_concurrency]部分,配置锁路径
[oslo_concurrency]
# ...
lock_path = /var/lib/nova/tmp
- 在
[placement]部分,配置Placement API
[placement]
# ...
os_region_name = RegionOne
project_domain_name = Default
project_name = service
auth_type = password
user_domain_name = Default
auth_url = http://controller:35357/v3
username = placement
password = PLACEMENT_PASS
替换
PLACEMENT_PASS为你placement在Identity服务中为用户选择的密码


3. 启动和自启动
systemctl enable libvirtd.service openstack-nova-compute.service
systemctl start libvirtd.service openstack-nova-compute.service


4. 验证操作
在控制节点上操作(controller)
openstack compute service list


发现计算节点,每添加新节点,则需要执行以下操作:
su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova


【后续文章】点我快速打开文章
【本文图片下载地址】【002-OpenStack】点我快速打开分享(若异常,请私信,万分感谢) 【提取码:kse1 】
今天你学习了吗?若有疑问,请留言、私信或加QQ群:647033350,大家一起进步吧!
004-OpenStack-计算服务的更多相关文章
- 7.添加OpenStack计算服务
添加计算服务 安装和配置控制器节点 创建数据库 mysql -uroot -ptoyo123 CREATE DATABASE nova; GRANT ALL PRIVILEGES ON nova.* ...
- 安装OpenStack计算服务(nova)
1. 配置数据库 数据库安装在控制节(controller)点上 $ mysql -u root -p 2.创建 glance 数据库 CREATE DATABASE nova; GRANT ALL ...
- 云计算管理平台之OpenStack计算服务nova
一.nova简介 nova是openstack中的计算服务,其主要作用是帮助我们在计算节点上管理虚拟机的核心服务:这里的计算节点就是指用于提供运行虚拟机实例的主机,通常像这种计算节点有很多台,那么虚拟 ...
- OpenStack 计算服务 Nova计算节点部署(八)
如果使用vmware虚拟机进行部署,需要开启虚拟化:如果是服务器需要在bios上开启. nova计算节点IP是192.168.137.12 环境准备 安装时间同步 yum install ntpdat ...
- OpenStack 计算服务 Nova介绍和控制节点部署(七)
介绍 Nova是openstack最早的两块模块之一,另一个是对象存储swift.在openstack体系中一个叫做计算节点,一个叫做控制节点.这个主要和nova相关,我们把安装为计算节点nova-c ...
- OpenStack 计算服务 Nova计算节点部署 (九)
如果使用vmware虚拟机进行部署,需要开启虚拟化:如果是服务器需要在bios上开启. Nova Compute nova-compute 一般运行在计算节点上,通过Messages Queue接收并 ...
- OpenStack 计算服务 Nova介绍和控制节点部署 (八)
一)nova在keystone上服务注册 1.1创建nova务实体 [root@controller ~]# source admin-openrc [root@controller ~]# open ...
- 【openstack N版】——计算服务nova
一.openstack计算服务nova 1.1nova介绍 Nova是openstack最早的两块模块之一,另一个是对象存储swift.在openstack体系中一个叫做计算节点,一个叫做控制节点.这 ...
- [ Openstack ] Openstack-Mitaka 高可用之 计算服务(Nova)
目录 Openstack-Mitaka 高可用之 概述 Openstack-Mitaka 高可用之 环境初始化 Openstack-Mitaka 高可用之 Mariadb-Galera集群 ...
- openstack安装部署——计算服务(控制节点&计算节点)前言
1.前言Openstack计算服务通过认证服务获取认证:通过镜像服务获取镜像:通过仪表盘提供的用户界面与用户交互.镜像的存取受工程和用户的限制,配额受工程的限制(例如不同工程允许虚拟机实例数量不同). ...
随机推荐
- postman---postman文件夹介绍以及批量执行用例
我们在做测试的过程中,都会多次请求接口,都会把接口保存下来,方便下次直接请求,节省时间不用每次都重新输入,我们一起看下Postman如何保存接口会话 保存请求作用 Postman可以将各个请求组合保存 ...
- C学习笔记(5)--- 指针第二部分,字符串,结构体。
1. 函数指针(function pointer): 函数指针是指向函数的指针变量. 通常我们说的指针变量是指向一个整型.字符型或数组等变量,而函数指针是指向函数. 函数指针可以像一般函数一样,用于调 ...
- 平方,立方,n次方,上标/下标
选种你需要的上标,如2,右键设置单元格格式:选择上标,确定即可: 最终效果:
- C++编程思想 - 对象的创建和使用
前言 用户定义的数据类型(data type)或类(class),是C++区别于传统过程型语言的地方. 通常将创建好的类库存放在库(library)中. 本篇会使用几个C++类库(class libr ...
- 浅谈C++ STL queue 容器
浅谈C++ STL queue 容器 本篇随笔简单介绍一下\(C++STL\)中\(queue\)容器的使用方法和常见的使用技巧.\(queue\)容器是\(C++STL\)的一种比较基本的容器.我们 ...
- Ajax常用例子 Post 和 Get
1. 前台:Post$.ajax({ url: "@Url.Action("Save", "UserFun")", type: " ...
- C++ 数组遍历的两种方式
C++ 数组遍历的两种方式: #include <iostream> using namespace std; int main() { // 一维数组 ] = {, , , , }; / ...
- [译][ABP vNext]ABP CLI,v0.18版本的新模板和其他功能
ABP CLI,v0.18版本的新模板和其他功能 ABP v0.18已发布, 包含解决的70+个issue,500+次提交 网站更改 abp.io网站完全更新以突出ABP框架的目标和重要功能.文档和博 ...
- LOJ6029 [雅礼集训2017]市场
看到区间整除操作,直觉是不会除太多次就变成全 \(1\). 然而现在还有加操作. 我也不知道为什么,当一个节点的 \(\lfloor\frac{mx}{d}\rfloor=\lfloor\frac{m ...
- MySQL实战45讲学习笔记:第四十一讲
一.本节概述 我在上一篇文章最后,给你留下的问题是怎么在两张表中拷贝数据.如果可以控制对源表的扫描行数和加锁范围很小的话,我们简单地使用 insert … select 语句即可实现. 当然,为了避免 ...