91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

發布時間:2020-06-07 17:32:59 來源:網絡 閱讀:1769 作者:海風掠過 欄目:MySQL數據庫

1.部署Heartbeat高可用需求

1.1 操作系統

[root@heartbeat-1-114 ~]# cat /etc/redhat-release 
CentOS release 6.9 (Final)

1.2 Heartbeat服務主機資源準備

服務器A:

主機名:heartbeat-1-114

eth0網卡地址:192.168.136.114(管理IP)

eth2網卡地址:10.0.10.4/255.255.255.0 (心跳IP)

從服務器B:

主機名:heartbeat-1-115

eth0網卡地址:192.168.136.115(管理IP)

eth2網卡地址:10.0.10.5/255.255.255.0(心跳IP)

虛擬VIP:

虛擬VIP在主服務器heartbeat-1-114上,VIP:192.168.136.116

仲裁主機:10.0.10.6

2.Heartbeat高可用實施準備

2.1 搭建虛擬真實環境

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

2.2 給虛擬機配置IP和主機名

配置IP就省略了,設置兩臺主機的主機名分別為heartbeat-1-114和heartbeat-1-115。分別編譯兩臺機器的/etc/sysconfig/network配置文件,設置HOSTNAME=heartbeat-1-114和HOSTNAME=heartbeat-1-115。然后在命令行下執行hostname heartbeat-1-114和hostname heartbeat-1-115使設置馬上生效,注意/etc/hosts文件中127.0.0.1對應的主機名不要配置。

提示:可以執行setup命令然后選network configuration-->Edit configuration即可配置機器名,然后logout退出重新登錄后生效。

2.3 配置hosts文件(兩個節點都要做)

提示:兩臺機器必須互相能ping通

在heartbeat-1-114主機上配置hosts文件

[root@heartbeat-1-114 ~]# cat >>/etc/hosts<<EOF
> 192.168.136.114 heartbeat-1-114
> 192.168.136.115 heartbeat-1-115
> EOF

在heartbeat-1-115主機上配置hosts文件

[root@heartbeat-1-115 ~]# cat >>/etc/hosts<<EOF
> 192.168.136.114 heartbeat-1-114
> 192.168.136.115 heartbeat-1-115
> EOF

通過ping ip地址的方法檢查測試,看其返回的IP是不是和/etc/hosts中配置的內容一致。

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

特別強調:機器名必須是uname –n返回的結果

[root@heartbeat-1-114 ~]# uname -n
heartbeat-1-114
[root@heartbeat-1-115 ~]# uname -n
heartbeat-1-115

提示:hosts文件的配置在heartbeat服務中會用到,后文的drbd及存儲高可用也會用到,在生產環境中會把所有的機器名對應上所有的機器IP地址,可以通過分發工具統一分發到所有機器的/etc/hosts中。

2.4 配置服務間的心跳連接

eth2 10.0.10.5和eth2 10.0.10.4兩塊網卡之間通過普通網線連接的,即不通過交換機,直接用網線將兩塊網卡連在一起,用于做心跳檢測或傳數據等。

提示:高可用服務器對上的heartbeat軟件會利用這條心跳線來檢查對端的機器是否存活,進而決定是否做故障轉移,資源切換,來保證業務的連續性。
如果條件允許,以上連接可同時使用,來加大保險系數防止裂腦問題的發生。

本次案例:選用以太網電纜兩網卡直連。

選用原因:簡單,容易部署、效果也不錯。

在兩臺機器上分別增加一條主機路由,來實現兩臺機器檢查對端時通過這個心跳線線路檢查。

(1)在heartbeat-1-114上添加主機主機路由:

[root@heartbeat-1-114 ~]# /sbin/route add -host 10.0.10.4 dev eth2

添加到開機自啟動配置文件中

[root@heartbeat-1-114 ~]# echo "/sbin/route add -host 10.0.10.4 dev eth2">>/etc/rc.local

(2)在heartbeat-1-115上增加如下主機路由:

[root@heartbeat-1-115 ~]# /sbin/route add -host 10.0.10.5 dev eth2

添加到開機自啟動配置文件中

[root@heartbeat-1-115 ~]# echo "/sbin/route add -host 10.0.10.5 dev eth2">>/etc/rc.local

提示:要確保心跳線路是通的

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

2.5 配置虛擬VIP

在主服務器上heartbeat-1-114上配置輔助VIP,輔助ip用ip addr命令查看

