(十二)OpenStack的Horizon和cinder的安装配置

news/2024/7/4 3:44:34

 

 

1 Horizon的安装配置

(1)安装仪表板组件

yum install openstack-dashboard httpd mod_wsgi memcached python-memcached -y

(2)配置仪表板
编辑/etc/openstack-dashboard/local_settings文件并完成下列配置

#a.配置dashboard使用controller节点上的OpenStack服务
OPENSTACK_HOST = "controller.nice.com"

#b.设置允许来自所有网络的主机访问dashboard
ALLOWED_HOSTS=['controller.nice.com', '*']

#c.配置memcached会话存贮服务(将原有CACHES区域注释)
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211',
}
}

#d.(可选)配置时区
TIME_ZONE = "Asia/Shanghai"

(3)完成安装
1、在RHEL或CentOS上,配置SElinux去允许web服务器访问OpenStack服务(如果你没关SElinux):

setsebool -P httpd_can_network_connecton

2.修改相关文件归属,使dashboardCSS可以被加载。

chown -R apache:apache /usr/share/openstack-dashboard/static

3.启动web服务和会话保存服务,并设置开机自动启动。

systemctl enable httpd.service memcached.service
systemctl start httpd.service memcached.service

(4)验证
1、访问dashboard,在浏览器输入:http://controller.nice.com/dashboard
2、使用admin或demo用户登录

2 cinder的安装配置

2.1 Block Storage(cinder)介绍

  1. OpenStack块存储服务为云主机提供块存储设备。支持不同后端
  2. The Block Storage API和scheduler服务运行在controller节点
  3. The volume service运行在一个或多个存储节点
  4. 存储节点可以通过本地磁盘、SAN/NAS等后端设备为云主机提供卷存储
  5. cinder-api允许API请求,并路由他们到cinder-volume
  6. cinder-volume直接与块存储服务交互。处理像cinder-scheduler这样的服务。通过消息队列相互通信。支持多种存储类型
  7. cinder-scheduler daemon选择最优的存储节点创建卷。类似于novascheduler
  8. Messagin queue在快存储进程中传递消息。

2.2 Block Storage(cinder)安装配置

2.2.1 安装并配置controller节点

(1)配置先决条件
     1、创建数据库,并完成下列步骤:

#a.以数据库管理员root的身份连接数据库:
mysql -u root -p

#b.创建cinder数据库
CREATE DATABASE cinder;

#c.创建数据库用户cinder,并授予cinder用户对cinder数据库的完全控制权限:
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'CINDER_DBPASS';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'CINDER_DBPASS';

#d.退出数据库连接

2、执行admin环境变量脚本

source admin.sh

3、在认证服务中创建块存储服务认证信息,完成下列步骤:

#a.创建cinder用户
keystone user-create --name cinder --pass CINDER_PASS

#b.链接cinder用户到service租户和admin角色
keystone user-role-add --user cinder --tenant service --role admin

#c.创建cinder服务
keystone service-create --name cinder --type volume --description "OpenStackBlock Storage"
keystone service-create --name cinderv2 --type volumev2 --description "OpenStackBlock Storage"

#d.创建块存储服务端点
# keystone endpoint-create \
--service-id $(keystone service-list | awk '/ volume / {print $2}') \
--publicurl http://controller.nice.com:8776/v1/%\(tenant_id\)s \
--internalurl http://controller.nice.com:8776/v1/%\(tenant_id\)s \
--adminurl http://controller.nice.com:8776/v1/%\(tenant_id\)s \
--region regionOne

# keystone endpoint-create \
--service-id $(keystone service-list | awk '/ volumev2 / {print $2}') \
--publicurl http://controller.nice.com:8776/v2/%\(tenant_id\)s \
--internalurl http://controller.nice.com:8776/v2/%\(tenant_id\)s \
--adminurl http://controller.nice.com:8776/v2/%\(tenant_id\)s \
--region regionOne

