LVS簡單應用

準備兩臺虛擬機:Client/Server

  • 環境:
    Distributor ID: CentOS
    Description: CentOS Linux release 7.7.1908 (Core)
    Release: 7.7.1908
    Codename: Core

實現LVS的負載均衡

  • Client做爲客戶端,Server做爲服務端
  • 在Server端運行安裝LVS用於調度
  • 在Server端運行兩個nginx鏡像提供web服務

具體實現

systemctl start docker
docker pull nginx:1.17-alpine
  • 部署兩個nginx容器做爲web服務:web一、web2
docker run --name web1 -d nginx:1.17-alpine
docker exec -it web1 /bin/sh
echo '<h1>web1<h1>' > /usr/share/nginx/html/index.html

docker run --name web2 -d nginx:1.17-alpine
docker exec -it web2 /bin/sh
echo '<h1>web2<h1>' > /usr/share/nginx/html/index.html
  • 查看Server端和容器的ip地址
    Server端:直接運行ifconfig
    容器:用docker exec進入容器的狀況下運行ifconfignginx

  • 安裝ipvsadm
yum -y install ipvsadm
  • 添加調度規則
ipvsadm -A -t Server端ip地址:80 -s rr
ipvsadm -a -t Server端ip地址:80 -r 容器ip地址:80 -m
  • Client端訪問Server
curl Server端ip地址

實驗結果

遇到問題

  • Client端沒法訪問Server端的web服務,但能夠ping通
  • 解決:開放Server端的80端口
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
相關文章
相關標籤/搜索