12.OpenStack镜像和存储服务配置
配置镜像服务
编辑 /etc/glance/glance-api.conf与/etc/glance/glance-registry.conf添加以下内容
[DEFAULT] notification_driver = messagingv2 rpc_backend = rabbit rabbit_host = controller rabbit_password = Abcd1234
重启服务
systemctl restart openstack-glance-api.service openstack-glance-registry.service
配置块存储服务
编辑/etc/cinder/cinder.conf
vim /etc/cinder/cinder.conf
[DEFAULT] control_exchange = cinder notification_driver = messagingv2
重启服务
systemctl restart openstack-cinder-api.service openstack-cinder-scheduler.service
systemctl restart openstack-cinder-volume.service
配置对象存储服务
添加ceilometer用户
source admin-openrc.sh
keystone role-create --name ResellerAdmin
keystone user-role-add --tenant service --user ceilometer \
--role ResellerAdmin的id号
编辑/etc/swift/proxy-server.conf
vim /etc/swift/proxy-server.conf
[filter:keystoneauth]
operator_roles = admin,_member_,ResellerAdmin
[pipeline:main]
pipeline = authtoken cache healthcheck keystoneauth proxy-logging ceilometer proxy-server
[filter:ceilometer]
use = egg:ceilometer#swift
log_level = WARN
加入SWIFT系统用户并重启服务
usermod -a -G ceilometer swift
systemctl restart openstack-swift-proxy.service
验证
source admin-openrc.sh
ceilometer meter-list
glance image-download "cirros-0.3.3-x86_64" > cirros.img
ceilometer meter-list
ceilometer statistics -m image.download -p
安装数据库服务
安装程序包
yum install -y openstack-trove python-troveclient
创建用户
source ~/admin-openrc.sh
keystone user-create --name trove --pass Abcd1234
keystone user-role-add --user trove --tenant service --role admin
编辑trove.conf trove-taskmanager.conf trove-conductor.conf
[DEFAULT] log_dir = /var/log/trove trove_auth_url = http://controller:5000/v2.0 nova_compute_url = http://controller:8774/v2 cinder_url = http://controller:8776/v1 swift_url = http://controller:8080/v1/AUTH_ sql_connection = mysql://trove:toyo123@controller/trove notifier_queue_hostname = controller rpc_backend = rabbit rabbit_host = controller rabbit_password = Abcd1234
获取 api-paste.ini 保存在 /etc/trove目录下
wget http://git.openstack.org/cgit/openstack/trove/plain/etc/trove/api-paste.ini?h=stable/juno mv api-paste.ini\?h\=stable%2Fjuno /etc/trove/api-paste.ini
编辑api-paste.ini
vim /etc/trove/api-paste.ini [filter:authtoken] auth_uri = http://controller:5000/v2.0 identity_uri = http://controller:35357 admin_user = trove admin_password = Abcd1234 admin_tenant_name = service signing_dir = /var/cache/trove
编辑trove.conf
mv /etc/trove/trove.conf /etc/trove/trove.conf_bak vim /etc/trove/trove.conf [DEFAULT] default_datastore = mysql # Config option for showing the IP address that nova doles out add_addresses = True network_label_regex = ^NETWORK_LABEL$ api_paste_config = /etc/trove/api-paste.ini
编辑/etc/trove/trove-taskmanager.conf
mv /etc/trove/trove-taskmanager.conf /etc/trove/trove-taskmanager.conf_bak vim /etc/trove/trove-taskmanager.conf [DEFAULT] nova_proxy_admin_user = admin nova_proxy_admin_pass = Abcd1234 nova_proxy_admin_tenant_name = service taskmanager_manager = trove.taskmanager.manager.Manager
配置数据库
mysql -uroot -ptoyo123
CREATE DATABASE trove;
GRANT ALL PRIVILEGES ON trove.* TO trove@'localhost' \
IDENTIFIED BY 'toyo123';
GRANT ALL PRIVILEGES ON trove.* TO trove@'%' \
IDENTIFIED BY 'toyo123';
填充数据库
su -s /bin/sh -c "trove-manage db_sync" trove
su -s /bin/sh -c "trove-manage datastore_update mysql ''" trove
创建并编辑trove-guestagent.conf
vim /etc/trove/trove-guestagent.conf [DEFAULT] rabbit_host = controller rabbit_password = Abcd1234 nova_proxy_admin_user = admin nova_proxy_admin_pass = Abcd1234 nova_proxy_admin_tenant_name = service trove_auth_url = http://controller:35357/v2.0
更新数据存储使用新的图像,使用 trove-manage管理的命令
trove-manage --config-file /etc/trove/trove.conf datastore_version_update \
mysql mysql-5.5 mysql glance_image_ID mysql-server-5.5
注册服务
source ~/admin-openrc.sh
keystone service-create --name trove --type database \
--description "OpenStack Database Service"
keystone endpoint-create \
--service-id $(keystone service-list | awk '/ trove / {print $2}') \
--publicurl http://controller:8779/v1.0/%\(tenant_id\)s \
--internalurl http://controller:8779/v1.0/%\(tenant_id\)s \
--adminurl http://controller:8779/v1.0/%\(tenant_id\)s \
--region regionOne
启动服务并设置开机自启动
systemctl enable openstack-trove-api.service openstack-trove-taskmanager.service \
openstack-trove-conductor.service
systemctl restart openstack-trove-api.service openstack-trove-taskmanager.service \
openstack-trove-conductor.service
验证
source ~/demo-openrc.sh
trove list
12.OpenStack镜像和存储服务配置的更多相关文章
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 三
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 二
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
- OpenStack核心组件-cinder存储服务
1. cinder 介绍 Block Storage 操作系统获得存储空间的方式一般有两种: 1) 通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区.格式化.创建文 ...
- OpenStack组件——cinder存储服务
1.cinder 介绍 1)理解 Block Storage 操作系统获得存储空间的方式一般有两种: (1)通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区.格式化.创建文 ...
- 云计算OpenStack核心组件---cinder存储服务(10)
一.cinder介绍 1.Block Storage 操作系统获得存储空间的方式一般有两种: (1)通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区.格式化.创建文件系统: ...
- openstack核心组件——cinder存储服务(11)
一.cinder 介绍: 理解 Block Storage 操作系统获得存储空间的方式一般有两种: 通过某种协议(SAS,SCSI,SAN,iSCSI 等)挂接裸硬盘,然后分区.格式化.创建文件系 ...
- openstack搭建之-基础服务配置(7)
基础环境准备,所需服务器及说明 172.16.2.51 base.test.com 基础服务节点 172.16.2.52 ctrl.test.com 控制节点 172.16.2.53 ...
随机推荐
- ASP.NET 使用 MySQL
基本是通用的 C#与MySQL的交互, 先添加MySQL.Data.dll(位于MySQL安装目录下的Connector NET 8.0\Assemblies${version}目录下)引用, 之后代 ...
- HDFS HA(High Availability)高可用性
HDFS HA(High Availability)高可用性 参考文献: 官方文档 全文翻译 Hadoop组件之-HDFS(HA实现细节) 这张图片的个人理解 由于NameNode在Hadoop1只有 ...
- HDU 5293 Tree chain problem 树形DP
题意: 给出一棵\(n\)个节点的树和\(m\)条链,每条链有一个权值. 从中选出若干条链,两两不相交,并且使得权值之和最大. 分析: 题解 #include <cstdio> #incl ...
- android onNewIntent 为什么要在onNewIntent的时候要显示的去调用setIntent
原因: 当调用到onNewIntent(intent)的时候,需要在onNewIntent() 中使用setIntent(intent)赋值给Activity的Intent.否则,后续的getInte ...
- 剑指Offer - 九度1523 - 从上往下打印二叉树
剑指Offer - 九度1523 - 从上往下打印二叉树2013-12-01 00:35 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 输入: 输入可能包含多个测试样例,输入以E ...
- 【java下午茶系列】java三重奏之封装
java中的封装.继承.多态可谓是踏入这一行业的必经之槛,诸多新人在不明就里的情况下将其各种概念背的是滚瓜烂熟.即便是工作多年之后,也不见得能说出个所以然,或许冥冥之中已经写过无数封装的代码,只是 ...
- 风格指南--C++
0.避免多重包含是学编程时基本的要求; 1. 前置声明是为了降低编译依赖,防止修改一个头文件引发多米诺效应; 2. 内联函数的合理使用可提高代码执行效率; 3. ‐inl.h 可提高代码可读性 (一般 ...
- java开发环境的安装
1.Java是一门面向对象的编程语言,由sun公司开发的,目前公司已经被oracle公司收购.那么作为一门编程语言,它有自己的编程环境.并不是你编写了java代码后,就能在任何平台上运行,它的运行有自 ...
- JavaScript里面之dom操作
1.dom之选择元素 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...
- SimpleMDE编辑器 + 提取HTML + 美化输出
开发步骤: 1. 安装和引入(npm或者bower都可以) $ bower install simplemde --save //css - debug目录下为开发版本 <link rel=&q ...