(2)安装并配置块存储控制组件

1、安装软件包

yum install openstack-cinder python-cinderclient python-oslo-db

2、编辑/etc/cinder/cinder.conf文件并完成下列操作:

#a.编辑[database]小节,配置数据库连接:
[database]
...
connection=mysql://cinder:CINDER_DBPASS@controller.nice.com/cinder

#b.编辑[DEFAULT]小节,配置RabbitMQ消息代理访问:
[DEFAULT]
...
rpc_backend=rabbit
rabbit_host=controller.nice.com
rabbit_password=guest

#c.编辑[DEFAULT]和[keystone_authtoken]小节,配置认证服务访问:
[DEFAULT]
...
auth_strategy=keystone
[keystone_authtoken]
...
auth_uri=http://controller.nice.com:5000/v2.0
identity_uri=http://controller.nice.com:35357
admin_tenant_name=service
admin_user=cinder
admin_password=CINDER_PASS

#d.编辑[DEFAULT]小节,配置my_ip选项使用controller节点的控制端口ip:
[DEFAULT]
...
my_ip=192.168.119.181

#e.(可选)在[DEFAULT]小节中配置详细日志输出。方便排错。
[DEFAULT]
...
verbose=True

3、初始化块存储服务数据库

su -s /bin/sh -c "cinder-manage db sync" cinder

(3)完成安装
启动块存储服务并设置开机自动启动:

systemctl enable openstack-cinder-api.service openstack-cinder-scheduler.service
systemctl start openstack-cinder-api.service openstack-cinder-scheduler.service

2.2.2 安装并配置block节点

(1)配置先决条件
1、添加一个新的硬盘(如:sdb),并分将全部空间分成一个主分区。
2、安装LVM软件包(根据自身情况)
# yum install lvm2

3、启动LVM服务并这只开机自动启动(根据自身情况)

systemctl enable lvm2-lvmetad.service
systemctl start lvm2-lvmetad.service

4、创建物理卷/dev/sdb

pvcreate /dev/sdb

5、创建卷组cinder-volumes(名字不要改):

vgcreate cinder-volumes /dev/sdb

6、编辑/etc/lvm/lvm.conf文件,使系统只扫描启用LVM的磁盘。防止识别其他非LVM磁盘对块存储服务造成影响。
编辑devices小节,添加过滤器允许/dev/sdb磁盘,拒绝其他设备。

