docker nginx1.7.6+keepalived實現雙機熱備


0.前提條件
環境兩台ubuntu版本14.04 64位系統(並獲取root權限)
假設兩台服務器ip為:172.16.34.214(master),172.16.34.215(backup),keepalived的虛擬ip為172.16.34.216
兩台ubuntu系統上裝好docker,版本如下
 
1.運行docker的nginx1.7.6鏡像實例
拉取基於官方的nginx1.7.6鏡像
#docker pull nginx:1.7.6
新建nginx測試頁面(同樣在另外一台機子上就不重復了,記得改ip)
#mkdir -p /tmp/docker
#echo "<h2 >This is nginx official container running on 172.16.34.214 </h2><br /> static files:/tmp/docker/index.html" > /tmp/docker/index.html
運行docker實例
#docker run --name nginx_m --restart=always -v /tmp/docker:/usr/share/nginx/html:ro -p 80:80 -d nginx:1.7.6
(注:--restart=always是指在docker服務重啟后,該容器服務也會自動重啟)
 
2.宿主機安裝配置keepalived
#apt-get clean && apt-get update
#apt-get install -y libssl-dev openssl libpopt-dev
#apt-get install -y keepalived
#cp /usr/share/doc/keepalived/samples/keepalived.conf.sample /etc/keepalived/keepalived.conf
#vim /etc/keepalived/keepalived.conf
master主機如下配置                                                              backup如下配置
     
啟動keepalived服務
#service keepalived start[stop,restart] 
在master機器上面查看虛擬是否綁定上了
 
3.驗證雙活效果
訪問172.16.34.214主機:
訪問172.16.34.215主機:
 
訪問172.16.34.216虛擬ip:
可以看出此時master主機nginx運行正常
 
把master主機ngxin服務停止
#docker stop nginx_m
 
在215機子查看ip綁定
#ip a
 
可以看到虛擬ip遷移至備份機器了,說明我們配置成功!
訪問網頁
 
再把master主機nginx恢復回來
#docker start nginx_m
在214機子查看ip綁定
#ip a
訪問網頁
 
小結:安裝都很簡單,配置其實也不復雜,就是要細心點,本文就為了給大家參考,希望大家可以實際運用到自己的生產環境中去。
 注:轉載請注明出處!
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM