linux
  • Introduction
  • Yum
    • 基础yum源的配置
    • 为yum源配置代理
    • Centos指定版本的yum源
    • 环境变量
    • 本地yum源
    • 制作yum源
      • 同步yum源
    • epel源
  • Iptables
    • 基本匹配条件
    • Match-Extensions
      • Addrtype
      • Set
      • TCP
    • Target-Extensions
      • DNAT
      • LOG
    • Iptables规则持久化
    • 连接追踪
  • LVS
    • Ipvsadm命令
  • 磁盘与分区
    • 创建分区
    • 格式化与挂载
    • fstab
    • LVM
      • LVM扩容
    • swap分区
    • tmpfs
  • 网络相关
    • 重命名网卡
    • resolv.conf
    • Tcpdump
    • dig与nslookup
  • Other
    • CPU与内存
    • 进程
      • 僵尸进程
    • SSH密钥登录
    • 用户管理
    • Crontab
  • Nofile
    • 原理
  • 常用软件安装篇
    • MYSQL
    • 系统与内核
      • 指定内核启动
    • NFS
    • Haproxy
    • Keepalived
    • Squid
    • Redsocks
    • Shadowsocks
    • 时钟同步
  • 内存
Powered by GitBook
On this page
  • 0、准备工作
  • 1、安装
  • 2、配置文件
  • 3、unit文件

Was this helpful?

  1. 常用软件安装篇

Keepalived

0、准备工作

准备三台主机,比如如下

A主机:192.168.1.10
B主机:192.168.1.11 
C主机:192.168.1.12

准备一个vip,注意不要被其他主机占用,而且要与上面三个IP在同一子网内,比如为

192.168.1.20

1、安装

在三台主机上都安装keepalived,执行以下命令即可安装

sudo yum -y install keepalived

2、配置文件

keepalived有两个配置文件,一个是/etc/sysconfig/keepalived,一个是/etc/keepalived/keepalived.conf

  • /etc/sysconfig/keepalived

该文件中的有效内容只有一行,三个节点上这个文件的内容一样。为

KEEPALIVED_OPTIONS="-D"
  • /etc/keepalived/keepalived.conf

这个文件在三台主机上的配置会不一样

A主机

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
vrrp_instance VI_1 {
    state MASTER        # B C 主机设为BACKUP
    interface eth0      # IP对应的网卡
    virtual_router_id 20    # 三台主机这个id要一致,如果局域网内还有其他的vip,注意这个值要与其他vip不同
    priority 100    # MASTER设100,BACKUP设99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.1.20    # vip
    }
}

B C主机相同,如下

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
vrrp_instance VI_1 {
    state BACKUP        # B C 主机设为BACKUP
    interface eth0      # IP对应的网卡
    virtual_router_id 20    # 三台主机这个id要一致
    priority 99    # MASTER设100,BACKUP设99
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.1.20    # vip
    }
}

3、unit文件

  • /usr/lib/systemd/system/keepalived.service

三台主机的内容一样,如下:

[Unit]
Description=LVS and VRRP High Availability Monitor
After=syslog.target network.target

[Service]
Type=forking
KillMode=process
EnvironmentFile=-/etc/sysconfig/keepalived
ExecStart=/usr/sbin/keepalived $KEEPALIVED_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID

[Install]
WantedBy=multi-user.target

4、将keepalived设置为开机启动

sudo systemctl enable keepalived
PreviousHaproxyNextSquid

Last updated 5 years ago

Was this helpful?