前提-配置java環(huán)境變量
準(zhǔn)備centos服務(wù)器或者虛擬機(jī),以及JAVA環(huán)境,這個(gè)是必須的前提啊,我相信你可以的。
tomcat
下載curl "http://mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.31/bin/apache-tomcat-8.5.31.tar.gz" -o apache-tomcat-8.5.31.tar.gz
- 解壓tar -xvf apache-tomcat-8.5.31.tar.gz
- 啟動(dòng)./apache-tomcat-8.5.31/bin/startup.sh
nginx
下載及解壓 相關(guān)的模塊到/u01目錄
- curl "http://nginx.org/download/nginx-1.14.0.tar.gz" -o nginx-1.14.0.tar.gz
- tar -xvf nginx-1.14.0.tar.gz
- curl "http://www.zlib.net/zlib-1.2.11.tar.gz" -o zlib-1.2.11.tar.gz
- tar -xvf zlib-1.2.11.tar.gz
- curl "https://jaist.dl.sourceforge.net/project/pcre/pcre/8.41/pcre-8.41.tar.gz" -o pcre-8.41.tar.gz
- tar -xvf pcre-8.41.tar.gz
- curl "https://www.openssl.org/source/openssl-1.0.2o.tar.gz" -o openssl-1.0.2o.tar.gz
- tar -xvf openssl-1.0.2o.tar.gz
編譯安裝nginx
cd nginx-1.14.0./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-pcre=../pcre-8.41 --with-zlib=../zlib-1.2.11 --with-openssl=../openssl-1.0.2omake make install
如果有異常:./configure: error: C compiler cc is not found,則安裝gcc等軟件
yum -y install gcc gcc-c++ autoconf automake make
配置并啟動(dòng),最精簡的nginx負(fù)載均衡配置,僅15行配置,直接覆蓋conf文件夾下面的nginx.conf
nginx.conf全部內(nèi)容
接下來就是通過keepalived實(shí)現(xiàn)nginx的高可用了
學(xué)習(xí)感言
這是我在學(xué)習(xí)下面這些高并發(fā)分布式技術(shù)時(shí)的筆記,不知道怎么發(fā)附件,需要配置文件的話我后續(xù)補(bǔ)上,或者你可以私信我。
高并發(fā)分布式技術(shù)學(xué)習(xí)課程
keepalived
下載安裝相關(guān)相關(guān)的組件
yum -y install openssl-devel yum -y install libnl libnl-develyum install -y libnfnetlink-devel
下載安裝keepalived
下載curl "http://www.keepalived.org/software/keepalived-1.4.4.tar.gz" -o keepalived-1.4.4.tar.gz
- tar -xvf keepalived-1.4.4.tar.gz
- cd keepalived-1.4.4
- 安裝到/usr/local/keepalived目錄./configure --prefix=/usr/local/keepalived --sysconf=/etc
- make && make install
配置文件存放地址
配置放在/etc/keepalived/,三份配置文件(一個(gè)nginx_monitor監(jiān)控腳本,主備各一份keepalived配置)
nginx監(jiān)控shell腳本 nginx_monitor.sh 文件
\創(chuàng)建nginx monitor 腳本,
并賦予可執(zhí)行權(quán)限chmod +x /etc/keepalived/nginx_monitor.sh
- 測試一下腳本能不能執(zhí)行執(zhí)行命令:
/etc/keepalived/nginx_monitor.sh沒報(bào)錯(cuò)即表示為成功
nginx_monitor.sh
keepalived配置(/etc/keepalived/目錄下)
- master主機(jī)keepalived-nginx-master.conf
放在備機(jī)- backup備機(jī)keepalived-nginx-backup.conf
keepalived-nginx-master.conf
keepalived-nginx-backup.conf
啟動(dòng)keepalived
- 啟動(dòng)master主機(jī)
/usr/local/keepalived/sbin/keepalived -f /etc/keepalived/keepalived-nginx-master.conf - 啟動(dòng)backup備機(jī)/usr/local/keepalived/sbin/keepalived -f /etc/keepalived/keepalived-nginx-backup.conf
停止
ps -ef | grep keepalivedkill -9 關(guān)閉相關(guān)的進(jìn)程
測試高可用
1. 關(guān)掉備機(jī),功能完全不受影響。2. 關(guān)掉主機(jī),虛擬IP漂移到備機(jī),備機(jī)開始工作。3. 關(guān)掉主機(jī)nginx,主機(jī)監(jiān)控到無nginx后,自動(dòng)切換