keepalived安装及使用-linux


一、Keepalived简介

官网:https://www.keepalived.org/

keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障

1.1、keepalived工作原理

  1. keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议

  2. 虚拟路由冗余协议,可以认为是实现路由器高可用的协议,即将N台提供相同功能的路由器组成一个路由器组,这个组里面有一个master和多个backup,master上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip),master会发组播,当backup收不到vrrp包时就认为master宕掉了,这时就需要根据VRRP的优先级来选举一个backup当master。这样的话就可以保证路由器的高可用了。

  3. keepalived主要有三个模块,分别是core、check和vrrp。
    core模块为keepalived的核心,负责主进程的启动、维护以及全局配置文件的加载和解析。
    check负责健康检查,包括常见的各种检查方式。
    vrrp模块是来实现VRRP协议的。

1.2、 keepalived的配置文件

keepalived只有一个配置文件keepalived.conf,里面主要包括以下几个配置区域

  1. global_defs: 主要是配置故障发生时的通知对象以及机器标识(邮件通知)
  2. static_ipaddress :节点ip (通常不用改)
  3. static_routes :路由信息(通常不用改)
  4. vrrp_script :做健康检查的
  5. vrrp_instance:用来定义对外提供服务的VIP区域及其相关属性
  6. virtual_server: 在超大型的LVS中用到(通常用不到)

1.3、 架构图

在这里插入图片描述


二、Keepalived安装

端口防火墙记得放行!!!

1.1、2种安装方式

  1. yum安装
  2. 源码编译安装

1.2、 方式一 yum安装

配置文件看方式二里面的说明

#yum 安装
yum -y install keepalived

# 查看安装路径
rpm -ql keepalived

1.3、方式二 源码编译安装

下载gcc依赖

#查看版本
gcc -v

#安装gcc
yum -y install gcc openssl-devel libnfnetlink-devel

下载方式有2种:

  1. 去官网下载压缩包上传解压

    下载地址:https://www.keepalived.org/download.html

  2. 使用wget安装

    #查看是否安装wget
    rpm -qa|grep "wget"
    
    #下载 wget
    yum -y install wget
    
    #下载keepalived 版本自己指定  no-check-certificate不检查安全证书
    wget https://www.keepalived.org/software/keepalived-1.4.5.tar.gz --no-check-certificate 
    

软件下载到opt目录

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

解压到/usr/local/src

tar -zxvf keepalived-1.4.5.tar.gz -C /usr/local/src

安装依赖插件

yum install -y gcc openssl-devel popt-devel

进入解压后的目录,进行配置,进行编译

#进入源码目录
cd /usr/local/src/keepalived-1.4.5

# 先指定keepalived安装的的位置
./configure --prefix=/usr/local/keepalived

#编译+安装
make && make install

拷贝配置文件

# 配置文件init.d拷贝
cp /usr/local/src/keepalived-1.4.5/keepalived/etc/init.d/keepalived /etc/init.d/

#创建目录
mkdir /etc/keepalived

#配置文件keepalived.conf拷贝
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/

#拷贝keepalived
cp /usr/local/src/keepalived-1.4.5/keepalived/etc/sysconfig/keepalived /etc/sysconfig/

# 拷到sbin  让每个目录都能执行(运行脚本)
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/

修改配置文件

vi /etc/keepalived/keepalived.conf

#vi 命令说明-编辑模式下
set nu  	#显示行号 
shift g 	#到末尾
1 shift g   #去第一行
%d 			#清空文件
set nonu	#关闭行号

内容:

! Configuration File for keepalived

#全局配置项
bal_defs {
   #keepalived发送主备切换发送邮箱通知
   notification_email {
  		11202@qq.com
   }
   notification_email_from keepalived@showjoy.com
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
   vrrp_skip_check_adv_addr
   vrrp_garp_interval 0
   vrrp_gna_interval 0
}

vrrp_instance VI_1 {
   #主机配MASTER,备机配BACKUP--说明是主机还是备机
   state MASTER 
   #所在机器网卡 用 ip addr 或ifconfig
   interface eth1
   virtual_router_id 51
   #数值越大优先级越高-主机要比备机大
   priority 100
   advert_int 1
   authentication {
   auth_type PASS
   auth_pass 1111
  }
   virtual_ipaddress {
     #虚拟IP 阿里云禁止虚拟ip--还要避免ip漂移
     192.168.56.200
  }
}

#这个可以不指定,指定了就相当于使用了LVS的配置,需要安装ipvs模块,
#即对haporxy有进行了负载均衡,如果不配,默认只有一个haporxy提供服务,
#这边也可以指定多个 -这边类似于nignx的配置
virtual_server 192.168.56.200 48066 {
   delay_loop 6
   lb_algo rr
   lb_kind NAT
   persistence_timeout 50
   protocol TCP
 	
   #这个56.100上的haporxy进行负载(保护)	
   real_server 192.168.56.100 48066 {
     weight 1
     TCP_CHECK {
        connect_timeout 3
        retry 3
        delay_before_retry 3
     }
   }
   
  #这个56.101上的haporxy进行负载(保护) 
   real_server 192.168.56.101 48600 {
     weight 1
     TCP_CHECK {
		connect_timeout 3
		nb_get_retry 3
		delay_before_retry 3
	 }
   }
}

virtual_server 192.168.56.200 7777 {
   delay_loop 6
   lb_algo rr
   lb_kind NAT
   persistence_timeout 50
   protocol TCP
 	
   #这个56.100上的haporxy进行负载(保护)	7777是haporxy的后台管理端口
   real_server 192.168.56.100 7777 {
     weight 1
     TCP_CHECK {
        connect_timeout 3
        retry 3
        delay_before_retry 3
     }
   }
   
  #这个56.101上的haporxy进行负载(保护) 7777是haporxy的后台管理端口
   real_server 192.168.56.101 7777 {
     weight 1
     TCP_CHECK {
		connect_timeout 3
		nb_get_retry 3
		delay_before_retry 3
	 }
   }
}

启动

service keepalived start

查看状态和进程

service keepalived status

ps -ef |grep keepalived

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

这样Keepalived就配置成功了,在如法炮制安装在192.168.56.101,在配置文件中指定成备机,这样Keepalived的主备就配置完成,可以实现自主切换,代理形成高可用


1.4、测试

haproxy 查看 ==> HAProxy安装及使用-Linux

说明:

  1. 192.168.56.100去访问haproxy
    http://192.168.56.100:7777/admin

  2. 192.168.56.200–代理了haproxy在去访问haproxy的后台
    http://192.168.56.200:7777/admin

效果如图:
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

suqinyi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值