[root@manager ~]# fdisk /dev/xvdc \\存儲節點掛有磁盤,空間1Tnode
[root@manager ~]# yum installscsi-target-utils -y \\安裝target管理端web
[root@manager ~]# vim /etc/tgt/targets.conf \\配置導出磁盤的信息vim
其中backing-store指定共享的磁盤,incominguser指定用於驗證的用戶和密碼,initiator-address容許鏈接的地址服務器
[root@storage1 ~]# /etc/rc.d/init.d/tgtd start &&chkconfig tgtd onsession
[root@storage1 ~]# tgtadm --lld iscsi --mode target --op show \\查看是否導出成功app
[root@manager ~]# for i in {1..3}; do ssh openstack.node$i "yum -yinstall iscsi-initiator-utils"; done \\節點安裝iscsi客戶端軟件ssh
[root@node1 ~]# vim /etc/iscsi/iscsid.conf \\全部節點配置文件加上如下3行,設置帳戶密碼ide
node.session.auth.authmethod = CHAP測試
node.session.auth.username = openstackspa
node.session.auth.password =oepnstack
[root@node1 ~] iscsiadm -mdiscovery -t st -p 192.168.249.64 //發現共享設備
192.168.249.64:3260,1 iqn.2015-05.com.si-tech:target1
[root@node1 ~]iscsiadm -m node –l iqn.2015-05.com.si-tech:target1 \\註冊iscsi共享設備
[root@manager ~]tgtadm --lld iscsi --op show --mode conn --tid 1 \\iscsi服務器端查看共享狀況
[root@node1 ~]# netstat -nlatp | grep 3260 鏈接狀況
[root@node1 ~]# fdisk -l \\ 在各個節點上面都會多出個iscsi設備
Disk /dev/sda: 1073.7 GB, 1073741824000 bytes
255 heads, 63 sectors/track, 130541 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
[root@node1 ~]# pvcreate /dev/sda \\建立pv
Physical volume"/dev/sda" successfully created
[root@node1 ~]# vgcreate openstackvg0 /dev/sda \\建立vg
Clustered volume group "openstackvg0"successfully created
[root@node1 ~]# lvcreate -L +1000Gopenstackvg0 -n openstacklv0 \\建立大小爲1T的lv
[root@openstack iscsi]# lvmconf--enable-cluster 每一個節點開啓集羣LVM功能,才能mklv
[root@openstack iscsi]# lvcreate-L +100G openstackvg0 -n openstacklv0
Logical volume "openstacklv0" created
登錄其餘節點驗證,能夠看到已經都有了
[root@node2 ~]# mkfs.gfs2 -j 3 -p lock_dlm -t openstack:gfs2/dev/openstackvg0/openstacklv0
-p:用來指定gfs的鎖機制
-j:指定journal個數(可加入節點數),通常狀況下應留有冗餘,不然後期還得再調整
查看journals:# gfs2_tool journals /openstack
增長journals:# gfs2_jadd –j 1 /openstack ##增長一個journals
-t:格式爲ClusterName:FS_Path_Name
ClusterName:應與前面cluster.conf中指定的集羣名稱相同;
FS_Path_Name:這個塊設備mount的路徑;
最後一個參數是指定邏輯卷的詳細路徑
\\建立gfs2集羣文件系統,並設置節點爲3個,鎖協議爲lock_dlm,openstack爲咱們的集羣名,gfs2爲一個標誌也能夠任意
[root@openstack usr]# mount/dev/openstackvg0/openstacklv0 /openstack/
fs is for a different cluster
error mounting lockproto lock_dlm
這是由於咱們使用的集羣時gfs因此改成gfs
[root@openstack usr]# mount /dev/openstackvg0/openstacklv0 /openstack/
[root@openstack usr]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_openstack-lv_root 35G 4.5G 29G 14% /
tmpfs 7.6G 32M 7.6G 1% /dev/shm
/dev/xvda1 485M 35M 426M 8% /boot
/dev/xvdd1 4.2G 4.2G 0 100% /mnt
/dev/mapper/openstackvg0-openstacklv0 110G 388M 110G 1% /openstack
echo "/dev/openstackvg0/openstacklv0 /openstack gfs2 defaults 00" >> /etc/fstab
1)、當基於clvm的gfs2文件系統不夠用時,如何增長
[root@node1~]# lvextend -L +10G /dev/openstackvg0/openstacklv0
Extending logical volume openstacklv0 to 110.00 GiB
Logical volume openstacklv0successfully resized
[root@node1 ~]# gfs2_grow /openstack \\同步文件系統
FS: Mount Point: /openstack
FS: Device: /dev/dm-2
FS: Size: 28835838(0x1b7fffe)
FS: RG size: 65533 (0xfffd)
DEV: Size: 31457280(0x1e00000)
The file system grew by 10240MB.
gfs2_grow complete. gfs2_grow complete.
[root@openstack ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_openstack-lv_root 35G 4.5G 29G 14% /
tmpfs 7.6G 32M 7.6G 1% /dev/shm
/dev/xvda1 485M 35M 426M 8% /boot
/dev/xvdd1 4.2G 4.2G 0 100% /mnt
/dev/mapper/openstackvg0-openstacklv0 110G 388M 110G 1% /openstack
2)、當節點不夠用時,若是添加一個新的節點加入集羣
步驟以下:
1)、安裝ricci
[root@node4 ~]# yum install ricci -y
2)、登陸luci web,添加ricci
3)、導入共享存儲設備
[root@node4 ~]# iscsiadm -m discovery -t st -p 192.168.249.64
[root@node1~]# scp/etc/iscsi/iscsid.conf node4:/etc/iscsi/
[root@node4 ~]# iscsiadm -m node –l iqn.2015-05.com.si-tech:target1
4)、在已成功掛載的節點上增長節點數,並實現掛載使用
(注意:若是系統看不到/dev/openstackvg0/openstacklv0,則從新啓動節點系統便可生效)
[root@node4 ~]# mount /dev/cvg0/clv0 /openstack/ \ \節點數不夠
Too many nodes mounting filesystem, no free journals
[root@node2 ~]# gfs2_jadd -j 1 /optenstack \\增長一個節點數
Filesystem: /opt
Old Journals 3
NewJournals 4
[root@node4 ~]# mount /dev/cvg0/clv0 /opt/
[root@node4 ~]# ll /opt/
total 4
-rw-r--r-- 1 root root 210 Jun 8 00:42 test.txt
[root@node4 ~]#
3、)、測試基於gfs2文件系統的集羣節點是否支持同時讀寫操做
[root@node1 ~]# echo node1 >>/openstack/test.txt\\節點1模擬向test.txt文件寫入node1
[root@node2 ~]#echo node2 >>/openstack/test.txt \\節點2模擬向test.txt文件寫入node2
[root@node3 ~]# tail -f /openstack/test.txt \\節點3模擬讀出節點1和節點2同時寫入的數據
node1
node2
4)、若是數據很重要而且磁盤空間也充足能夠考慮使用cmirror實現存儲高可用這裏簡述一下步驟
存儲節點添加備份磁盤,修改targets.conf文件
數據節點使用iscsiadm命令發現並使用備份磁盤
數據節點須要按cmirror軟件,並備份:yum install cmirror –y
lvconvert -m 1 /dev/openstackvg0/openstacklv0 /dev/sda /dev/sdb \\建立先有lv的mirror
[root@node1 ~]# dmsetup ls –tree \\查看現有iscsi導出設備的狀態爲mirror型
cvg0-clv0 (253:1)
├─cvg0-clv0_mp_w_picpath_1 (253:5)
│└─iscsi2 (253:2)
│├─ (8:48)
│└─ (8:64)
├─cvg0-clv0_mp_w_picpath_0 (253:4)
│└─iscsi1 (253:0)
│├─ (8:32)
│└─ (8:16)
└─cvg0-clv0_mlog (253:3)
└─iscsi2 (253:2)
├─ (8:48)
└─ (8:64)