IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 七章——Keepalived双机热备(应用——linux防护与群集) -> 正文阅读

[系统运维]七章——Keepalived双机热备(应用——linux防护与群集)

三期总目录链接

?一、Keepalived双机热备

? ? ? ?Keepalived起初是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障切换(Failover)和健康检查(Health?Checking)功能——判断LVS负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器,当故障主机恢复后将其重新加入群集。

(一)Keepalived概述

Keepalived的热备方式

Keepalived:采用VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)以软件方式实现Linux服务器的多机热备功能

VRRP:是针对路由器的一种备份解决方案:一主 + 多备? ?共用同一个IP地址,但优先级不同(优先级决定接替顺序),其他路由器处于冗余状态;如使用多台备用服务器,state均设为BACKUP,但各自的优先级priority不要相同

? ? ?热备组内每台都有可能成为主路由,虚拟路由器的ip地址(VIP)可以在热备组内的路由器之间进行转移,也被称为:漂移ip地址,漂移地址不需要手动建立虚拟接口配置文件

(二)Keepalived实现双机热备

  VRRP的热备方式,Keepalived可以用做服务器故障切换,常用于双机热备,在双机热备的方案中,故障切换主要针对虚拟IP地址的漂移来实现,因此能够适用于各种应用服务器(如:web、ftp、fail、还是ssh、dns等)

案例:

服务器地址:192.168.1.12/24? ?网关地址192.168.1.12

用服务器地址:192.168.1.13/24? 网关地址192.168.1.12

漂移集群vip地址:192.168.1.87/24

1、主服务器配置

网卡配置(略)防火墙关闭(略)selinux关闭(略)

Keepalived?服务的配置目录位于/etc/keepalived/
keepalived.conf:主配置文件
另外包括一个子目录samples/,提供了许多配置样例作为参考。
在配置文件中,使用??global_defs{...}??区段指定全局参数,使用? vrp_instancc?实例名称??区段指定VRRP热备参数

[root@C-12 ~]# yum -y install keepalived ipvsadm httpd   #安装
......
...
[root@C-12 ~]# systemctl enable keepalived          #设置为开机自启
Created symlink from /etc/systemd/system/multi-user.target.wants/keepalived.service to /usr/lib/systemd/system/keepalived.service.
[root@C-12 ~]# vim /var/www/html/index.html

<h1>192.168.1.12今天星期日休息<h1/>
[root@C-12 ~]# mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak   #修改配置文件名称进行备份
[root@C-12 ~]# vim /etc/keepalived/keepalived.conf     #新建配置文件


global_defs {
   router_id HA_TEST_R1     #本路由器的名称
}


vrrp_instance VI_1 {        #定义VRRP热备实例
    state MASTER            #MASTER表示主服务器
    interface ens33         #承载VIP地址的物理接口
    virtual_router_id 1     #虚拟路由器的ID号,每个热备组保持一致
    priority 100            #优先级,数值越大优先级越高
    advert_int 1            #通告间隔秒数(心跳频率)
    authentication {        #认证信息,每个热备组保持一致
        auth_type PASS      #认证类型
        auth_pass 123.com   #密码字串
    }
    virtual_ipaddress {
        192.168.1.87        #指定漂移地址(VIP)可以有多个

    }
}

[root@C-12 ~]# systemctl start keepalived    #启动
[root@C-12 ~]# systemctl start httpd         #启动
[root@C-12 ~]# ip addr show dev ens33        #使用ip命令进行查看
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:20:f8:34 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.12/24 brd 192.168.1.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet 192.168.1.87/32 scope global ens33    #自动设置的VIP地址

2、备用服务器

?在同一个Keepalived热备组内,所有配置文件基本相同,包括虚拟路由器的ID号、认证信息、漂移地址、心跳频率等。不同之处在于路由器名称,热备状态、优先级
路由器名称(router_id):建议为每个参与热备的服务器指定不同的名称
热备状态(state):至少应有一台主服务器,将状态设为MASTER;可以有多台备用的服务器,将状态设为BACKUP
优先级(priority):数值越大则取得 VIP控制权的优先级越高,因此主服务器的优先级应设为最高;其他备用服务器的优先级可依次递减,但不要相同,以免在争夺VIP控制权时发生冲突

?

[root@C-13 ~]# yum -y install keepalived ipvasdm httpd
.......
...
[root@C-13 ~]# systemctl enable keepalived
Created symlink from /etc/systemd/system/multi-user.target.wants/keepalived.service to /usr/lib/systemd/system/keepalived.service.

