OpenStack组件介绍(2)

cinder

提供块存储服务,管理openstack中的块存储资源,为云平台提供持久的块存储服务,通过驱动的方式可以接入不同种类的后端存储。

cinder对接nfs

关闭防火墙和selinux

root@localhost yum.repos.d\]# systemctl stop firewalld \[root@localhost yum.repos.d\]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. \[root@localhost yum.repos.d\]# vim /etc/selinux/config \[root@localhost yum.repos.d\]# setenforce 0

配置NFS服务

确认nfs主机有没有按照nfs的包

root@nfs \~\]# rpm -qa \| grep nfs libnfsidmap-2.3.3-59.el8.x86_64 sssd-nfs-idmap-2.9.1-2.el8.x86_64 nfs-utils-2.3.3-59.el8.x86_64

如果没有安装,把nfs的包安装上。

yum install -y nfs-utils

启动nfs服务

root@localhost \~\]# systemctl start nfs-server.service \[root@localhost \~\]# systemctl enable nfs-server.service Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

配置共享目录

当前环境,单独准备了一个20G磁盘,作为nfs后端存储来使用。

对这个磁盘分区格式化

root@localhost \~\]# fdisk /dev/sdb

欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。

使用写入命令前请三思。

Device does not contain a recognized partition table

使用磁盘标识符 0x34c3a685 创建新的 DOS 磁盘标签。

命令(输入 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-41943039,默认为 2048):

将使用默认值 2048

Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):

将使用默认值 41943039

分区 1 已设置为 Linux 类型,大小设为 20 GiB

命令(输入 m 获取帮助):w

The partition table has been altered!

Calling ioctl() to re-read partition table.

正在同步磁盘。

root@localhost \~\]# mkfs.ext4 /dev/sdb1

mke2fs 1.42.9 (28-Dec-2013)

文件系统标签=

OS type: Linux

块大小=4096 (log=2)

分块大小=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

1310720 inodes, 5242624 blocks

262131 blocks (5.00%) reserved for the super user

第一个数据块=0

Maximum filesystem blocks=2153775104

160 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000

Allocating group tables: 完成

正在写入inode表: 完成

Creating journal (32768 blocks): 完成

Writing superblocks and filesystem accounting information: 完成

root@localhost \~\]# mkdir /nfs0425 \[root@localhost \~\]# mount /dev/sdb1 /nfs0425/ \[root@localhost \~\]# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

sda 8:0 0 20G 0 disk

├─sda1 8:1 0 1G 0 part /boot

└─sda2 8:2 0 19G 0 part

├─centos-root 253:0 0 17G 0 lvm /

└─centos-swap 253:1 0 2G 0 lvm [SWAP]

sdb 8:16 0 20G 0 disk

└─sdb1 8:17 0 20G 0 part /nfs0425

sr0 11:0 1 4.4G 0 rom /mnt/cdrom

配置共享目录

vim /etc/exports

/nfs0425 192.168.126.0/24(rw,no_root_squash)

重启nfs服务

root@localhost \~\]# systemctl restart nfs-server.service

配置客户端

客户端启动nfs服务

计算节点和控制节点都需要开启nfs服务。

客户端挂载测试

root@controller \~\]# mkdir /nfstest \[root@controller \~\]# mount -t nfs 192.168.126.190:/nfs0425 /nfstest/ \[root@controller \~\]# cd /nfstest/ \[root@controller nfstest\]# ls lost+found \[root@controller nfstest\]# touch 123.txt \[root@controller nfstest\]# echo "1111" \> 123.txt \[root@controller nfstest\]# df -TH

测试完之后,卸载磁盘

root@controller \~\]# umount /nfstest

配置cinder挂载目录

修改权限

root@Controller cinder\]# ll -lathr \[root@Controller cinder\]# chown .cinder cindernfs \[root@Controller cinder\]# ll -lathr \[root@Controller cinder\]# chmod 640 cindernfs \[root@Controller cinder\]# ll -lathr

配置cinder后端存储

root@controller \~\]# vim /etc/cinder/cinder.conf { 436 enabled_backends=lvm,nfs \[nfs

volume_backend_name=nfs

volume_driver=cinder.volume.drivers.nfs.NFSVolumeDriver

nfs_shares_config=/etc/cinder/cindernfs

}

配置结束后,重启服务

root@Controller \~\]# systemctl restart openstack-cinder-\*

glance

提供镜像服务,管理openstack中的镜像,镜像为用户发放实例提供模板选择,通过glance可以上传、下载、查询镜像。

glance对接swift

备份配置文件

3057 stores=file,http,swift

3111 default_store=swift

3982 swift_store_region = RegionOne

4032 swift_store_endpoint_type = publicURL

4090 swift_store_container = glance0411

4118 swift_store_large_object_size = 5120

4142 swift_store_large_object_chunk_size = 200

4160 swift_store_create_container_on_put = True

4182 swift_store_multi_tenant = True

4230 swift_store_admin_tenants = services

4382 swift_store_auth_version = 2

身份认证地址,到环境变量获取。

root@Controller \~\]# cat keystonerc_admin unset OS_SERVICE_TOKEN export OS_USERNAME=admin export OS_PASSWORD='redhat' export OS_REGION_NAME=RegionOne export OS_AUTH_URL=http://192.168.100.10:5000/v3 export PS1='\[\\u@\\h \\W(keystone_admin)\]\\$ ' export OS_PROJECT_NAME=admin export OS_USER_DOMAIN_NAME=Default export OS_PROJECT_DOMAIN_NAME=Default export OS_IDENTITY_API_VERSION=3 4391 swift_store_auth_address = [http://192.168.100.10:5000/v3](http://192.168.100.10:5000/v3 "http://192.168.100.10:5000/v3") 4399 swift_store_user = swift 密码在应答文件1113行查找 4408 swift_store_key = e19946e2754c4a62

相关推荐
感哥2 天前
OpenStack Cinder 创建卷
openstack
感哥2 天前
OpenStack Cinder 架构
openstack
感哥2 天前
OpenStack Nova Scheduler 计算节点选择机制
openstack
感哥5 天前
OpenStack Nova 创建虚拟机
openstack
感哥5 天前
OpenStack Glance(镜像)
openstack
感哥5 天前
OpenStack Keystone详解
openstack
安全菜鸟14 天前
传统方式部署OpenStack具体教程
openstack
哈里谢顿2 个月前
Ironic 中 Clean/deploy Step 延迟执行的原因分析
openstack
哈里谢顿2 个月前
ironic中为什么 IPMI Hardware Type 必须支持 IPMIManagement
openstack
哈里谢顿2 个月前
Ironic 中各个接口的作用详解
openstack