大数据最全【群集】——keepalived,2024年最新正式加入字节跳动

img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以戳这里获取

🍓3.1.1、关闭icmp重定向

🍓3.1.2、配置负载分配策略

🍓3.2、配置主调度器

🍓3.3、配置备份调度器

🍌4、GFS

🍌4.1、web端

🍌4.1.1、web配置VIP

🍌4.1.2、关闭部分arp应答

🍌4.1.3、配置httpd

🍌4.2、配置GFS端

🍌4.2.1、创建复制卷

🍌4.2.2、web挂载复制卷

🍌4.2.3、测试

🍎5、zabbix

🍎5.1、安装

🍎5.1.1、创建zabbix源

🍎5.1.2、安装MariaDB

🍎5.1.3、安装Zabbix

🍎5.1.4、配置zabbix

🍎5.2 、zabbix界面优化

🍎5.3、监控LVS

🍎5.3.1、web界面配置

🍎5.4、监控web

🍎5.4.1、web界面配置


🍤:事实证明大虾还是好吃的。

拓扑图

案例实施

1、环境配置

环境要求:如图所示配置IP地址,所有主机桥接到vmnet1,并关闭防火墙和Selinux。GFS两台服务器分别添加两块20G的磁盘,客户端使用宿主机。

1.1、配置IP地址

关于IP的配置这里以web1为例,只有web1和web2添加两块网卡,相对比其他服务器的配置只是多一块需要配置的网卡,其他服务器正常配置IP即可。

[root@web1 ~]# systemctl stop firewalld
[root@web1 ~]# systemctl disable firewalld
[root@web1 ~]# setenforce 0
[root@web1 ~]# cd /etc/sysconfig/network-scripts/
[root@web1 network-scripts]# vim ifcfg-ens33 
......省略部分内容
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.3
NETMASK=255.255.255.0
[root@web1 network-scripts]# cp ifcfg-ens33 ifcfg-ens36
[root@web1 network-scripts]# vim ifcfg-ens36
......省略部分内容
BOOTPROTO=static
NAME=ens36
DEVICE=ens36
ONBOOT=yes
IPADDR=200.0.0.3
NETMASK=255.255.255.0
[root@web1 network-scripts]# systemctl restart network
1.2、GFS添加磁盘

关于磁盘可以开机前添加,会自动识别磁盘。若开机后添加可以执行以下命令识别磁盘。

echo "- - -" >> /sys/class/scsi_host/host0/scan
echo "- - -" >> /sys/class/scsi_host/host1/scan
echo "- - -" >> /sys/class/scsi_host/host2/scan 

到目前的配置,web1和web2可以ping通全网,而公网和私网则不能相互ping通。GFS1和GFS2每台服务器上都有一块sdb磁盘。

2、Keepalived

搭建Keepalived实现Lvs的双机热备。本次使用yum方式安装keepalived和ipvsadm管理工具。LVS1和LVS2都需要那种,这里以LVS1为例。

[root@lvs1 ~]# yum -y install keepalived ipvsadm
[root@lvs1 ~]# systemctl enable keepalived
2.1、配置主调度器
[root@lvs1 ~]# cd /etc/keepalived/
[root@lvs1 keepalived]# cp keepalived.conf keepalived.conf.back
[root@lvs1 keepalived]# vim keepalived.conf
! Configuration File for keepalived
​
global_defs {
 ......省略部分内容
   router_id LVS1           //主调度器名称
}
   
vrrp_instance VI_1 {
    state MASTER            //主调度器的热备状态
    interface ens33         //修改接口网卡
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        200.0.0.100         //配置漂移地址
    }
}   
[root@lvs1 keepalived]# systemctl start keepalived
[root@lvs1 keepalived]# ip addr show dev ens33          //查看漂移地址
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:16:da:97 brd ff:ff:ff:ff:ff:ff
    inet 200.0.0.1/24 brd 200.0.0.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet 200.0.0.100/32 scope global ens33              //此时漂移地址在主调度器上
       valid_lft forever preferred_lft forever
    inet6 fe80::c3cf:e745:3647:394a/64 scope link 
       valid_lft forever preferred_lft forever
2.2、配置备份调度器
[root@lvs2 ~]# cd /etc/keepalived/
[root@lvs2 keepalived]# cp keepalived.conf keepalived.conf.bak
[root@lvs2 keepalived]# vim keepalived.conf
! Configuration File for keepalived
​
global_defs {
......省略部分内容
   router_id LVS2               //备份调度器名称
}  
​
vrrp_instance VI_1 {
    state BACKUP                //备份调度器的热备状态
    interface ens33             //修改接口网卡
    virtual_router_id 51
    priority 99                 //修改优先级别
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        200.0.0.100             //配置漂移地址
    }
}  
[root@lvs2 keepalived]# systemctl start keepalived
[root@lvs2 keepalived]# ip addr show dev ens33              //查看漂移地址
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:55:f7:8d brd ff:ff:ff:ff:ff:ff
    inet 200.0.0.2/24 brd 200.0.0.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::15ae:efbc:5794:874b/64 scope link 
       valid_lft forever preferred_lft forever

备份服务器仍处于备份状态,因此备份服务器不会为ens33接口添加VIP地址。当主服务器失效时,VIP地址才会过来,达到了双机热备的功能。

3、LVS-DR

3.1、负载均衡

两台LVS都需要配置选项3.1中的内容(关闭ICMP重定向,配置策略)。