[root@C-13 ~]# echo "<h1>192.168.1.13今天是阴天</h1>" >/var/www/html/index.html  #测试首页
[root@C-13 ~]# mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak      
[root@C-13 ~]# echo '                #编辑内容
> global_defs {
>    router_id HA_TEST_R2    #修改本路由器名称
> }
> 
> 
> vrrp_instance VI_1 {
>     state BACKUP           #
>     interface ens33       
>     virtual_router_id 1   
>     priority 90            #修改优先级
>     advert_int 1          
>     authentication {      
>         auth_type PASS   
>         auth_pass 123.com
>     }
>     virtual_ipaddress {   
>         192.168.1.87
> 
>     }
> }
> ' > /etc/keepalived/keepalived.conf


[root@C-13 ~]# cat /etc/keepalived/keepalived.conf   #查看
                
global_defs {
   router_id HA_TEST_R2 
}


vrrp_instance VI_1 {
    state BACKUP          
    interface ens33       
    virtual_router_id 1
    priority 90     
    advert_int 1          
    authentication {      
        auth_type PASS   
        auth_pass 123.com
    }
    virtual_ipaddress {   
        192.168.1.87

    }
}


[root@C-13 ~]# 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:ef:19:34 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.13/24 brd 192.168.1.255 scope global ens33
       valid_lft forever preferred_lft forever

? ? 配置没有错误后启动,这时候主服务器仍然在线,VIP地址实际上仍然由主服务器控制,其他服务器处于备用状态因此备用服务器中不会为ens33接口添加VIP地址

3、验证

连通性测试? :停止和启动? 主服务器keepalived服务器,发现ping测试只中断1到2个包即恢复正常,说明已有其他服务器接替VIP地址及时响应客户机请求

C:\Users\wrzs0>ping -t 192.168.1.87

正在 Ping 192.168.1.87 具有 32 字节的数据:
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间=1ms TTL=64
请求超时。
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间=1ms TTL=64
请求超时。
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.87 的回复: 字节=32 时间<1ms TTL=64

web访问测试:http://192.168.1.87 会看到主服务器192.168.1.12提供的网页

停止、启动主服务器的keepalived服务器,再次访问web服务

?停止主服务后可以看到由备用服务器192.168.1.13提供的网页,说明VIP地址已切换至备用服务器

?启动主服务

?

二、LVS+Keepalived高可用群集

1. 简述Keepalived的主要功能、应用场合

主要功能:提供故障切换和健康检查功能

应用场合:双机热备

2. 简述虚拟路由冗余协议的工作原理

工作原理?:由一台或多台路由器组成一个热备组,通过共用虚拟IP地址对外提供服务;每个热备组同一时刻只有一台主路由器提供服务,其他路由器处于冗余状态,若当前在线的路由器失效,则其他路由器会自动接替(优先级决定接替顺序)虚拟IP地址,以继续提供服务

3. 在Keepalived的配置文件中,”vrrp_instance 实例名称 {…}”区段的作用是什么?

?作用:指定VRRP热备参数

4. 使用Keepalived实现双机热备时,主、备服务器的配置存在哪些区别?

?所有配置文件基本相同

区别在于路由器名称,热备状态、优先级

5. 在Keepalived服务器上如何查看添加的VIP地址?

?使用 ip a 命令可以查看

6. 当存在多台从调度器时优先级(priority)的配置规则是什么?

?配置规则:数值越大取得VIP控制权的优先级越高

7. 在Keepalived的配置文件中,”virtual_server VIP 端口 { ... }”区段的作用是什么?

作用:配置虚拟服务器

8. 在Keepalived的配置文件中,通过什么配置项指定群集工作模式?

?使用 lb_kind 工作模式? 配置项进行指定? ?如:lb_kind? DR

9. 在Keepalived的配置文件中real_server IP地址 {...}区段的作用是什么?

?作用:配置真实服务器地址等参数

例:real_server 192.168.1.1:80? ? ? 说明:web节点的地址:端口

10. 在Linux系统中执行”ipvsadm –ln”、”ipvsadm –lnc”等操作命令的作用是什么?

?ipvsadm –ln:查看节点的状态负载分配情况

ipvsadm –lnc:查看当前ipvs模块中记录的连接

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-09-05 11:27:40  更:2021-09-05 11:29:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/30 2:07:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码