分享一下這次艱難的配置過程,銜接上一篇的配置內網獨立IP虛擬機。
先吐槽一波,由于公司網絡屬于內網,與外網互不相通,所以在安裝nginx的時候可能會去外網找相對應rpm文件,而且也有許多的版本不兼容問題,好煩;其實我自己后面才知道,系統鏡像文件中就有與當前系統兼容的rpm文件,就先這樣,開始安裝教程啦!
準備好安裝的文件,安裝的Linux系統是redhat6.5之前配置網絡的是CentOS7,其實這兩個系統配置都差不多
nginx-1.12.2.tar.gz?? 官網鏈接:http://nginx.org/
keepalived-1.2.2.tar.gz? 官網鏈接:https://www.keepalived.org/
nginx是用來配置集群,而keepalived用來配置虛擬IP,不僅能夠增加服務器的安全性,而且在運行過程中,如果服務器發生故障也能快速的知道,并且讓專業的人員去修理,提高服務器檢修速度效率;
將這兩個壓縮包拷貝到系統的某個文件夾下面(本人用的目錄:/usr/local ):
這是我本地的文件置放的目錄:
1、nginx的安裝與配置
解壓后,進入文件夾使用 # ./configure --with-http_ssl_module ?--prefix=/usr/local/nginx 進行安裝;
執行報錯:
缺少pcre的環境導致報錯;由于在安裝該系統時自帶了gcc環境,所以gcc環境配置可以不用管,如果報錯C compiler cc is not found,應該先安裝gcc環境,可以統一安裝.rpm文件,所需要的文件可以在系統安裝文件.iso,解壓文件夾下的Packages文件夾下面的(這下面有全部的rpm文件):
gcc編譯環境需要的rpm文件:
mpfr-2.4.1-6.el6.x86_64.rpm
ppl-0.10.2-11.el6.x86_64.rpm
cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
gcc-4.4.7-4.el6.x86_64.rpm
執行命令并依次:# rpm –ivh mpfr-2.4.1-6.el6.x86_64.rpm
回歸正題,缺少pcre環境,可以取官網下載:https://ftp.pcre.org/pub/pcre/
我選擇用的是8.39版本
將該文件夾放置與nginx(/usr/local/)同級路徑
進入文件后執行:# ./configure
再執行命令
# make
# make install
安裝成功,而對于其他有些系統會報:You need a C++ compiler for C++ support
這個是因為沒有安裝gcc-c++環境,同樣去packages下面找rpm包:
libstdc++-4.4.7-4.el6.x86_64.rpm??
libstdc++-devel-4.4.7-4.el6.x86_64.rpm
gcc-c++-4.4.7-4.el6.x86_64.rpm
使用之前的同一條命令依次安裝這些rpm文件就可以了
接著繼續安裝nginx:
依舊執行安裝命令:
結果還是報錯(難受啊)
這次是zlib的包找不到 去官網:http://www.zlib.net/
將該文件夾放置與nginx(/usr/local/)同級路徑
進入文件夾后,執行:
# ./configure
# make
# make install
執行后(終于可以了吧)!!!
這個OpenSSL library沒有被使用到說明又缺少環境,還得去找這個rpm文件,同樣去packages下面找rpm包進行安裝;
先要安裝這兩個rpm包,同理:
終于裝上了。。。。執行命令:# ./configure --with-http_ssl_module ?--prefix=/usr/local/nginx
查看目錄
到這里記得:
# make
# make install
這樣才算安裝成功
conf/nginx.conf : 是nginx的配置文件
啟動在sbin文件夾下面 , 啟動 :# ./nginx
咦?竟然報錯了:不要慌:
發現有一個軟連接找不到 , 報 Not found : 建立一個軟連接吧:
# cd /lib64
# ln -s libpcre.so.0.0.1 libpcre.so.1
?
然后就能啟動了,可以在瀏覽器(Linux)看了:
現在用 nginx 配置集群啦,現在Windows上面能不能訪問,如果訪問不了,可能是因為防火墻,我們可以把它關閉:
#service iptables stop?
準備好兩個服務器的Tomcat作為案例,這個兩臺不同的虛擬機,
配置IP可以參考我的上一篇文章:https://blog.csdn.net/qq_40874285/article/details/100187830,
配置Tomcat我之前的文章也有提到:https://blog.csdn.net/qq_40874285/article/details/82748070。
?
?
配好后,進入conf/nginx.conf文件,添加下面幾步(注意加分號,免得入坑):
有個要注意的地方就是在新建 location ^~ /docs {} 的時候 /dcos這個路徑在Tomcat部署的項目一定要有該路徑,否則會報404 Not Found
^~這個的具體意思是指如果把這個前綴用于一個常規字符串,那么告訴nginx 如果路徑匹配那么不測試正則表達式。
具體可參考:https://blog.csdn.net/u012260238/article/details/88948590
先殺死 : # killall nginx 再啟動。
現在為了看到集群的效果,我們修改一下nginx.conf,把這個添加到根路徑訪問
現在nginx安裝地址在192.168.0.13上,目前訪問的是192.168.0.12:8080,我們把12上的停掉:
集群的效果已經達到了,自動切換服務器。
?
2、安裝keepalived:
把安裝包解壓,放置與nginx同路徑目錄下,進入并執行命令
# ./configure --prefix=/usr/local/keepalived
唉! 又有環境沒裝上,裝吧,同理去packages找rpm文件:
繼續安裝:
說明不缺環境了:
#make
#make install
繼續:
#mkdir /etc/keepalived
#cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived
#cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d
#cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig
#ln -s /usr/local/keepalived/sbin/keepalived /sbin
啟動:#/etc/init.d/keepalived start
停止:#/etc/init.d/keepalived stop
修改日志參數:
# vim /etc/sysconfig/keepalived
修改參數:KEEPALIVED_OPTIONS="-d -D -S 0"
修改日志路徑:
# vim /etc/rsyslog.conf? 添加并重啟
#service rsyslog.restart
最后可以配置虛擬ip了
#vim /etc/keepalived/keepalived.conf
虛擬ip一定要在同網段。重啟keepalived和nginx。
虛擬ip訪問配置成功。
終于完工啦。以上就是我的安裝過程和一些踩到的坑,如果大家在安裝遇見了其他問題
,可以一起討論呀!
?