3.1.1、关闭icmp重定向
[root@lvs1 ~]# vim /etc/sysctl.conf
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
[root@lvs1 ~]# sysctl -p
3.1.2、配置负载分配策略
[root@lvs1 ~]# ipvsadm -C               //清除原有策略
[root@lvs1 ~]# ipvsadm -A -t 200.0.0.100:80 -s rr
[root@lvs1 ~]# ipvsadm -a -t 200.0.0.100:80 -r 200.0.0.3 -g -w 1
[root@lvs1 ~]# ipvsadm -a -t 200.0.0.100:80 -r 200.0.0.4 -g -w 1
[root@lvs1 ~]# ipvsadm-save             //保存策略
-A -t lvs1:http -s rr
-a -t lvs1:http -r 200.0.0.3:http -g -w 1
-a -t lvs1:http -r 200.0.0.4:http -g -w 1
[root@lvs1 ~]# systemctl enable ipvsadm
3.2、配置主调度器

通过配置文件添加两台web节点。

[root@lvs1 ~]# vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {            //在vrrp配置模块下面添加节点
......省略部分内容
    virtual_ipaddress {
        200.0.0.100
    }
}
......省略部分内容
virtual_server 200.0.0.100 80 {             //以下内容需要修改添加节点信息
    delay_loop 15
    lb_algo rr 
    lb_kind DR 
    protocol TCP
    
    real_server 200.0.0.3 80 {
        weight 1
        TCP_CHECK {
            connect_port 80
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 4
        }   
    }
    real_server 200.0.0.4 80 {
        weight 1
        TCP_CHECK {
            connect_port 80
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 4
        }
    }
}
[root@lvs1 ~]# systemctl restart keepalived
3.3、配置备份调度器

相同的方法配置完主调度器后,接着配置备份调度器。

[root@lvs2 ~]# vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {                        //在vrrp配置模块下面添加节点
......省略部分内容
    virtual_ipaddress {
        200.0.0.100
    }
}
......省略部分内容
virtual_server 200.0.0.100 80 {             //以下内容需要修改添加节点信息
    delay_loop 15
    lb_algo rr 
    lb_kind DR 
    protocol TCP
    
    real_server 200.0.0.3 80 {
        weight 1
        TCP_CHECK {
            connect_port 80
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 4
        }   
    }
    real_server 200.0.0.4 80 {
        weight 1
        TCP_CHECK {
            connect_port 80
            connect_timeout 3
            nb_get_retry 3
            delay_before_retry 4
        }
    }
}
[root@lvs2 ~]# systemctl restart keepalived

4、GFS

4.1、web端

GFS的配置如下表所示,两台服务器实现复制卷,复制卷的名称为share。

在两个web服务器将share复制卷挂载到web服务器的/var/www/html下。

IP主机名挂载盘挂载目录
192.168.1.1gfs1/dev/sdb(20G)/b3
192.168.1.2gfs2/dev/sdb(20G)/b3
4.1.1、web配置VIP

每个web服务器上都需要配置漂移地址(VIP)。

[root@web1 ~]# cd /etc/sysconfig/network-scripts/
[root@web1 network-scripts]# cp ifcfg-lo ifcfg-lo:0
[root@web1 network-scripts]# vim ifcfg-lo:0
DEVICE=lo:0
IPADDR=200.0.0.100
NETMASK=255.255.255.255
ONBOOT=yes
[root@web1 network-scripts]# ifup lo:0
[root@web1 network-scripts]# ifconfig lo:0
lo:0: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 200.0.0.100  netmask 255.255.255.255
        loop  txqueuelen 1  (Local Loopback)
​
[root@web1 network-scripts]# vim /etc/rc.local
......省略部分内容
/sbin/route add -host 200.0.0.100 dev lo:0          //添加一条路由
[root@web1 network-scripts]# route add -host 200.0.0.100 dev lo:0
4.1.2、关闭部分arp应答
[root@web1 ~]# vim /etc/sysctl.conf
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
[root@web1 ~]# sysctl -p
4.1.3、配置httpd
[root@web1 ~]# yum -y install httpd
[root@web1 ~]# echo "111" > /var/www/html/index.html 
[root@web1 ~]# systemctl start httpd
[root@web1 ~]# systemctl enable httpd
4.2、配置GFS端

两台GFS服务器都需要配置,以下gfs1和gfs2配置相同,我以gfs1为例,gfs2相反配置即可。

[root@gfs1 ~]# vim /etc/hosts                   //GFS本地节点解析
192.168.1.1 node1
192.168.1.2 node2
[root@gfs1 ~]# yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
[root@gfs1 ~]# systemctl start glusterd
[root@gfs1 ~]# systemctl enable glusterd
[root@gfs1 ~]# gluster peer probe node1         //本身在gfs1上操作,所以node1也可以不执行
peer probe: success. Probe on localhost not needed
[root@gfs1 ~]# gluster peer probe node2
peer probe: success.
[root@gfs1 ~]# gluster peer status              //查看GFS群集状态
Number of Peers: 1
​
Hostname: node2
Uuid: 16bc8386-0168-4c21-8ed3-e762f1bd8c77


![img](https://img-blog.csdnimg.cn/img_convert/6392d00e1595a7dbf6d29ef8c49794a3.png)
![img](https://img-blog.csdnimg.cn/img_convert/c97146aba9ff1454395f9d9af6017ed5.png)

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

obe: success.
[root@gfs1 ~]# gluster peer status              //查看GFS群集状态
Number of Peers: 1
​
Hostname: node2
Uuid: 16bc8386-0168-4c21-8ed3-e762f1bd8c77


[外链图片转存中...(img-pxi0P7xC-1715755870918)]
[外链图片转存中...(img-hzZBRw2b-1715755870919)]

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618545628)**


**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值