热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

LVS负载均衡群集Keepalived部署

LVS负载均衡群集-Keepalived部署一、Keeplived简介二、Keepalived工作原理三.部署LVSKeepalived高可用群集1、实验需求:2.配


LVS负载均衡群集-Keepalived部署

  • 一、Keeplived简介
  • 二、Keepalived工作原理
  • 三.部署LVS+Keepalived 高可用群集
    • 1、实验需求:
  • 2.配置节点服务器1
  • 节点服务器2
  • 主负载调度器
  • 负载调度器






一、Keeplived简介

专为LVS和HA设计的一款健康检查工具
支持故障自动切换(Failover)
支持节点健康状态检查(Health Checking)

二、Keepalived工作原理


  • Keepalived是一个基于VRRP协议来实现的LVS服务高可用方案,可以解决静态路由出现的单点故障问题

  • 在一个LVS服务集群中通常有主服(MASTER)和备份服务器(BACKUP)两种角色的服务器,但是对外表现为一个虚拟IP,主服务器会发送VRRP通告信息给备份服务器,当备份服务器收不到VRRP消息的时候,即主服务器异常的时候,备份服务器就会接管虚拟IP,继续提供服务,从而保证了高可用性


三.部署LVS+Keepalived 高可用群集


1、实验需求:

节点服务器1--------192.168.13.10
节点服务器2--------192.168.13.20
主负载调度器-------192.168.13.30
备负载调度器-------192.168.13.40



2.配置节点服务器1

(192.168.13.10)

[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
setenforce: SELinux is disabled
[root@localhost ~]# yum install -y httpd
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-lo ifcfg-lo:0
[root@localhost network-scripts]# vim ifcfg-lo:0内部配置: DEVICE=lo:0IPADDR=192.168.13.100NETMASK=255.255.255.255ONBOOT=yes[root@localhost network-scripts]# ifup lo:0 ##开启网卡
[root@localhost network-scripts]# route add -host 192.168.13.100 dev lo:0 ##vip地址需要通过虚网卡进入
##永久配置##
[root@localhost network-scripts]# vim /etc/rc.local内部配置添加:route add -host 192.168.13.100 dev lo:0[root@localhost network-scripts]# chmod +x /etc/rc.d/rc.local ## 添加执行权限[root@localhost network-scripts]# vim /etc/sysctl.conf内部配置:net.ipv4.conf.lo.arp_ignore = 1 net.ipv4.conf.lo.arp_announce = 2net.ipv4.conf.all.arp_ignore = 1net.ipv4.conf.all.arp_announce = 2[root@localhost network-scripts]# sysctl -p ## 加载
net.ipv4.conf.lo.arp_ignore = 1 #系统只响应目的IP为本地IP的ARP请求
net.ipv4.conf.lo.arp_announce = 2 #系统不使用IP包的源地址来设置ARP
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
[root@localhost network-scripts]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# echo '

This is the first test web!

' > index.html
[root@localhost html]# systemctl start httpd

在这里插入图片描述
在这里插入图片描述


节点服务器2

[root@localhost ~]# yum install -y httpd
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-88.el7.centos 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-88.el7.centos,它被软件包 httpd-2.4.6-88.el7.centos.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-88.el7.centos.x86_64 需要
--> 正在检查事务
---> 软件包 httpd-tools.x86_64.0.2.4.6-88.el7.centos 将被 安装
---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装
--> 解决依赖关系完成
.....
,,,,
.....
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-lo:0
内部:DEVICE=lo:0IPADDR=192.168.13.100NETMASK=255.255.255.255ONBOOT=yes[root@localhost ~]# ifup lo:0
[root@localhost ~]# route add -host 192.168.13.100 dev lo:0
[root@localhost ~]# vim /etc/rc.local
[root@localhost ~]# chmod +x /etc/rc.d/rc.local
[root@localhost ~]# vim /etc/sysctl.conf
[root@localhost ~]# sysctl -p
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
[root@localhost ~]# cd /var/www/html/
[root@localhost html]# echo '

This is the second test web!

' > index.html
[root@localhost html]# systemctl start httpd

主负载调度器

[root@localhost ~]# cd /etc/keepalived
[root@localhost keepalived]# cp keepalived.conf keepalived.conf.bak
###复制配置文件####
[root@localhost keepalived]# vim keepalived.conf:set nu ##打开行号smtp_server 127.0.0.1 ## 第10行:邮箱地址改成本地iprouter_id LVS_01 ### 第12行:区分路由名称 改成01###### 下面4行 全部删掉 ############ vrrp 热备份实例配置#######
interface ens33 ## 第17行:第一张网卡名称 priority 100 这行的上方添加:nopreempt ### 非抢占模式192.168.58.100 ## 第27行:VIP地址 后面的两行多余ip删掉######### 虚拟服务器 ###########192.168.58.100 80 ## 第31行:虚拟IP地址为VIP地址,80端口为http协议lb_kind DR ## 第34行:LVS工作模式为DRpersistence_timeout 0 ### 第35行:长连接超时时间,单位秒protocol TCP ### 第36行:健康检查协议为tcp192.168.58.15 80 #### 第38行:真实节点服务器的ip地址,80号端口##### 下面为健康检查方式:########TCP_CHECK { #### 第40行 :端口检查的方式connect_port 80 #### 通过tcp协议 检查80号端口connect_timeout 3nb_get_retry 3delay_before_retry 3########## 后面的不需要一直删到第一个 "}" 为止:38,46 co 46 #### 末行模式 复制另外一台节点服务器配置记得将真实节点服务器ip地址改一下100 dd ###### 在第58行 删除后面不需要的虚拟服务器配置[root@localhost keepalived]# systemctl start keepalived
[root@localhost keepalived]# ip addr
### 查看相关配置
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:c7:ea:82 brd ff:ff:ff:ff:ff:ffinet 192.168.13.30/24 brd 192.168.13.255 scope global noprefixroute ens33valid_lft forever preferred_lft foreverinet6 fe80::20c:29ff:fec7:ea82/64 scope link noprefixroute valid_lft forever preferred_lft forever
3: virbr0: mtu 1500 qdisc noqueue state DOWN group default qlen 1000link/ether 52:54:00:83:ff:e2 brd ff:ff:ff:ff:ff:ffinet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0valid_lft forever preferred_lft forever
4: virbr0-nic: mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000link/ether 52:54:00:83:ff:e2 brd ff:ff:ff:ff:ff:ff[root@localhost keepalived]# scp keepalived.conf 192.168.13.30:`pwd` #远程传输文件到备负载调度器
The authenticity of host '192.168.13.30 (192.168.13.30)' can't be established.
ECDSA key fingerprint is SHA256:ka7ipT8mDX2Z2IxR+3inYCB+HuVmU+rIV5UU/HErCbQ.
ECDSA key fingerprint is MD5:8d:27:22:9b:97:78:5a:0a:dd:c8:2e:66:44:9a:64:57.Are you sure you want to continue connecting (yes/no)? YES
Warning: Permanently added '192.168.13.30' (ECDSA) to the list of known hosts.root@192.168.13.30's password:
keepalived.conf 100% 1281 3.3MB/s 00:00 [root@localhost keepalived]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@localhost keepalived]# systemctl start ipvsadm[root@localhost keepalived]# systemctl restart keepalived[root@localhost keepalived]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConn

