openstack pike安装Cinder块存储--centos 7.4 (九)

一、控制节点(192.168.26.240)

1.创建Cinder数据库、用户

create database cinder;
grant all privileges on cinder.* to 'cinder'@'localhost' identified by 'cinder';
grant all privileges on cinder.* to 'cinder'@'%' identified by 'cinder';
flush privileges;
2.keystone创建cinder用户、服务、API,块设备存储服务要求两个服务实体。

source admin-openstack.sh
openstack user create --domain default --password=cinder cinder
openstack role add --project service --user cinder admin
openstack service create --name cinderv2   --description "OpenStack Block Storage" volumev2
openstack service create --name cinderv3   --description "OpenStack Block Storage" volumev3
openstack endpoint create --region RegionOne   volumev2 public http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne   volumev2 internal http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne   volumev2 admin http://controller:8776/v2/%\(project_id\)s
openstack endpoint create --region RegionOne   volumev3 public http://controller:8776/v3/%\(project_id\)s
openstack endpoint create --region RegionOne   volumev3 internal http://controller:8776/v3/%\(project_id\)s
openstack endpoint create --region RegionOne   volumev3 admin http://controller:8776/v3/%\(project_id\)s
3.安装Cinder组件

yum install openstack-cinder -y
yum install nfs-utils -y #NFS

4.配置文件

# vi /etc/cinder/cinder.conf
[DEFAULT]
auth_strategy = keystone
log_dir = /var/log/cinder
state_path = /var/lib/cinder
glance_api_servers = http://controller:9292
transport_url = rabbit://openstack:openstack@controller

[database]
connection = mysql+pymysql://cinder:cinder@controller/cinder

[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 = cinder
password = cinder

[oslo_concurrency]
lock_path = /var/lib/cinder/tmp
echo '
[cinder]
os_region_name = RegionOne
'>>/etc/nova/nova.conf
5.始化数据库

su -s /bin/sh -c "cinder-manage db sync" cinder
6.启动服务

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

7.查看服务



二、硬盘配置:一个硬盘500G装系统,一个1000G做存储。(192.168.26.243)

1.查看硬盘:fdisk -l


2.硬盘分区,分两个区。:fdisk /dev/sdb  一个分区NFS存储,一个LVM存储。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): 
Using default response p
分区号 (1-4,默认 1):
起始 扇区 (2048-1953525167,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-1953525167,默认为 1953525167):+300G
分区 1 已设置为 Linux 类型,大小设为 300 GiB

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): 
Using default response p
分区号 (2-4,默认 2):
起始 扇区 (629147648-1953525167,默认为 629147648):
将使用默认值 629147648
Last 扇区, +扇区 or +size{K,M,G} (629147648-1953525167,默认为 1953525167):
将使用默认值 1953525167
分区 2 已设置为 Linux 类型,大小设为 631.5 GiB
3.格式化分区sdb1:300G 

mkfs.xfs -f /dev/sdb1    #NFS存储
mkfs.xfs -f /dev/sdb2    #LVM存储
4.安装配置NFS服务,作为后端存储使用。

yum install nfs-utils rpcbind -y #安装NFS服务
#挂载硬盘
[root@cinder ~]# mkdir -p /data
[root@cinder ~]# mount -t xfs /dev/sdb1 /data
[root@cinder ~]# df -h | grep /dev/sdb1
/dev/sdb1                300G   33M  300G    1% /data
#开机挂载
vi /etc/fstab
/dev/sdb1               /data                   xfs     defaults        0 0    #最后添加
echo "/data *(rw,no_root_squash,sync)">/etc/exports  
systemctl enable rpcbind nfs-server
systemctl restart rpcbind nfs-server
showmount -e localhost
5.安装配置LVM,作为后端存储使用

yum install -y lvm2   #安装lvm2
systemctl enable lvm2-lvmetad.service
systemctl start lvm2-lvmetad.service
#创建LVM物理卷pv与卷组vg
[root@cinder ~]# pvcreate /dev/sdb2
WARNING: xfs signature detected on /dev/sdb2 at offset 0. Wipe it? [y/n]: y
  Wiping xfs signature on /dev/sdb2.
  Physical volume "/dev/sdb2" successfully created.
