keepalived+nginx+tomcat高可用負載均衡

前提-配置java環境變量

準備centos服務器或者虛擬機,以及JAVA環境,這個是必須的前提啊,我相信你能夠的。

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 

# 啓動
./apache-tomcat-8.5.31/bin/startup.sh

nginx

下載及解壓 相關的模塊到/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.2o

make 

make install
若是有異常:./configure: error: C compiler cc is not found,則安裝gcc等軟件

yum -y install gcc gcc-c++ autoconf automake make java

配置並啓動

# 最精簡的nginx負載均衡配置,僅15行配置
events {
    # 併發鏈接數
    worker_connections  1024;
}
http {
    # Tomcat服務器集羣
    upstream tomcat_servers {
        server 192.168.100.1:8081;
        server 192.168.100.1:8080;
    }
    server {
        # 監聽80端口
        listen    80;
        
        # 將全部請求交給Tomcat集羣去處理
        location / {
            proxy_pass http://tomcat_servers;
        }
    }
}

# 執行命令 /usr/local/nginx/sbin/nginx 就能夠啓動啦

接下來就是經過keepalived實現nginx的高可用了nginx

學習感言

這是我在學習下面這些高併發分佈式技術時的筆記,不知道怎麼發附件,須要配置文件的話我後續補上,或者你能夠私信我。
clipboard.pngc++

keepalived

下載安裝相關相關的組件

yum -y install openssl-devel 
yum -y install libnl libnl-devel
yum 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/,三份配置文件(一個nginx_monitor監控腳本,主備各一份keepalived配置)

nginx監控shell腳本 nginx_monitor.sh 文件

# 建立nginx monitor 腳本,並賦予可執行權限
chmod +x /etc/keepalived/nginx_monitor.sh
# 測試一下腳本能不能執行
執行命令:/etc/keepalived/nginx_monitor.sh 
沒報錯即表示爲成功

keepalived配置

#  - master主機
keepalived-nginx-master.conf
#  - backup備機
keepalived-nginx-backup.conf

啓動keepalived

# 啓動master主機
/usr/local/keepalived/sbin/keepalived -f /etc/keepalived/keepalived-nginx-master.conf
# 啓動backup備機
/usr/local/keepalived/sbin/keepalived -f /etc/keepalived/keepalived-nginx-backup.conf

中止

ps -ef | grep keepalived
kill -9  關閉相關的進程

測試高可用

1. 關掉備機,功能徹底不受影響。
2. 關掉主機,虛擬IP漂移到備機,備機開始工做。
3. 關掉主機nginx,主機監控到無nginx後,自動切換
相關文章
相關標籤/搜索