CentOS7/RHEL7 pacemaker+corosync高可用集群搭建


 

一、集群信息... 4

二、集群搭建... 4

1、制作軟件源... 4

2、主機基礎配置... 5

3、集群基礎環境准備... 7

4、集群資源准備... 9

5、資源配置... 11

6constraint配置... 12

7stonith配置... 13

8、集群功能驗證... 14

三、集群常用命令及作用... 17

1、驗證群集安裝... 17

2、查看群集資源... 17

3、使用群集腳本... 17

4STONITH 設備操作... 17

5、查看群集配置... 17

6、管理群集... 18

  

CentOS7/RHEL7高可用集群搭建

一、集群信息

使用光盤鏡像安裝好兩台RHEL7.4系統的虛擬機,主機信息如下:

主機名

node1

node2

IP地址

192.168.110.168

192.168.110.169

系統版本

Red Hat Enterprise Linux Server release 7.4

掛載鏡像源

rhel-server-7.4-x86_64-dvd.iso

 

資源組

ftp-group

FTP-VIP192.168.110.10

FTP-LVMvg_ftp

FTP-FS/dev/vg_ftp/lv_ftp

FTPvsftpd

 

資源組

tomcat-group

TOMCAT-VIP192.168.110.20

TOMCAT-LVMvg_tomcat

TOMCAT-FS:/dev/vg_tomcat/lv_tomcat

TOMCAT:tomcat

二、集群搭建

1、制作軟件源

      掛載光盤

      導入key文件,列出可用源

  

2、主機基礎配置

      設置主機名

 

      關閉防火牆

 

      設置selinuxdisabled

 

      配置host文件

 

      節點間配置免密互信

 

      同步host文件

 

      編輯/etc/chronyd.conf文件,增加時間服務器一行

 

      配置時間服務器,使集群節點時間同步

 

      設置時間同步,timedatectl輸出結果中NTP enabledyes,已開始同步

 

      查看chronyd狀態,設置為開機啟動

 

 

3、集群基礎環境准備

      軟件安裝

 

      修改集群管理賬號密碼

 

      啟用並設置集群軟件開機自啟

 

      集群節點認證

 

      創建集群

 

注:

1、命令內容為創建集群的同時在各節點上啟動集群並設置為啟用狀態

      查看當前集群狀態

 

注:

1、   注意命令輸出內容,在尚未配置stonith時,提示需將stonith-enabled屬性更改為false(不啟用)

 

2Online:顯示當前在線節點

3Full list of resources:顯示集群的資源列表

 

4、集群資源准備

      文件系統創建

 

創建並格式化/dev/mapper/vg_tomcat-lv_tomcat,文件系統格式為xfs

創建並格式化/dev/mapper/vg_ftp-lv_ftp,文件系統格式為xfs

注:

使用共享存儲的集群,在節點一上創建好vglv之后,節點二上執行命令pvscan --cache /dev/sdb可以將vglv信息同步至節點二上

      創建文件系統掛載點

 

      安裝vsftp

 

      新增用戶

新增用戶mcbadm,確保node2mcbadm用戶的UIDnode1一致,將用戶加入haclient集群管理組

 

      安裝tomcat相關軟件包

lv_tomcat掛在至/home/mcbadm后,將tomcat軟件包解壓至共享盤上

 

      權限更改

更改/home/mcbadm下文件屬組及所屬者為mcbadm

 

      創建tomcat.service文件

編輯/usr/lib/systemd/system/tomcat.service文件,將tomcat服務移交systemd管理

 

tomca.service文件放在/usr/lib/systemd/system/目錄下,執行systemctl daemon-reload刷新

      開放halvm功能

將集群的共享存儲交由集群管理,執行以下命令,開放halvm功能

 

      備份lvm.conf文件

 

      編輯lvm.conf文件

 

查看系統現有vg,放開volume_list的注釋,將除過集群共享存儲的vg加入中括號內

注意:主機后續添加新的非集群管理vg,必須將vg名加入volume_list

      生成initramfs文件

備份/boot/initramfs-$(uname –r).img文件

 

執行以下命令,重新生成initramfs-$(uname –r).img文件

 

重啟主機

5、資源配置

      創建資源組ftp-group

FTP-VIP192.168.110.10/24

FTP-LVMvg_ftp

FTP-FS/dev/vg_ftp/lv_ftp/HOMExfs

FTPvsftpd

FTP:vsftpd

      創建資源組tomcat-group

TOMCAT-VIP192.168.110.20/24

TOMCAT-LVMvg_tomcat

TOMCAT-FS/dev/vg_tomcat/lv_tomcat/home/mcbadmxfs

TOMCATtomcat

 

      檢查集群狀態

 

資源組創建完成,集群資源已在各節點上運行

注:

1、集群資源創建,資源創建需要一次完成,所有資源創建完成后加入資源組中,默認情況下,資源組內資源啟停順序為:按照從上往下的順序依次啟動;按照從下往上的順序依次停止。

2、因已配置vg_ftpvg_tomcat僅由集群激活啟用,當FTP-FSTOMCAT-FS資源在節點一/二配置完成但尚未加入資源組內時,pcs status會有報錯信息提示,提示在節點二/一上找不到相應的設備文件,此為正常現象,將FTP-FSTOMCAT-FS按順序加入集群即可。

 

6、集群資源約束配置

      檢查集群狀態

查看當前constraint設置

 

      配置資源啟停順序

 

配置資源組內各資源啟停順序:

ftp-group內啟停順序:FTP-VIP--> FTP-LVM-->FTP-FS-->FTP