[root@heartbeat-1-114 ha.d]# ip addr add 192.168.136.116/24 dev eth0:1
[root@heartbeat-1-114 ha.d]# ip addr|grep "116"
inet 192.168.136.116/24 brd 192.168.136.255 scope global secondary eth0:1

2.6 關閉防火墻和selinux(兩臺節點都要操作)

[root@heartbeat-1-114 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@heartbeat-1-114 ~]# getenforce
Disabled
[root@heartbeat-1-115 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@heartbeat-1-115 ~]# getenforce
Disabled

3.搭建heartbeat高可用

3.1 安裝heartbeat3.0軟件

CentOS-6.8-x86_64的rpm包沒有heartbeat軟件,所以要下載epel包

[root@heartbeat-1-114 ~]# yum search heartbeat
已加載插件:product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
rhel-local   | 4.1 kB 00:00 ... 
警告:沒有匹配 heartbeat 的軟件包
沒有找到匹配的軟件包

3.2 下載并安裝epel擴展源(兩臺都要操作)

[root@heartbeat-1-114 ~]# mkdir -p /home/linzhongniao/tools 
[root@heartbeat-1-114 ~]# cd /home/linzhongniao/tools  
[root@heartbeat-1-114 tools]# wget http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
 --2018-11-02 23:04:38--  http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
Resolving mirrors.ustc.edu.cn... 218.104.71.170, 2001:da8:d800:95::110
Connecting to mirrors.ustc.edu.cn|218.104.71.170|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://mirrors.ustc.edu.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm [following]
 --2018-11-02 23:04:38--  http://mirrors.ustc.edu.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm
Reusing existing connection to mirrors.ustc.edu.cn:80.
HTTP request sent, awaiting response... 200 OK
Length: 14540 (14K) [application/x-redhat-package-manager]
Saving to: “epel-release-6-8.noarch.rpm.1”

100%[==================================================================>] 14,540  --.-K/s   in 0.04s   

2018-11-02 23:04:38 (371 KB/s) - “epel-release-6-8.noarch.rpm.1” saved [14540/14540]

[root@heartbeat-1-114 tools]# rpm -ivh epel-release-6-8.noarch.rpm
warning: epel-release-6-8.noarch.rpm: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing...########################################### [100%]
   1:epel-release   ########################################### [100%]
[root@heartbeat-1-114 tools]# rpm -qa|grep epel
epel-release-6-8.noarch

3.3 安裝heartbeat(兩臺都要操作)

yum install heartbeat* -y

提示:如果yum安裝后想保留rpm包,用下面的方法。

[root@heartbeat-1-114 ~]# sed -i 's#keepcache=0#keepcache=1#g' /etc/yum.conf 
[root@heartbeat-1-114 ~]# grep keepcache /etc/yum.conf 
keepcache=1

3.4 主節點配置heartbeat服務

兩臺機器分別執行安裝heartbeat軟件后,不出意外就可以安裝好heartbeat軟件了。前面已經提到了,heartbeat的默認配置文件目錄為/etc/ha.d。heartbeat常用的配置文件有三個,ha.cf、authkey和haresource,各自的作用見下面的表格。

Mysql DBA 高級運維學習之路-heartbeat高可用軟件的安裝及配置

3.4.1 配置ha.cf文件及文件說明

(1)先把ha.cf、haresources和authkeys這三個文件拷到/etc/ha.d/目錄下

[root@heartbeat-1-114 ~]# ll /usr/share/doc/heartbeat-3.0.4/
total 144
 -rw-r--r-- 1 root root  1873 Dec  3  2013 apphbd.cf
 -rw-r--r-- 1 root root   645 Dec  3  2013 authkeys
 -rw-r--r-- 1 root root  3701 Dec  3  2013 AUTHORS
 -rw-r--r-- 1 root root 58752 Dec  3  2013 ChangeLog
 -rw-r--r-- 1 root root 17989 Dec  3  2013 COPYING
 -rw-r--r-- 1 root root 26532 Dec  3  2013 COPYING.LGPL
 -rw-r--r-- 1 root root 10502 Dec  3  2013 ha.cf
 -rw-r--r-- 1 root root  5905 Dec  3  2013 haresources
 -rw-r--r-- 1 root root  2935 Dec  3  2013 README
[root@heartbeat-1-114 ~]# cd /usr/share/doc/heartbeat-3.0.4/
[root@heartbeat-1-114 heartbeat-3.0.4]# cp ha.cf authkeys haresources /etc/ha.d/

(2)配置ha.cf配置文件