在这里插入图片描述
在这里插入图片描述


负载调度器

[root@localhost ~]# cd /etc/keepalived/
[root@localhost keepalived]# vim keepalived.confrouter_id LVS_02state BACKUPpriority 90[root@localhost keepalived]# systemctl start keepalived
[root@localhost keepalived]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@localhost keepalived]# systemctl start ipvsadm
[root@localhost keepalived]# systemctl restart keepalived
[root@localhost keepalived]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConn

推荐阅读
  • Linux负载均衡LVS(IPVS)
    一、LVS简介LVS是LinuxVirtualServer的简称,也就是Linux虚拟服务器,是一个由章文嵩博士发起的自由软件项目,现在已经是Linux ... [详细]
  • 大数据学习环境安装关于防火墙​centos7使用的是firewalld,centos之前使用的是iptablesCentOS7关闭防火墙查看防火墙状态sudosy ... [详细]
  • 在云服务器中搭建Jupyter Notebook环境
    目录前言二、JupyterNotebook搭建步骤1.云服务器准备2.安装Python及pip3.安装JupyterNotebook4.运行JupyterNoteboo ... [详细]
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • LVS-DR直接路由实现负载均衡示例
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • Nginxgaodaima.comnginx属于七层架构,支持的是http协议,本身对tcp协议没有支持。所以不能代理mysql等实现负载均衡。但是lvs这个东西不熟悉,主要是公司 ... [详细]
  • 目录结构如下:Nginx基础知识NginxHTTP服务器的特色及优点Nginx的主要企业功能Nginx作为web服务器的主要应用场景包括:Nginx的安装安装环境 ... [详细]
  • 系统不能本文来源gaodai$ma#com搞$代*码*网连接数据库,关键要看两个数据:1、数据库系统允许的最大可连接数max_connections。这个参数是可以设置的。如果不设 ... [详细]
  • 阿里p8用端午节3天假期整理出了Spring Cloud知识点大全,太全了
     前言:今天一觉起来,发现我们开工的日期又延迟了,虽然已经在家办公一个多礼拜了,但是由于家里的环境还是不能有很高的效率。于是干脆就对SpringCloud的一些知识点做了一些整理。 ... [详细]
  • 关于初学PHP时的知识积累总结【PHP】
    后端开发|php教程PHP,知识积累后端开发-php教程PHP基础A、初识PHPPHP是与HTML混合使用的嵌入式语言。1、PHP标记默认标记短标记,需在php.ini中将shor ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 护墙_搭建LVS负载均衡NAT和DR模式
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了搭建LVS负载均衡NAT和DR模式相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 目录Atlas介绍Atlas部署Atlas基本管理Atlas结合MHA故障恢复读写分离建议Atlas介绍Atlas是由Qihoo360Web平台部基础架构团队开发维护的一个基于My ... [详细]
author-avatar
天飞的鹊桥会大美女
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有