RHCS套件实现高可用负载均衡集群(三)——共享存储
生活随笔
收集整理的這篇文章主要介紹了
RHCS套件实现高可用负载均衡集群(三)——共享存储
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
注:此博文在博文“RHCS套件實現高可用負載均衡集群(二)”的基礎上完成
實驗開始前設置實驗環境
target端配置——server3
[root@server3 ~]# yum install -y scsi-* [root@server3 ~]# vim /etc/tgt/targets.conf 38 <target iqn.2008-09.com.example:server.target1>39 backing-store /dev/vdb40 initiator-address 172.25.54.141 initiator-address 172.25.54.242 </target>[root@server3 ~]# /etc/init.d/tgtd start Starting SCSI target daemon: [ OK ] [root@server3 ~]# tgt-admin -s Target 1: iqn.2008-09.com.example:server.target1System information:Driver: iscsiState: readyI_T nexus information:LUN information:LUN: 0Type: controllerSCSI ID: IET 00010000SCSI SN: beaf10Size: 0 MB, Block size: 1Online: YesRemovable media: NoPrevent removal: NoReadonly: NoBacking store type: nullBacking store path: NoneBacking store flags: LUN: 1Type: diskSCSI ID: IET 00010001SCSI SN: beaf11Size: 21475 MB, Block size: 512Online: YesRemovable media: NoPrevent removal: NoReadonly: NoBacking store type: rdwrBacking store path: /dev/vdbBacking store flags: Account information:ACL information:172.25.54.1172.25.54.2 [root@server3 ~]#initiator端配置——server1、server2
[root@server1 ~]# yum install -y iscsi-*
[root@server2 ~]# yum install -y iscsi-*
server1
server2
LVM創建
##server1 [root@server1 ~]# pvcreate /dev/sda Physical volume "/dev/sda" successfully created [root@server1 ~]# pvsPV VG Fmt Attr PSize PFree /dev/sda clustervg lvm2 a-- 20.00g 16.00g/dev/vda2 VolGroup lvm2 a-- 19.51g 0 [root@server1 ~]###server2 [root@server2 ~]# pvs ##還未同步PV VG Fmt Attr PSize PFree/dev/vda2 VolGroup lvm2 a-- 19.51g 0 [root@server2 ~]# pvs ##已同步PV VG Fmt Attr PSize PFree /dev/sda lvm2 a-- 20.00g 20.00g/dev/vda2 VolGroup lvm2 a-- 19.51g 0 [root@server2 ~]# ##server1 [root@server1 ~]# vgcreate clustervg /dev/sda Clustered volume group "clustervg" successfully created [root@server1 ~]# vgsVG #PV #LV #SN Attr VSize VFree VolGroup 1 2 0 wz--n- 19.51g 0 clustervg 1 1 0 wz--nc 20.00g 16.00g [root@server1 ~]###server2 [root@server2 ~]# vgsVG #PV #LV #SN Attr VSize VFree VolGroup 1 2 0 wz--n- 19.51g 0 clustervg 1 0 0 wz--nc 20.00g 20.00g [root@server2 ~]# ##server1 [root@server1 ~]# lvcreate -L 4G -n demo clustervgLogical volume "demo" created [root@server1 ~]# lvsLV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convertlv_root VolGroup -wi-ao---- 18.54g lv_swap VolGroup -wi-ao---- 992.00m demo clustervg -wi-a----- 4.00g [root@server1 ~]# ##server2 [root@server2 ~]# lvsLV VG Attr LSize Pool Origin Data% Move Log Cpy%Sync Convertlv_root VolGroup -wi-ao---- 18.54g lv_swap VolGroup -wi-ao---- 992.00m demo clustervg -wi-a----- 4.00g [root@server2 ~]# [root@server1 ~]# mkfs.ext4 /dev/clustervg/demo [root@server1 ~]# clusvcadm -d nginx ##關閉前面實驗的nginx Local machine disabling service:nginx...Success [root@server1 ~]#Mysql 測試——掛載測試
[root@server1 ~]# yum install -y mysql-server [root@server2 ~]# yum install -y mysql-server[root@server1 ~]# ll -d /var/lib/mysql/ drwxr-xr-x 2 mysql mysql 4096 Aug 9 2013 /var/lib/mysql/ [root@server1 ~]# cd /var/lib/mysql/ [root@server1 mysql]# ls [root@server1 mysql]# ll -d . drwxr-xr-x 2 mysql mysql 4096 Aug 9 2013 . [root@server1 mysql]# cd [root@server1 ~]# mount /dev/clustervg/demo /var/lib/mysql/ [root@server1 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1228212 16934140 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 4128448 139256 3779480 4% /var/lib/mysql [root@server1 ~]# ll -d /var/lib/mysql/ drwxr-xr-x 3 root root 4096 Aug 2 15:49 /var/lib/mysql/ [root@server1 ~]# chown mysql.mysql /var/lib/mysql/ [root@server1 ~]# ll -d /var/lib/mysql/ drwxr-xr-x 3 mysql mysql 4096 Aug 2 15:49 /var/lib/mysql/ [root@server1 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1228212 16934140 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 4128448 139256 3779480 4% /var/lib/mysql [root@server1 ~]# /etc/init.d/mysqld start [root@server1 ~]# cd - /var/lib/mysql [root@server1 mysql]# ls ibdata1 ib_logfile0 ib_logfile1 lost+found mysql mysql.sock test [root@server1 mysql]# /etc/init.d/mysqld stop Stopping mysqld: [ OK ] [root@server1 mysql]# cd [root@server1 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1228216 16934136 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 4128448 160724 3758012 5% /var/lib/mysql [root@server1 ~]# umount /var/lib/mysql/ [root@server1 ~]# [root@server2 ~]# mount /dev/clustervg/demo /var/lib/mysql/ [root@server2 ~]# ll -d /var/lib/mysql/ drwxr-xr-x 5 mysql mysql 4096 Aug 2 16:02 /var/lib/mysql/ [root@server2 ~]# cd /var/lib/mysql/ [root@server2 mysql]# ls ibdata1 ib_logfile0 ib_logfile1 lost+found mysql test [root@server2 mysql]# /etc/init.d/mysqld start Starting mysqld: [ OK ] [root@server2 mysql]# /etc/init.d/mysqld stop Stopping mysqld: [ OK ] [root@server2 mysql]# cd [root@server2 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1148688 17013664 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 4128448 160724 3758012 5% /var/lib/mysql [root@server2 ~]# umount /var/lib/mysql/ [root@server2 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1148688 17013664 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot [root@server2 ~]#
集群化文件系統
本地文件系統演示
[root@server2 ~]# clustat Cluster Status for tutu @ Thu Aug 2 17:08:17 2018 Member Status: QuorateMember Name ID Status------ ---- ---- ------server1 1 Online, rgmanagerserver2 2 Online, Local, rgmanagerService Name Owner (Last) State ------- ---- ----- ------ ----- service:mysql server2 started [root@server2 ~]# clusvcadm -d mysql Local machine disabling service:mysql...Success [root@server2 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1148744 17013608 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot [root@server2 ~]#
這種方式一個文件修改后,在另一臺主機上看不到更改后的內容
因為所用的文件系統是ext4,這是一種本地的文件系統,所以更改后不能同時生效
真實的生產環境中是不能用這種方式實現磁盤共享的
解決方法:使用網路文件系統gfs2
使用這種文件系統,兩個initiator端要實現通信,實現通信的方法是將initiator主機加入到一個集群中
GFS2 作為 RedHat
集群文件系統采用分布式元數據和多日志方式(multiple journal),并且 RedHat 僅支持 GFS2
文件系統作為高可用性集群文件系統部署使用。因為性能問題,從 RedHat Enterprise Linux 6
開始,GFS2 不再被支持作為單節點文件系統使用。
集群化文件系統
##查看集群中的主機 [root@server1 ~]# clustat Cluster Status for tutu @ Thu Aug 2 17:30:23 2018 Member Status: QuorateMember Name ID Status------ ---- ---- ------server1 1 Online, Local, rgmanagerserver2 2 Online, rgmanagerService Name Owner (Last) State ------- ---- ----- ------ ----- service:mysql (server2) disabled [root@server1 ~]# mkfs.gfs2 -j 3 -p lock_dlm -t tutu:mygfs2 /dev/clustervg/demo ##格式化磁盤創建文件系統 ## -j 3 通常日志的存放文件個數是節點數+1 [root@server1 ~]# mount /dev/clustervg/demo /var/lib/mysql/ [root@server1 ~]# cd /var/lib/mysql/ [root@server1 mysql]# ll total 0 [root@server1 mysql]# ll -d drwxr-xr-x 2 root root 3864 Aug 2 17:40 . [root@server1 mysql]# [root@server2 ~]# mount /dev/clustervg/demo /var/lib/mysql/ [root@server2 ~]# ll -d /var/lib/mysql/ drwxr-xr-x 2 root root 3864 Aug 2 17:40 /var/lib/mysql/ [root@server2 ~]# [root@server1 mysql]# /etc/init.d/mysqld [root@server1 mysql]# ll -d drwxr-xr-x 4 mysql mysql 3864 Aug 2 17:44 . [root@server1 mysql]# ls ibdata1 ib_logfile0 ib_logfile1 mysql mysql.sock test [root@server1 mysql]#[root@server2 ~]# ll -d /var/lib/mysql/ drwxr-xr-x 4 mysql mysql 3864 Aug 2 17:44 /var/lib/mysql/ [root@server2 ~]# ls /var/lib/mysql/ ibdata1 ib_logfile0 ib_logfile1 mysql mysql.sock test [root@server2 ~]# [root@server2 ~]# gfs2_tool sb /dev/clustervg/demo all ##配置、調試文件系統或收集有關文件系統的信息mh_magic = 0x01161970mh_type = 1mh_format = 100sb_fs_format = 1801sb_multihost_format = 1900sb_bsize = 4096sb_bsize_shift = 12no_formal_ino = 2no_addr = 23no_formal_ino = 1no_addr = 22sb_lockproto = lock_dlmsb_locktable = tutu:mygfs2uuid = b81d11be-6c2d-2841-1980-30410272190f [root@server2 ~]# gfs2_tool journals /dev/clustervg/demo all journal2 - 128MB journal1 - 128MB journal0 - 128MB 3 journal(s) found. [root@server2 ~]# [root@server1 mysql]# /etc/init.d/mysqld stop Stopping mysqld: [ OK ] [root@server1 mysql]# cd [root@server1 ~]# ##開機自動掛載測試 [root@server1 ~]# vim /etc/fstab [root@server1 ~]# cat /etc/fstab | tail -n 1 /dev/clustervg/demo /var/lib/mysql gfs2 _netdev 0 0 [root@server1 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1228304 16934048 7% / tmpfs 510188 31816 478372 7% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 12581504 286520 12294984 3% /var/lib/mysql [root@server1 ~]# umount /var/lib/mysql/ [root@server1 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1228304 16934048 7% / tmpfs 510188 25656 484532 6% /dev/shm /dev/vda1 495844 33466 436778 8% /boot [root@server1 ~]# mount -a [root@server1 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1228304 16934048 7% / tmpfs 510188 31816 478372 7% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 12581504 286520 12294984 3% /var/lib/mysql [root@server1 ~]#[root@server2 ~]# vim /etc/fstab [root@server2 ~]# cat /etc/fstab | tail -n 1 /dev/clustervg/demo /var/lib/mysql gfs2 _netdev 0 0 [root@server2 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1148760 17013592 7% / tmpfs 510188 31816 478372 7% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 12581504 286520 12294984 3% /var/lib/mysql [root@server2 ~]# mount -a [root@server2 ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/VolGroup-lv_root 19134332 1148760 17013592 7% / tmpfs 510188 31816 478372 7% /dev/shm /dev/vda1 495844 33466 436778 8% /boot /dev/mapper/clustervg-demo 12581504 286520 12294984 3% /var/lib/mysql [root@server2 ~]# [root@server1 ~]# clustat Cluster Status for tutu @ Thu Aug 2 17:54:33 2018 Member Status: QuorateMember Name ID Status------ ---- ---- ------server1 1 Online, Local, rgmanagerserver2 2 Online, rgmanagerService Name Owner (Last) State ------- ---- ----- ------ ----- service:mysql (server2) disabled [root@server1 ~]# clusvcadm -e mysql ##本節點,即server1 啟用 mysql 服務 Local machine trying to enable service:mysql...Success service:mysql is now running on server1 [root@server1 ~]# mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.1.71 Source distributionCopyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> quit Bye [root@server1 ~]# clusvcadm -r mysql -m server2 ## 切換節點進行 mysql 服務 Trying to relocate service:mysql to server2...Success service:mysql is now running on server2 [root@server1 ~]# clustat Cluster Status for tutu @ Thu Aug 2 18:06:07 2018 Member Status: QuorateMember Name ID Status------ ---- ---- ------server1 1 Online, Local, rgmanagerserver2 2 Online, rgmanagerService Name Owner (Last) State ------- ---- ----- ------ ----- service:mysql server2 started [root@server1 ~]#[root@server2 ~]# mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.1.71 Source distributionCopyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> quit Bye [root@server2 ~]#總結
以上是生活随笔為你收集整理的RHCS套件实现高可用负载均衡集群(三)——共享存储的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RHCS套件实现高可用负载均衡集群(二)
- 下一篇: Haproxy + Pacemaker