部署nginx反向代理三个web服务,调度算法使用加权轮询(由于物理原因只开启两台服务器)
AutoNginxNfsService.sh
#/bin/bash systemctl status nginx if(($?==4)) then yum install -y nginx if(($?==0)) then #echo 'Yes!' systemctl start nginx if(($?==0)) then echo "Congratulations!! Nginx start OK!!" else echo "Sorry is Fail!!!" fi else echo"sorry install is Fail!!!" fi elif(($?==3)) then systemctl start nginx if(($?==0)) then echo "Congratulations!! Nginx start OK!!!" else echo "sorry!!" fi elif(($?==0)) then echo "OKOKOK!!!" else echo "I am so sorry" fi echo "config writing...." grep 'upstream' /etc/nginx/nginx.conf if(($?!=0)) then sed -ri '/^http/a upstream Yanlong {' /etc/nginx/nginx.conf sed -ri '/^upst/a server yanlongweb1 weight=3\;' /etc/nginx/nginx.conf sed -ri '/^server yanlongweb1/a server yanlongweb2\;' /etc/nginx/nginx.conf sed -ri '/^server yanlongweb2/a \}' /etc/nginx/nginx.conf sed -ri '/^(\ +)(location)(\ )(\/)/a proxy_pass http:\/\/Yanlong\;' /etc/nginx/nginx.conf fi echo "config write is OK!" systemctl reload nginx if(($?==0)) then echo "HTTP load balancer is OK!" else echo "Sorry!!" fi systemctl status nfs if(($?==4)) then yum install rpcbind nfs-utils -y if(($?==0)) then #echo 'Yes!' systemctl start nfs if(($?==0)) then echo "Congratulations!! nfs start OK!!" else echo "Sorry is Fail!!!" fi else echo"sorry install is Fail!!!" fi elif(($?==3)) then systemctl start nfs if(($?==0)) then echo "Congratulations!! nfs start OK!!!" else echo "sorry!!" fi elif(($?==0)) then echo "OKOKOK!!!" else echo "I am so sorry" fi echo "config writing...." echo "/webindex 192.168.16.0/24(rw,sync,fsid=0)" > /etc/exports echo "config write is OK!" systemctl reload nfs if(($?==0)) then echo "NFS service is OK!" else echo "Sorry!!" fi
所有web服务使用共享存储nfs,保证所有web都对其有读写权限,保证数据一致性
#/bin/bash systemctl status nginx if(($?==4)) then yum install -y nginx if(($?==0)) then #echo 'Yes!' systemctl start nginx if(($?==0)) then echo "Congratulations!! Nginx start OK!!" else echo "Sorry is Fail!!!" fi else echo"sorry install is Fail!!!" fi elif(($?==3)) then systemctl start nginx if(($?==0)) then echo "Congratulations!! Nginx start OK!!!" else echo "sorry!!" fi elif(($?==0)) then echo "OKOKOK!!!" else echo "I am so sorry" fi echo "config writing...." sed -ri '/^(\ +)(location)(\ )(\/)/a root\ \/nginxwebservice\;' /etc/nginx/nginx.conf sed -ri '/^root\ \/nginxwebservice/a index\ web.html\;' /etc/nginx/nginx.conf echo "config write is OK!" systemctl reload nginx if(($?==0)) then echo "HTTP load balancer YanlongWEBservice is OK!" else echo "Sorry!!" fi systemctl status nfs if(($?==4)) then yum install rpcbind nfs-utils -y if(($?==0)) then #echo 'Yes!' systemctl start nfs if(($?==0)) then echo "Congratulations!! nfs start OK!!" else echo "Sorry is Fail!!!" fi else echo"sorry install is Fail!!!" fi elif(($?==3)) then systemctl start nfs if(($?==0)) then echo "Congratulations!! nfs start OK!!!" else echo "sorry!!" fi elif(($?==0)) then echo "OKOKOK!!!" else echo "I am so sorry" fi echo "config writing...." mount -t nfs 192.168.16.120:/webindex/ /nginxwebservice/ echo "config write is OK!" systemctl reload nfs if(($?==0)) then echo "NFS service is OK!" else echo "Sorry!!" fi