zoukankan      html  css  js  c++  java
  • 026-Cinder服务-->使用NFS作为后端存储

    以下将介绍如何使用NFS共享作为Openstack后端存储,本案例在计算节点上配置nfs

    [root@linux-node2 ~]# yum install -y openstack-cinder python-keystone
    [root@linux-node2 ~]# yum install -y nfs-utils rpcbind
    [root@linux-node2 ~]# mkdir -p /data/nfs
    [root@linux-node2 ~]# vim /etc/exports
    /data/nfs *(rw,no_root_squash)
    [root@linux-node2 ~]# systemctl start rpcbind
    [root@linux-node2 ~]# systemctl start nfs


    [root@linux-node1 ~]# scp /etc/cinder/cinder.conf 192.168.1.231:/etc/cinder
    [root@linux-node2 ~]# vim /etc/cinder/cinder.conf
    删除[lvm]的内容
    [default]
    enabled_backends = nfs

    [nfs]
    volume_driver = cinder.volume.drivers.nfs.NfsDriver
    nfs_shares_config=/etc/cinder/nfs_shares
    nfs_mount_point_base=$state_path/mnt
    驱动查找:
    查看在此文件:/usr/lib/pythone.27/site-packages/cinder/volume/drivers/nfs.py内是否有这样的类

    [root@linux-node2 ~]# vim /etc/cinder/nfs_shares
    192.168.1.231:/data/nfs


    [root@linux-node2 ~]# chown root.cinder /etc/cinder/nfs_shares
    [root@linux-node2 ~]# chmod 640 /etc/cinder/nfs_shares

    [root@linux-node2 ~]# systemctl enable openstack-cinder-volume
    [root@linux-node2 ~]# systemctl start openstack-cinder-volume

    [root@linux-node1 ~]# openstack volume service list
    +------------------+-----------------+------+---------+-------+----------------------------+
    | Binary | Host | Zone | Status | State | Updated At |
    +------------------+-----------------+------+---------+-------+----------------------------+
    | cinder-scheduler | linux-node1 | nova | enabled | up | 2019-07-13T08:31:11.000000 |
    | cinder-volume | linux-node1@lvm | nova | enabled | up | 2019-07-13T08:31:09.000000 |
    | cinder-volume | linux-node2@nfs | nova | enabled | up | 2019-07-13T08:31:06.000000 |
    +------------------+-----------------+------+---------+-------+----------------------------+

    通过上面验证,nfs已注册成功,但是现在用不了,因为既有lvm也有nfs,不知道选哪个用,因此这时候需要去创建类型,就是创建一个存储叫lvm把linux-node1@lvm关联起来,另一个叫nfs关联起来
    这样以后使用云硬盘就可以选择使用lvm还是nfs了

    创建云硬盘类型NFS和ISCSI

    [root@linux-node1 ~]# cinder type-create NFS
    [root@linux-node1 ~]# cinder type-create ISCSI

    将后端存储和云硬盘类型关联
    [root@linux-node1 ~]# vim /etc/cinder/cinder.conf
    使用lvm本地存储就需要在[lvm]加入
    [lvm]
    volume_backend_name = ISCSI-Storage #这个名称可以随便起,但是要与下面关联的命令中的名字对应,就是这里是什么名字,令名里就要写什么名字

    [root@linux-node1 ~]# systemctl restart openstack-cinder-volume
    [root@linux-node2 ~]# vim /etc/cinder/cinder.conf
    使用NFS网络存储就需要在[nfs]加入
    [nfs]
    volume_backend_name = NFS-Storage

    [root@linux-node2 ~]# systemctl restart openstack-cinder-volume

    在配置文件cinder.conf加入volume_backend_name可以实现多类型的云硬盘挂载,如ISCSI,NFS

    [root@linux-node1 ~]# cinder type-key NFS set volume_backend_name=NFS-Storage
    [root@linux-node1 ~]# cinder type-key ISCSI set volume_backend_name=ISCSI-Storage

    创建完NFS卷后
    [root@linux-node2 ~]# cd /var/lib/cinder/
    [root@linux-node2 cinder]# ls
    groups mnt tmp
    [root@linux-node2 cinder]# cd mnt/
    [root@linux-node2 mnt]# ls
    2f73be711d83c9a6279ce6ab95f36d74
    [root@linux-node2 mnt]# ll
    总用量 0
    drwxr-xr-x 2 root root 6 7月 13 15:55 2f73be711d83c9a6279ce6ab95f36d74
    [root@linux-node2 mnt]# cd 2f73be711d83c9a6279ce6ab95f36d74/
    [root@linux-node2 2f73be711d83c9a6279ce6ab95f36d74]# ls
    [root@linux-node2 2f73be711d83c9a6279ce6ab95f36d74]# ls
    volume-9cecbcf4-0538-4e71-9726-cd23bac746ca
    [root@linux-node2 2f73be711d83c9a6279ce6ab95f36d74]# ll volume-9cecbcf4-0538-4e71-9726-cd23bac746ca
    -rw-rw-rw- 1 root root 1073741824 7月 13 17:03 volume-9cecbcf4-0538-4e71-9726-cd23bac746ca
    [root@linux-node2 2f73be711d83c9a6279ce6ab95f36d74]# ll -h volume-9cecbcf4-0538-4e71-9726-cd23bac746ca
    -rw-rw-rw- 1 root root 1.0G 7月 13 17:03 volume-9cecbcf4-0538-4e71-9726-cd23bac746ca
    [root@linux-node2 2f73be711d83c9a6279ce6ab95f36d74]#

    [root@linux-node2 ~]# clear
    [root@linux-node2 ~]# mount
    sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
    proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
    devtmpfs on /dev type devtmpfs (rw,nosuid,size=1918808k,nr_inodes=479702,mode=755)
    securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
    tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
    devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
    tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)
    tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
    cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
    pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
    cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
    cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
    cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
    cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
    cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
    cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
    cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
    cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
    cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
    cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
    configfs on /sys/kernel/config type configfs (rw,relatime)
    /dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,noquota)
    debugfs on /sys/kernel/debug type debugfs (rw,relatime)
    hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
    systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=35,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=23183)
    mqueue on /dev/mqueue type mqueue (rw,relatime)
    /dev/sda1 on /boot type xfs (rw,relatime,attr2,inode64,noquota)
    sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw,relatime)
    tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,size=386152k,mode=700)
    nfsd on /proc/fs/nfsd type nfsd (rw,relatime)
    192.168.1.231:/data/nfs on /var/lib/cinder/mnt/2f73be711d83c9a6279ce6ab95f36d74 type nfs4 (rw,relatime,vers=4.1,rsize=524288,wsize=524288,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=192.168.1.231,local_lock=none,addr=192.168.1.231)

    • 创建卷

    "卷"-->"管理连接"-->"连接云主机"-->在云主机内fdisk -l进行查看

     小结:

    cinder后端存储步骤:
    (1)把存储准备好,如NFS,ISCSI
    (2)安装cinder-volume
    (3)vim /etc/cinder/cinder.conf
    [xxx]
    volume_driver=xxx
    ......
    volume_backend_name=xxx-Storage
    (4)创建类型:cinder type-create xxx
    (5)关联类型:cinder type-key xxx set volume_backend_name=xxx-Storage
    

      

  • 相关阅读:
    forward redirect 区别
    request response 区别
    Java集合 初步了解
    通过session统计当前在线人数
    Session保存用户名到Session域对象中
    Cookie获取用户的访问记录
    表单中有关于爱好的多选框, 篮球,足球,游泳,跑步, 再有一个多选框,代表全选
    jQuery常用子元素过滤选择器
    jQuery常用属性过滤选择器
    jQuery常见可见性过滤选择器
  • 原文地址:https://www.cnblogs.com/xuefy/p/11183635.html
Copyright © 2011-2022 走看看