千家信息网

LVS+keepalived+httpd高可用集群

发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,环境:主keepalived服务器:192.168.80.100从keepalived服务器: 192.168.80.101Web服务器:192.168.80.102
千家信息网最后更新 2024年10月19日LVS+keepalived+httpd高可用集群
环境:主keepalived服务器:192.168.80.100从keepalived服务器:   192.168.80.101Web服务器:192.168.80.102                    192.168.80.103

在80.100虚拟机上:systemctl stop firewalld           //关闭防火墙setenforce 0                            //关闭监控
yum install lrz* -y       //安装上传软件把keepalived包拉入

tar xf keepalived-1.4.2.tar.gz -C /opt/       //解压keepalived-1.4.2文件到/optcd /opt/keepalived-1.4.2/
yum install gcc gcc-c++ make popt-devel kernel-devel openssl-devel -y
./configure --prefix=/
make && make install
cd /cd /etc/ls | grep keepalivedcd keepalived/

vi keepalived.conf                          //进入keepalived删除所有内容并添加以下内容:! Configuration File for keepalivedglobal_defs {   router_id LVS_01            //本服务器的名称}vrrp_instance VI_1 {            //定义VRRP热备实例    state MASTER             //热备状态,MASTER表示主服务器,BACKUP表示从服务器    interface ens32            //承载VIP地址的物理接口    virtual_router_id 51        //虚拟路由器的ID号,每个热备组保持一致    priority 110               //优先级,数值越大优先级越高    advert_int 1               //通告间隔秒数(心跳频率)    authentication {            //热备认证信息,每个热备组保持一致        auth_type PASS        //认证类型        auth_pass 6666        //密码字符串    }    virtual_ipaddress {          //指定漂移地址(VIP),可以有多个        192.168.80.188    }}virtual_server 192.168.80.188 80 {      //虚拟服务器地址(VIP)、端口        delay_loop 6               //健康检查的间隔时间(秒)        lb_algo rr                  //轮询(rr)调度算法        lb_kind DR                 //直接路由(DR)群集工作模式        persistence_timeout 60       //连接保持时间(秒)        protocol TCP                //应用服务器采用的是TCP协议real_server 192.168.80.102 80 {         //第一个Web服务器节点的地址、端口        weight 1                   //节点的权重        TCP_CHECK {                //健康检查方式        connect_port 80             //检查的目标端口        connect_timeout 3           //连接超时(秒)        nb_get_retry 3              //连接超时(秒)        delay_before_retry 3          //重试间隔        }}real_server 192.168.80.103 80 {           //第二个Web服务器节点的地址、端口        weight 1                                     //节点的权重        TCP_CHECK {                            //健康检查方式             connect_port 80                    //检查的目标端口             connect_timeout 3                 //连接超时(秒)             nb_get_retry 3                       //连接超时(秒)             delay_before_retry 3               //重试间隔     }  }}   :wq        //保存退出
service keepalived startsystemctl status keepalived      //查看keepalived状态

ip addr show dev ens32

modprobe ip_vsyum install ipvsadm -yservice keepalived restartipvsadm -Ln            //查看LVS虚拟服务器


在80.101虚拟机上:systemctl stop firewalld           //关闭防火墙setenforce 0                            //关闭监控
yum install lrz* -y       //安装上传软件把keepalived包拉入

tar xf keepalived-1.4.2.tar.gz -C /opt/       //解压keepalived-1.4.2文件到/optcd /opt/keepalived-1.4.2/
yum install gcc gcc-c++ make popt-devel kernel-devel openssl-devel -y
./configure --prefix=/
make && make install
modprobe ip_vsyum install ipvsadm -y
vi /etc/keepalived/keepalived.conf            //删除所有内容并添加以下内容:! Configuration File for keepalivedglobal_defs {   router_id LVS_02}vrrp_instance VI_1 {    state BACKUP    interface ens32    virtual_router_id 51    priority 105    advert_int 1    authentication {        auth_type PASS        auth_pass 6666    }    virtual_ipaddress {        192.168.80.188    }}virtual_server 192.168.80.188 80 {        delay_loop 6        lb_algo rr        lb_kind DR        persistence_timeout 60        protocol TCPreal_server 192.168.80.102 80 {        weight 1        TCP_CHECK {        connect_port 80        connect_timeout 3        nb_get_retry 3        delay_before_retry 3        }}real_server 192.168.80.103 80 {        weight 1        TCP_CHECK {             connect_port 80             connect_timeout 3             nb_get_retry 3             delay_before_retry 3     }  }}   :wq       //保存退出
service keepalived startsystemctl status keepalived           //查看keepalived状态

----------------------------

在80.102虚拟机上:systemctl stop firewalldsetenforce 0
yum install httpd -y                  //安装httpd    
vi /etc/httpd/conf/httpd.confServerName   www.example.com.80  前面的#去掉

cd /var/www/html/              //进入目录echo "

SERVER AA

" > index.html //在index.html添加内容lscat index.html

systemctl start httpd
cdls./web.sh

ifconfig //查找IP地址


在虚拟机80.103上:systemctl stop firewalldsetenforce 0

yum install httpd -y //安装httpd

vi /etc/httpd/conf/httpd.confServerName   www.example.com.80 前面的#去掉

cd /var/www/html/            //进入目录echo "

SERVER BB

" > index.html //在index.html添加内容lscat index.html

systemctl start httpd
vi web.sh      里面添加以下内容#!/bin/bash#hahaifconfig lo:0 192.168.80.188 broadcast 192.168.80.188 netmask 255.255.255.255 uproute add -host 192.168.80.188 dev lo:0echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignoreecho "2" >/proc/sys/net/ipv4/conf/lo/arp_announceecho "1" >/proc/sys/net/ipv4/conf/all/arp_ignoreecho "2" >/proc/sys/net/ipv4/conf/all/arp_announcesysctl -p &>/dev/null    :wq       //保存退出
chmod +x web.sh      //设置权限./web.shifconfig          //查找IP地址

scp web.sh root@192.168.80.102:/root/     //把地址传送过去yesroot密码

网页上输入http:192.168.80.188

在80.103中systemctl stop httpd      //关闭httpd在页面上刷新成下面情况:

0