tomcat-group內啟停順序:TOMCAT-VIP-->TOMCAT-LVM-->TOMCAT-FS-->TOMCAT

      配置資源組內各資源依附關系

 

      配置資源組在各節點的粘性

 

ftp-group優先在node1上運行

tomcat-group優先在node2上運行

      查看constraint設置結果

列出集群資源約束配置內容

 

 

7stonith配置

注:

1、   virtualbox虛擬機無法配置,假設可用

2、   不同類型的服務器所需fence端口不同,惠普硬件服務器需開通fence設備的623/udp端口,vcenter主機需開啟80/tcp443/tcp端口,其余類型請自行查證

      fence資源信息

主機名

node1

node2

Fence設備地址

192.168.110.101

192.168.110.102

Fence管理賬號

Administrator

Fence賬戶密碼

pass1234

 

 

 

 

 

 

      Fence查看節點狀態

通過fence設備查看主機狀態,確認fence設備可對主機進行管理

# fence_ipmilan –P –A password –a 192.168.110.101 –l Administrator  –p pass1234 –o status

# Status on

# fence_ipmilan –P –A password –a 192.168.110.102 –l Administrator  –p pass1234 –o status

# Status on

      增加fence設備

     # pcs stonith create ipmi-fence-node1 fence_ipmilan parms lanplus=’true’ pcmk_host_list=’node1’ pcmk_host_check=’static-list’ action=’reboot’ ipaddr=’192.168.110.101’ login=’Administrator’ passwd=’pass1234’ op monitor interval=30s

     # pcs stonith create ipmi-fence-node2 fence_ipmilan parms lanplus=’true’ pcmk_host_list=’node2’ pcmk_host_check=’static-list’ action=’reboot’ ipaddr=’192.168.110.102’ login=’Administrator’ passwd=’pass1234’ op monitor interval=30s

8、集群功能驗證

      切換前檢查

查看當前集群狀態,集群內各資源已正常運行使用(尚缺少fence設備)

 

      禁用節點驗證

node2 設置為standby(不使用),資源組tomcat-group正常切換至node1上運行

# pcs cluster standy node2

注:

1node2 standby狀態下,資源組tomcat-groupnode1上正常運行才能證明資源切換正常

 

unstandy node2,資源組tomcat-group切換回node2運行

# pcs cluster unstandy node2

注:

1node2 unstandby后,資源組tomcat-group能夠自動切回node2上正常運行才能證明資源切換正常

 

      重啟節點驗證

node1 重啟,資源組ftp-group切換至node2運行

 

node1 重啟完成,資源組ftp-group切換回node1運行

 

 

三、集群常用命令及作用

1、驗證群集安裝

 [shell]# pacemakerd -F                                                             ## 查看pacemaker組件

 [shell]# corosync-cfgtool -s                                                        ## 查看corosync序號

 [shell]# corosync-cmapctl | grep members              ## corosync 2.3.x

 [shell]# corosync-objctl | grep members                          ## corosync 1.4.x

 

2、查看群集資源

 [shell]# pcs resource standards                                       ## 查看支持資源類型

 [shell]# pcs resource providers                                        ## 查看資源提供商

 [shell]# pcs resource agents                                                     ## 查看所有資源代理

 [shell]# pcs resource list                                                    ## 查看支持資源列表

 [shell]# pcs stonith list                                                             ## 查看支持Fence列表

 [shell]# pcs property list --all                                            ## 顯示群集默認變量參數

 [shell]# crm_simulate -sL                                        ## 檢驗資源 score

 

3、使用群集腳本

 [shell]# pcs cluster cib ra_cfg                                          ## 將群集資源配置信息保存在指定文件

 [shell]# pcs -f ra_cfg resource create                                ## 創建群集資源並保存在指定文件中(而非保存在運行配置)

 [shell]# pcs -f ra_cfg resource show                                        ## 顯示指定文件的配置信息,檢查無誤后

 [shell]# pcs cluster cib-push ra_cfg                                          ## 將指定配置文件加載到運行配置中

 

4STONITH 設備操作

 [shell]# stonith_admin -I                                                 ## 查詢fence設備

 [shell]# stonith_admin -M -a agent_name              ## 查詢fence設備的元數據, stonith_admin -M -a fence_vmware_soap

 [shell]# stonith_admin --reboot nodename                     ## 測試 STONITH 設備

 

5、查看群集配置

 [shell]# crm_verify -L -V                                                          ## 檢查配置有無錯誤

 [shell]# pcs property                                                              ## 查看群集屬性

 [shell]# pcs stonith                                                                          ## 查看stonith

 [shell]# pcs constraint                                                             ## 查看資源約束

 [shell]# pcs config                                                                          ## 查看群集資源配置

 [shell]# pcs cluster cib                                                                   ## XML格式顯示群集配置

 

6、管理群集

 [shell]# pcs status                                                                          ## 查看群集狀態

 [shell]# pcs status cluster

 [shell]# pcs status corosync

 [shell]# pcs cluster stop [node11]                                 ## 停止群集

 [shell]# pcs cluster start --all                                                  ## 啟動群集

 [shell]# pcs cluster standby node11                                      ## 將節點置為后備standby狀態 pcs cluster unstandby node11

 [shell]# pcs cluster destroy [--all]                                   ## 刪除群集,[--all]同時恢復corosync.conf文件

 [shell]# pcs resource cleanup ClusterIP                         ## 清除指定資源的狀態與錯誤計數

 [shell]# pcs stonith cleanup vmware-fencing                  ## 清除Fence資源的狀態與錯誤計數

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM