本文共 5527 字,大约阅读时间需要 18 分钟。
环境:主Haproxy服务器 192.168.80.100 keepalived+Haproxy备Haproxy服务器 192.168.80.101 keepalived+Haproxyweb服务器1 192.168.80.102 httpd(nginx、tomcat)web服务器2 192.168.80.103 httpd80.100和80.101需要联网
———————————————————————————————————————
在80.100虚拟机上:systemctl stop firewalld //关闭防火墙setenforce 0 //关闭监控
cd /etc/yum.repos.d/ //进入目录cp back/* ./ //把back里内容移动到上一个目录ls //查看目录内容
yum install -y epel-releaseyum install ntp -y //安装ntpntpdate time1.aliyun.com //同步网络时间date
yum install keepalived -y //安装keepalivedcd //回到根目录
vi /etc/keepalived/keepalived.conf`删除所有内容并添加以下内容:! Configuration File for keepalivedglobal_defs { route_id haproxy-01 }vrrp_script haproxy { 定义一个热备脚本取名为haproxy script "/opt/haproxy.sh" # 检测 haproxy 状态的脚本路径 interval 2 # 检测时间间隔 weight 2 # 如果条件成立,权重+2}vrrp_instance VI_1 { state MASTER interface ens32 virtual_router_id 51 priority 150 advert_int 1 authentication { auth_type PASS auth_pass 1111 } track_script { # 将 track_script 块加入 instance 配置块 haproxy # 检查 HAProxy 服务是否存活 } virtual_ipaddress { 192.168.80.188 }}:wq
scp /etc/keepalived/keepalived.conf root@192.168.80.101:/etc/keepalived/keepalived.conf //把keepalived.conf传送到80.101中yesroot密码
yum install lrz* -y //安装上传软件把haproxy软件包拉入
scp haproxy-1.5.15.tar.gz root@192.168.80.101:/root //把haproxy软件包传送到80.101中密码
tar xf haproxy-1.5.15.tar.gz -C /opt/ //解压haproxy软件包cd /opt/haproxy-1.5.15/
源码编译安装haproxyyum install -y \pcre-devel \bzip2-devel \gcc \gcc-c++ \make
make TARGET=linux26 PREFIX=/usr/local/haproxy //标识64为系统make install PREFIX=/usr/local/haproxymkdir /etc/haproxy //创建目录cduseradd -M -s /sbin/nologin haproxyid haproxy
cd /opt/haproxy-1.5.15/cp examples/haproxy.cfg /etc/haproxy
vi /etc/haproxy/haproxy.cfg修改以下内容:# chroot /usr/share/haproxy 注释这一行uid 1000gid 1000在default模块下统计页面模块内容listen admin_stats bind 0.0.0.0:8089 stats enable mode http log global stats uri /stats stats realm Haproxy\ Statistics stats auth admin:admin #stats hide-version stats admin if TRUE stats refresh 30sweb服务器/终端listen webcluster bind 0.0.0.0:80 mode http option httpchk GET /index.html log global maxconn 3000 balance roundrobinserver web01 192.168.80.102:80 check inter 2000 fall 5server web02 192.168.80.103:80 check inter 2000 fall 5:wq
cd /opt/ls
vi haproxy.sh#!/bin/bashif [ $(ps -C haproxy --no-header | wc -l) -eq 0 ];then /usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg 启动haproxy服务fisleep 2 等待2秒if [ $(ps -C haproxy --no-header | wc -l) -eq 0 ];then service keepalived stopfi :wq //保存退出
chmod +x /opt/haproxy.sh //给这个文件设置权限cd /opt/haproxy-1.5.15/cp examples/haproxy.init /etc/init.d/haproxychmod +x /etc/init.d/haproxyll /etc/init.d/haproxychkconfig --add haproxyln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/haproxy //软链接cat /var/log/messages
service haproxy start //启动服务
netstat -anpt | grep haproxy
在网页上输入192.168.80.100:8089/stats
scp haproxy.cfg root@192.168.80.101:/etc/haproxy/ //把haproxy.cfg 传送到80.101虚拟机上密码
service haproxy stopnetstat -anpt | grep haproxysystemctl start keepalivedip addr show ens32netstat -anpt | grep haproxy
systemctl stop firewalld //关闭防火墙setenforce 0 //关闭监控
cd /etc/yum.repos.d/ //进入目录cp back/* ./ //把back里内容移动到上一个目录ls //查看目录内容
yum install -y epel-releaseyum install ntp -y //安装ntpntpdate time1.aliyun.com //同步网络时间date
yum install keepalived -y //安装keepalivedcd //回到根目录
vi /etc/keepalived/keepalived.conf //进入成以下内容:
修改成以下内容:
![]()
lstar xf haproxy-1.5.15.tar.gz -C /opt/cd /opt/haproxy-1.5.15/
源码编译安装haproxyyum install -y \pcre-devel \bzip2-devel \gcc \gcc-c++ \make
make TARGET=linux26 PREFIX=/usr/local/haproxy //标识64为系统make install PREFIX=/usr/local/haproxymkdir /etc/haproxyuseradd -s /sbin/nologin -M haproxyid haproxy
ls /etc/haproxy/cp examples/haproxy.init /etc/init.d/haproxychmod +x /etc/init.d/haproxy //给这个文件设置权限chkconfig --add haproxyln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/haproxy //软链接
service haproxy start //启动服务netstat -anpt | grep haproxy
service haproxy stop //关闭服务netstat -anpt | grep haproxy
cd /opt/vi haproxy.sh#!/bin/bash#Filename:A=$(ip addr | grep 192.168.80.188/32 | grep -v grep | wc -l)if [ $A -gt 0 ]; then service haproxy startelse service haproxy stopfi :wq
chmod +x haproxy.sh //设置权限ll systemctl start keepalived ip addr show ens32netstat -anpt | grep haproxy
————————————————————————————————————
在80.102虚拟机上:systemctl stop firewalld //关闭防火墙setenforce 0 //关闭监控
yum install httpd -y //安装httpd
vi /etc/httpd/conf/httpd.conf把ServerName www.example.com:80 前面的#删除
cd /var/www/html/ //进入这个目录echo "server aa
" > index.htmlsystemctl start httpd //启动服务
在网页上输入192.168.80.102
systemctl stop firewalld //关闭防火墙setenforce 0 //关闭监控
yum install httpd -y //安装httpd
vi /etc/httpd/conf/httpd.conf把ServerName www.example.com:80 前面的#删除
cd /var/www/html/ //进入这个目录echo "server bb
" > index.htmlsystemctl start httpd //启动服务
在网页上输入192.168.80.103
转载于:https://blog.51cto.com/14158297/2344844