下文給大家?guī)?lái)haproxy+mysql負(fù)載均衡的重點(diǎn)講解,希望能夠給大家在實(shí)際運(yùn)用中帶來(lái)一定的幫助,負(fù)載均衡涉及的東西比較多,理論也不多,網(wǎng)上有很多書籍,今天我們就用創(chuàng)新互聯(lián)在行業(yè)內(nèi)累計(jì)的經(jīng)驗(yàn)來(lái)做一個(gè)解答。
創(chuàng)新互聯(lián)主營(yíng)大渡口網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶App定制開發(fā),大渡口h5成都小程序開發(fā)搭建,大渡口網(wǎng)站營(yíng)銷推廣歡迎大渡口等地區(qū)企業(yè)咨詢本篇重點(diǎn)講解haproxy+mysql負(fù)載均衡,搭建完成后與之前搭建的redis+ssm進(jìn)行整合
(注:這里用到了兩臺(tái)mysql數(shù)據(jù)庫(kù),分別安裝兩臺(tái)虛擬機(jī)上,已經(jīng)成功實(shí)現(xiàn)主主復(fù)制,如果有需要,請(qǐng)查看我另外一篇博客:http://www.cnblogs.com/cuijiale/p/8039421.html)
1、首先下載最新的的haproxy安裝包:haproxy-1.7.9.tar.gz
下載完成后cp到特定的目錄下/usr/local
2、安裝haproxy
解壓“tar -zxvf haproxy-1.7.9.tar.gz”在本目錄,壓縮完成后“cd haproxy-1.7.9”
執(zhí)行安裝命令“make TARGET=linux3100 CPU=x86_64 PREFIX=/usr/local/haproxy-1.7.9”
“make install PREFIX=/usr/local/haproxy-1.7.9”
3、安裝完成后配置啟動(dòng)
在安裝目錄的根目錄創(chuàng)建haproxy.cfg配置文件,啟動(dòng)時(shí)需要。
進(jìn)入haproxy.cfg文件修改
1 global 2 log 127.0.0.1 local2 #日志相關(guān) 3 maxconn 4096 4 chroot /var/lib/haproxy 5 pidfile /var/run/haproxy.pid 6 user haproxy 7 daemon 8 stats socket /var/lib/haproxy/stats 9 #debug10 #quiet11 12 defaults13 mode tcp #haproxy運(yùn)行模式(http | tcp | health)14 log global15 option dontlognull16 option redispatch #serverId對(duì)應(yīng)的服務(wù)器掛掉后,強(qiáng)制定向到其他健康的服務(wù)器17 retries 3 #三次連接失敗則服務(wù)器不用18 timeout http-request 10s19 timeout queue 1m20 timeout connect 10s #連接超時(shí)21 timeout client 1m #客戶端超時(shí)22 timeout server 1m #服務(wù)器超時(shí)23 timeout http-keep-alive 10s24 timeout check 10s #心跳檢測(cè)25 maxconn 600 #大連接數(shù)26 27 listen mysql28 bind 0.0.0.0:23306 #代理端口29 mode tcp #模式 TCP30 option mysql-check user haproxy #mysql健康檢查 root為mysql登錄用戶名31 balance roundrobin #調(diào)度算法32 server mysql1 192.168.40.128:3306 weight 1 check inter 1s rise 2 fall 2 #健康檢查加上check33 server mysql2 192.168.40.130:3306 weight 1 check inter 1s rise 2 fall 234 listen stats #監(jiān)控35 mode http36 bind 0.0.0.0:888837 stats enable38 stats uri /dbs39 stats realm Global\ statistics40 stats auth admin:admin
配置文件后,就可以啟動(dòng)了,不過(guò)在這之前,因?yàn)閿?shù)據(jù)庫(kù)是負(fù)載均衡,需要同步數(shù)據(jù)與訪問(wèn)數(shù)據(jù),需要?jiǎng)?chuàng)建一個(gè)一模一樣的帳號(hào)來(lái)應(yīng)對(duì)訪問(wèn)需求,并且主主復(fù)制的帳號(hào)也需要改成一樣的,為了方便直接賦予這個(gè)用戶全部權(quán)限。語(yǔ)法查看我mysql相關(guān)博客: http://www.cnblogs.com/cuijiale/p/8034319.html,其中都有提到。ok該排的坑我們已經(jīng)躺過(guò)了,這里我就啟動(dòng)服務(wù)(為了讓haproxy監(jiān)控兩個(gè)數(shù)據(jù)庫(kù)信息,需要分別創(chuàng)建一個(gè)haproxy用戶,密碼為空就好)。
./usr/local/haproxy-1.7.9/sbin/haproxy -f /usr/local/haproxy-1.7.9/haproxy.cfg
啟動(dòng)后可以通過(guò)命令去查看。啟動(dòng)一切正常
遠(yuǎn)程使用“http://192.168.40.128:8888/dbs”查看監(jiān)控情況這里用到的配置全部來(lái)自于
登錄密碼這里配置的是admin/admin可以看到我們配置的兩臺(tái)mysql已經(jīng)被監(jiān)控到了。
4、整合smm
上面配置圖中可以看到我們讓haproxy監(jiān)聽的23306端口,所以配置文件中需要連接這個(gè)端口
一切就緒,啟動(dòng)redis集群
redis主從6個(gè)節(jié)點(diǎn)全部啟動(dòng)后,啟動(dòng)web服務(wù)訪問(wèn)
數(shù)據(jù)也完美得到。一切ok,這樣我們一個(gè)SSM WEB應(yīng)用+redis集群+mysql負(fù)載均衡的高可用,高性能,高擴(kuò)展的讀寫分離架構(gòu)就搭建完成了,其中還有很多瑕疵,之后也會(huì)自己慢慢補(bǔ)齊,架構(gòu)還需要使用nginx對(duì)web應(yīng)用進(jìn)行負(fù)載均衡,減輕應(yīng)用服務(wù)器壓力。
看了以上關(guān)于haproxy+mysql負(fù)載均衡的重點(diǎn)講解,如果大家還有什么地方需要了解的可以在創(chuàng)新互聯(lián)行業(yè)資訊里查找自己感興趣的或者找我們的專業(yè)技術(shù)工程師解答的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。