[root@heartbeat-1-114 ha.d]# cat ha.cf
debugfile /var/log/ha-debug
logfile/var/log/ha-log
logfacility local0

keepalive 2
deadtime 30
warntime 10
initdead 60

udpport 694
#bcast  eth2
#mcast eth2 225.0.0.114 694 1 0
ucast eth2 10.0.10.5
auto_failback on
node  heartbeat-1-114
node  heartbeat-1-115
ping 10.0.10.6
respawn root /usr/lib64/heartbeat/ipfail
apiauth ipfail gid=root uid=root
#crm on

(3)ha.cf文件詳細說明

debugfile /var/log/ha-debug:寫入調試信息的文件。

logfile /var/log/ha-log:heartbeat的日志文件。

keepalive 2:心跳的時間間隔,默認時間單位為秒s。

deadtime 30:超出該時間間隔未收到對方節點的心跳,則認為對方已經死亡。

warntime 10:超出該時間間隔未收到對方節點的心跳,則發出警告并記錄到日志中。

initdead 60:在某系統上,系統啟動或重啟之后需要經過一段時間網絡才能正常工作,該選項用于解決這種情況產生的時間間隔,取值至少為deadtime的2倍。

bcast eth2:指明心跳使用以太網廣播方式在eth2接口上進行廣播,如使用兩個實際網絡來傳送心跳則#bcast eth0 eth2,用udp進行廣播建議副節點不止一個情況下使用

mcast eth2 225.0.0.130 694 1 0 :設置多播通信使用的端口,225.0.0.130為多播ip地址在一個局域網內這個ip地址不能一樣,694為默認使用的udp端口號,建議在副節點不止一臺使用。

注意:一個局域網內有多組heartbeat服務同時正常使用的前提是多播地址不同(可選多播地址段為224.0.0.0-239.255.255.255),一般路由器、交換機等應該都是多播的方式,建議IP的最后八位作為多播地址的最后8位。當然不用多播也能解決心跳問題。

udpport 694:設置廣播通信使用的端口,694為默認使用的端口號。

ucast eth2 10.0.10.5:設置廣播通信對方機器心跳檢測的網卡和IP和udpport一起用。

auto_failback on:heartbeat的兩臺主機分別為主節點和從節點。主節點在正常情況下占用資源并運行所有的服務,遇到故障時把資源交給從節點由從節點運行服務。在該選項設為on的情況下,一旦主節點恢復運行,則自動獲取資源并取代從節點,否則不取代從節點。

respawn heartbeat /usr/lib64/heartbeat/ipfail:指定與heartbeat一同啟動和關閉的進程,該進程被自動監視,遇到故障則重新啟動。最常用的進程是ipfail,該進程用于檢測和處理網絡故障,需要配合ping語句指定的ping node來檢測網絡連接。如果你的系統是64bit,請注意該文件的路徑。

crm on:是否開啟集群資源管理功能(Cluster Resource Manager)

提示:我們可以查看/usr/share/doc/heartbeat-3.0.4/下的ha.cf來詳細了解參數信息。

3.4.2 配置authkey文件及文件說明

(1)配置authkey文件

[root@heartbeat-1-114 ha.d]# sha1sum /etc/ha.d/authkeys 
da39a3ee5e6b4b0d3255bfef95601890afd80709  /etc/ha.d/authkeys
[root@heartbeat-1-114 ha.d]# cat /etc/ha.d/authkeys 
auth 2
2 sha1 da39a3ee5e6b4b0d3255bfef95601890afd80709

將authkey權限修改為600

[root@heartbeat-1-114 ha.d]# chmod 600 /etc/ha.d/authkeys 
[root@heartbeat-1-114 ha.d]# ll /etc/ha.d/authkeys 
 -rw------- 1 root root 20 Nov  3 20:31 /etc/ha.d/authkeys

(2)文件說明

此處提到authkey權限必須為600
#   Authentication file.  Must be mode 600
#   Must have exactly one auth directive at the front.
#   authsend authentication using this method-id
#
#   Then, list the method and key that go with that method-id
此處提到可以設置認證方法
#   Available methods: crc sha1, md5.  Crc doesn't need/want a key.
#   You normally only have one authentication method-id listed in this file
#   Put more than one to make a smooth transition when changing auth
#   methods and/or keys.
這里說明sha1是最好的認證方法,其次md5是最好的
#   sha1 is believed to be the "best", md5 next best.
#   crc adds no security, except from packet corruption.
#   Use only on physically secure networks.
#auth 1
#1 crc
#2 sha1 HI!
#3 md5 Hello!                       
##########