[root@cinder ~]# vgcreate cinder_lvm01 /dev/sdb2
  Volume group "cinder_lvm01" successfully created
[root@cinder ~]# vgdisplay
  --- Volume group ---
  VG Name               cinder_lvm01
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <631.51 GiB
  PE Size               4.00 MiB
  Total PE              161666
  Alloc PE / Size       0 / 0   
  Free  PE / Size       161666 / <631.51 GiB
  VG UUID               fTSay6-sGOR-aJFZ-BEB4-KPfO-Za4y-t63IIA

三、Cinder存储节点配置(192.168.26.243)

1.组件安装配置

yum install centos-release-openstack-pike -y #安装OpenStack库
yum install -y openstack-cinder targetcli python-keystone lvm2
#配置NFS
echo '192.168.26.243:/data'>/etc/cinder/nfs_shares
chown root:cinder /data
chmod 777 /data
#配置LVM过滤,只接收上面配置的lvm设备/dev/sdb2
sed -i '141a filter = [ "a/sdb2/", "r/.*/"]' /etc/lvm/lvm.conf  #在141行后添加
vi /etc/cinder/cinder.conf
[DEFAULT]
auth_strategy = keystone
log_dir = /var/log/cinder
state_path = /var/lib/cinder
glance_api_servers = http://controller:9292
transport_url = rabbit://openstack:openstack@controller
enabled_backends = lvm,nfs

[database]
connection = mysql+pymysql://cinder:cinder@controller/cinder

[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 = cinder
password = cinder

[oslo_concurrency]
lock_path = /var/lib/cinder/tmp

[lvm]
volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver
iscsi_helper = lioadm
iscsi_protocol = iscsi
volume_group = cinder_lvm01
iscsi_ip_address = 192.168.58.24
volumes_dir = $state_path/volumes
volume_backend_name = lvm01

[nfs]
volume_driver = cinder.volume.drivers.nfs.NfsDriver
nfs_shares_config = /etc/cinder/nfs_shares
nfs_mount_point_base = $state_path/mnt
volume_backend_name = nfs01
#修改权限
chmod 640 /etc/cinder/cinder.conf
chown root:cinder /etc/cinder/*
chown root:cinder /var/lib/cinder/*
#启动Cinder卷服务
systemctl enable openstack-cinder-volume.service target.service
systemctl start openstack-cinder-volume.service target.service
2.验证


3.创建卷,连接卷。







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OpenStack Swift 是一个开源的分布式对象存储系统,它是 OpenStack 项目中的一部分,用于提供大规模、冗余且高可用的存储服务。Swift 的设计目标是作为云存储平台的核心组件,支持在线备份、文件共享和大规模数据存储。 Swift 的理论部分主要包括以下几个关键概念: 1. **三重复制(Three-Tier Architecture)**:Swift 使用一个对象服务器(Object Server)、一个代理服务器(Swift Proxy)和一个帐户区域(Account Container Object)的概念,每个对象都有三份副本分布在不同的节点上,以保证数据的持久性和容错性。 2. **分散式存储**:数据被分成小并分布在整个集群中,这使得数据可以在多个节点之间进行负载均衡,同时也增强了系统的可扩展性。 3. **数据一致性模型**:Swift 使用版本控制和时间戳,确保在多个节点之间对数据的一致性,即使在网络故障或硬件故障的情况下也能保证数据的正确读取。 4. **冗余和故障转移**:通过冗余设计,Swift 可以自动检测和修复故障,同时当某个节点失效时,系统会自动将数据从失效节点迁移到其他正常节点,保证服务的持续性。 5. **API 安全性**:Swift 提供了安全的身份验证和授权机制,通过使用Keystone服务来管理用户和项目访问权限。 相关问题: 1. Swift的主要组成部分是什么? 2. 三重复制如何提高存储系统的可用性? 3. Swift如何处理数据一致性问题? 4. Swift中的Swift Proxy服务器起到什么作用? 5. OpenStack Swift在云计算中的应用场景有哪些?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值