devices {
...
filter = [ "a/sdb/", "r/.*/"]
警告:如果你的系统磁盘使用了LVM,则必须添加系统盘到过滤器中:
filter = [ "a/sda", "a/sdb/", "r/.*/"]
同样,如果conpute节点的系统盘也使用了LVM,则也需要修改/etc/lvm/lvm.conf文件。并添加过滤器。
filter = [ "a/sdb/", "r/.*/"]

(2)安装并配置块存储卷组件

1、安装软件包

yum install openstack-cinder targetcli python-oslo-db MySQL-python

2、编辑/etc/cinder/cinder.conf文件并完成下列操作:

#a.编辑[database]小节,配置数据库访问:
[database]
...
connection=mysql://cinder:CINDER_DBPASS@controller.nice.com/cinder

#b.编辑[DEFAULT]小节,配置RabbitMQ消息代理访问:
[DEFAULT]
...
rpc_backend=rabbit
rabbit_host=controller.nice.com
rabbit_password=guest

#c.编辑[DEFAULT]和[keystone_authtoken]小节,配置认证服务访问:
[DEFAULT]
...
auth_strategy=keystone
[keystone_authtoken]
...
auth_uri=http://controller.nice.com:5000/v2.0
identity_uri=http://controller.nice.com:35357
admin_tenant_name=service
admin_user=cinder
admin_password=CINDER_PASS

#d.编辑[DEFAULT]小节,配置my_ip选项:
[DEFAULT]
...
my_ip=192.168.119.182

#e.编辑[DEFAULT]小节,配置镜像服务器位置:
[DEFAULT]
...
glance_host=controller.nice.com

#f.编辑[DEFAULT]小节,配置块存储服务使用lioadmiSCSI服务
[DEFAULT]
...
iscsi_helper=lioadm

#g.(可选)在[DEFAULT]小节中配置详细日志输出。方便排错。
[DEFAULT]
...
verbose=True

(3)完成安装
启动块存储volume服务和iSCSI服务,并设置开机自动启动。

systemctl enable openstack-cinder-volume.service target.service
systemctl start openstack-cinder-volume.service target.service

(4)验证(在controller节点完成下列操作)
1、执行admin环境变量脚本
# source admin.sh
2、列出服务组件确认每个进程启动成功
# cinder service-list
3、执行demo用户环境变量脚本
# source demo.sh

4、创建1GB的卷
# cinder create --display-name demo-volume1 1
5、确认卷已创建并可用
# cinder list

 

 


http://www.niftyadmin.cn/n/4076694.html

相关文章

(一)走进Linux世界(安装Centos8,初始化生产环境,GNU bash)

声明: 本博主正在备考RHCE8,所以接下来的学习环境都在centos8下面。考试利用的是Redhat8系统,实际上和Centos8并没有多少区别。只是Redhat收费而已。所以博主打算先系统的学习Linux,复习巩固以往学习的知识,顺便整理下…

Android——Activity练习

manifests里的AndroidManifest.xml <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"package"com.example.chenshuai.test"><applicationandroid:allowB…

ASP之对象总结

如果你使用过大部分&#xff0c;那么你的ASP功力应该是非常高的了 ADO对象(太常用了)&#xff1a;ConnectionCommandRecordSetRecordStream ASP支持的对象太多了&#xff0c;你可以自己写COM组件&#xff0c;下面是我们经常使用的&#xff1a;Server.CreateObject("Scri…

Go 微服务:基于 RabbitMQ 和 AMQP 进行消息传递

欢迎大家前往腾讯云社区&#xff0c;获取更多腾讯海量技术实践干货哦~ 本文来自云社区翻译社&#xff0c;由Tnecesoc编译。介绍 微服务就是将应用程序的业务领域划分为具有明确范围的不同场景&#xff0c;并以分离的流程来运行这些场景&#xff0c;使得其中跨边界的任何持久化的…

默认的Sublime 3中没有Package Control

https://packagecontrol.io/installation#st3 &#xff08;官方&#xff09; 原来Subl3安装Package Control很麻烦&#xff0c;现在简单的方法来了 一、简单的安装方法 使用Ctrl快捷键或者通过View->Show Console菜单打开命令行&#xff0c;粘贴如下代码&#xff1a; import…

用ASP编写计数器的优化方法

很多的网站都有记数器&#xff0c;用来记录网站的访问量&#xff0c;这给网站管理员即时了解本网站的运行及访问情况提供了很多的方便。 笔者研究过很多用ASP编写的计数器程序&#xff0c;发现大部份都是在一个访客访问站点的时候就打文本文件或数据库&#xff0c;读取以前的计…

(二)Linux文件管理,用户管理及文件权限管理(附高级权限)

CONTENTS 1 Linux文件管理 1.1 Linux目录结构 1.2 Linux文件类型 1.3 查看命令的类型 1.4 查看文件的详细属性 1.5 文件的一些基本操作 2 Linux用户管理 2.1 组的管理 2.2 用户的管理 2.3 sudo普通用户提权 3、文件权限管理 3.1 权限设置UGO 3.2 基本权限ACL 3.3 …

IMB MQ 报错问题记录

2019独角兽企业重金招聘Python工程师标准>>> 还有一些没有上传&#xff0c;可以去http://download.csdn.net/detail/wxmiy/9465179下载 转载于:https://my.oschina.net/yzbty32/blog/639415