注意:authkeys需要的權限默認為600否則heartbeat服務會報錯不發打開,兩臺機器都需要操作

3.4.3 配置haresource文件

[root@heartbeat-1-114 ha.d]# cat /etc/ha.d/haresources 
heartbeat-1-114 IPaddr::192.168.136.116/24/eth0:1

配置參數說明 :heartbeat-1-114為主節點hostname,192.168.136.116為vip,24為掩碼是24位的網段,eth0:1為vip的設備名。IPaddr為heartbeat配置IP的默認腳本,其后的IP等都是腳本參數,腳本放置的位置如下所示:

[root@heartbeat-1-114 ha.d]# ll /etc/ha.d/resource.d/IPaddr 
 -rwxr-xr-x 1 root root 2273 Dec  3  2013 /etc/ha.d/resource.d/IPaddr

實際上面haresources文件中的內容,相當于在ip為192.168.136.116的機器上執行下面的腳本:

/etc/ha.d/resource.d/IPaddr 192.168.136.116/24/eth0:1 start/stop

IPaddr::192.168.136.116/24/eth0:1:這個語句的結構是腳本::(兩個冒號)傳參,確切的說這里并不是傳參只是在ip為192.168.136.116的機器上執行一個這樣的腳本,所以自己開發得到腳本只要能夠用start/stop啟動和停止并且滿足腳本::傳參這種格式,就能放到haresources文件中這是腳本要寫全路徑。

3.5 從節點配置heartbeat服務

把主機上的三個文件拷貝到從上,只需配置ha.cf文件

[root@heartbeat-1-114 ha.d]# scp ha.cf authkeys haresources heartbeat-1-115:/etc/ha.d/
The authenticity of host 'heartbeat-1-115 (192.168.136.115)' can't be established.
RSA key fingerprint is 66:cc:1a:b8:c6:68:8e:8f:d1:2f:a3:a3:56:23:4a:48.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'heartbeat-1-115,192.168.136.115' (RSA) to the list of known hosts.
root@heartbeat-1-115's password: 
ha.cf   100%  341 0.3KB/s   00:00  

從節點只需要修改ha.cf文件,將10.0.10.5改成10.0.10.4,設置對方機器心跳檢測的網卡和IP。

[root@heartbeat-1-115 ha.d]# grep "ucast" ha.cf
ucast eth2 10.0.10.4

4.啟動heartbeat服務

先啟動主節點后啟動從節點,不要讓heartbeat開機自啟動

[root@heartbeat-1-130 ~]# /etc/init.d/heartbeat start
Starting High-Availability services: INFO:  Resource is stopped
Done.
[root@heartbeat-1-114 ~]# chkconfig --list|grep heartbeat
heartbeat   0:off   1:off   2:on3:on4:on5:on6:off
[root@heartbeat-1-114 ~]# chkconfig heartbeat off
[root@heartbeat-1-114 ~]# chkconfig --list|grep heartbeat
heartbeat   0:off   1:off   2:off   3:off   4:off   5:off   6:off

5.測試heartbeat高可用服務

有兩種方法

(1)主節點停止heartbeat服務

/etc/init.d/heartbeat stop

(2)主節點禁ping

[root@heartbeat-1-114 ha.d]# iptables -I INPUT -p icmp -j DROP

主節點允許ping

[root@heartbeat-1-114 ha.d]# iptables -I INPUT -p icmp -j ACCEPT

我們就會發現虛擬VIP切換到從節點上了,來達到heartbeat高可用功能繼續為用戶提供服務。

6.測試列腦

兩節點都down掉eth2網卡

ifdown eth2

7.查看heartbeat啟動及接管資源的過程

可以查看heartbeat日志和系統日志查看heartbeat啟動及接管資源的過程

tail -f /var/log/ha-log

tail -f /var/log/messages

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

珠海市| 门头沟区| 澎湖县| 大名县| 固阳县| 枣阳市| 蓬莱市| 明水县| 永新县| 永和县| 佛坪县| 天等县| 运城市| 黄冈市| 邢台市| 奉节县| 辽阳市| 柳江县| 收藏| 句容市| 永清县| 云阳县| 青铜峡市| 瓦房店市| 乐陵市| 白玉县| 长武县| 延庆县| 深水埗区| 浪卡子县| 宝鸡市| 南华县| 梁河县| 黄冈市| 静安区| 昌江| 亚东县| 双桥区| 北宁市| 甘德县| 孝昌县|