前面研究了windows環境下nginx的部署及負載均衡,接着研究高可用,即2臺nginx服務器一主一備,萬一主服務器掛了,備份服務器頂上。基本方案都是配合keepalived來使用。誰知keepalived沒有windows版本,只能在linux環境下部署。這下可好,前面研究白費一半,還得研究linux環境下的安裝部署。本文對過程當中的一些要點進行記錄。linux
一、歷來沒接觸過linux,要咋操做基本兩眼一抹黑。只能依靠萬能的百度。網上方案比較多的是centos7+nginx+keepalived的方案,因而首先請公司網管準備了2臺centos7的虛擬機。nginx
二、咋遠程centos機器呢?網上資料說有各類工具,網管大人說用ssh。啥是ssh?不知道,百度唄,本人windows環境,得先安裝ssh。自行百度吧,這個簡單。shell
三、進入windows powershell,鍵入 ssh root@172.16.170.41 回車,連上了,輸入密碼(輸入信息是不顯示的,你也不知道輸入得對不對)登陸系統。root是登陸帳號,172.16.170.41就是服務器的ip。windows
四、後面的徹底按照網上各位的帖子照作就好,我就不廢話了。能夠參考這個照作就行:https://blog.csdn.net/wudinaniya/article/details/81281016 我安裝的是1.16.1版本,最後啓動那跟這篇帖子稍有不一樣,其餘徹底同樣。整個過程弄了半天,費時主要是由於對linux指令不熟悉,對於用慣了windows環境的人來講,linux命令行簡直就是反人類啊。centos
五、我把過程當中的主要用到的命令列一下:服務器
——進入目錄: cd aaa;返回上一級目錄: cd ..;直接返回根目錄:cd \;查看當前目錄下的信息:ls;負載均衡
——編輯nginx配置文件:vi nginx.conf;進入以後是瀏覽模式,要按「i」鍵進入插入模式編輯;修改完文件以後,按「esc」鍵返回瀏覽模式,再按「:」鍵,輸入wq保存退出,若是輸入q!表示不保存退出。這都什麼亂七八糟的命令!這是人乾的事嗎?ssh
六、啓動nginx:進入到sbin目錄,鍵入./nginx啓動服務。./nginx -s reload從新加載配置文件;./nginx -s stop 關閉服務。tcp
七、看結果吧,隨機分配到53跟54上去了,OK。具體負載配置可看windows環境下配置nginx負載的那個帖子,同樣的。工具
七、若是訪問發現異常,檢查一下防火牆是否是80端口沒有放開。 執行如下命令:
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=80/udp
firewall-cmd --reload
八、將nginx服務配置爲開機啓動:
編輯服務配置文件: vi /lib/systemd/
system
/nginx.service
內容以下:
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=
true
[Install]
WantedBy=multi-user.target
保存退出後執行語句實現開機啓動:systemctl enable nginx.service