同一服务器上的单通道和keepalived基多ha
HALB的Python项目详细描述
halb是在同一服务器上安装/设置/管理多个haproxy配置的包装脚本。以及易于故障转移的keepalived。
依赖项
==
确保安装了keepalived和haproxy。
>;在redhat/centos系统中,可以使用
Yum install-Y keepalived安装它们halb使用pip/setuptools或从tar.gz安装halb的配置文件,用于控制halb保存/检查数据的数据位置。
-/etc/halb/data/*--实际的halb文件。
安装程序将安装示例配置,以便您从/etc/halb/data/{example.vig,real.dat,vip.dat}
配置
===
配置文件/etc/halb/halb.conf控制以下选项
-dc-dc的名称,可选预设为数据
-haplb-home-对于HALB安装,实际的haproxy配置保存在此目录下
-haproxy--haproxy二进制文件的路径
-keepalive-conf--keepalived配置文件
-vip-device--keepalived将要保存到的设备名称绑定vip
lbtool需要haplb_home/dc下的以下四个目录
-dat-all.vig文件,real.dat和
vip.dat文件存储在此处
-bin-每个
单个haproxy haproxy的haproxy二进制副本-所有haproxy配置的home
status-所有后端节点的status目录新的vig文件
vip=www.test.com name=www.test.com dns=www.test.com
www.test.com:port=80 vip_mode=http,https vip_maxconn=25000
www.test.com:real=tiber1:80是
>;keepalived vid必须是唯一的,因为
>;它是
>;中vip组的标识;保持配置。
>;
>;**使用命令查找现有vig文件中使用的vid的数量。**
grep-ir'keepalived:vid='/etc/halb/data/dat/*.vig awk'{print$nf}'sort
-在vip.dat中添加vip信息
在/etc/halb/data/dat/vip.dat下添加vip信息
[root@lb1 lb]\cat/etc/halb/data/dat/vip.dat
www.test.com:vip=www.test.com ip=10.0.9.214
-vip.dat中添加vip信息
dns=tiber1.test.colo ip=10.0.7.54
>;在添加之前,请检查VIP.dat和
>;real.dat中是否存在IP/服务器。如果存在,则无需添加。请避免重复的
>;条目。
--
>;使用vig name作为lbtool的参数
[root@lb1 lb]\lbtool test
example>;帮助
有效的选择是:
退出-->;退出程序
gen_u conf generate_u conf-->;生成haproxy配置
ha_vig-->;start stop reload restart状态配置。"
gen_u keep-->;master backup genrates keepalive配置
is-->;设置服务器状态设置为"服务中"
oos-->;设置服务器状态s to out-of-serving
help-->;显示有效命令。
[root@lb1 root]\lbtool test
>;haproxy vig的名称作为lb
>;脚本的参数。
test>;generate懔conf
>;生成haproxy配置文件
>;生成新旋转的keepalived配置。如果角色是master,则此服务器上的旋转将处于活动状态。如果备份,则仅当主服务器
>;失败时,它才会收到
>;流量。
test>;hau vig start
启动haproxy配置
test>;keep_init reload
>;重新加载新更新的配置文件。
test>;exit
**将新主机添加到配置:**
将新主机添加到real.dat文件。
>;添加之前,请检查文件中是否存在主机。如果是,则不要添加。我们应该避免重复的
>;条目。
[root@lb1 lb]lb test
>;haproxy vig的名称作为lb
>;脚本的参数。
test>;is tiber1
>;将主机tiber1添加到
>;haproxy config for test
test>;generate_conf
test>;hau vig restart
test>;exit
**使主机停止旋转:**
[root@lb1 lb]\lb test
test>;oos tiber1
>;使主机tiber1停止旋转
>;haproxy config进行测试。
test>;generate_conf
test > ha_vig restart
test > exit
#################################################
misc -
add net.ipv4.ip_nonlocal_bind = 1 in sysctl.conf so that keepalived can bind non local ip's
依赖项
==
确保安装了keepalived和haproxy。
>;在redhat/centos系统中,可以使用
Yum install-Y keepalived安装它们halb使用pip/setuptools或从tar.gz安装halb的配置文件,用于控制halb保存/检查数据的数据位置。
-/etc/halb/data/*--实际的halb文件。
安装程序将安装示例配置,以便您从/etc/halb/data/{example.vig,real.dat,vip.dat}
配置
===
配置文件/etc/halb/halb.conf控制以下选项
-dc-dc的名称,可选预设为数据
-haplb-home-对于HALB安装,实际的haproxy配置保存在此目录下
-haproxy--haproxy二进制文件的路径
-keepalive-conf--keepalived配置文件
-vip-device--keepalived将要保存到的设备名称绑定vip
lbtool需要haplb_home/dc下的以下四个目录
-dat-all.vig文件,real.dat和
vip.dat文件存储在此处
-bin-每个
单个haproxy haproxy的haproxy二进制副本-所有haproxy配置的home
status-所有后端节点的status目录新的vig文件
vip=www.test.com name=www.test.com dns=www.test.com
www.test.com:port=80 vip_mode=http,https vip_maxconn=25000
www.test.com:real=tiber1:80是
>;keepalived vid必须是唯一的,因为
>;它是
>;中vip组的标识;保持配置。
>;
>;**使用命令查找现有vig文件中使用的vid的数量。**
grep-ir'keepalived:vid='/etc/halb/data/dat/*.vig awk'{print$nf}'sort
-在vip.dat中添加vip信息
在/etc/halb/data/dat/vip.dat下添加vip信息
[root@lb1 lb]\cat/etc/halb/data/dat/vip.dat
www.test.com:vip=www.test.com ip=10.0.9.214
-vip.dat中添加vip信息
dns=tiber1.test.colo ip=10.0.7.54
>;在添加之前,请检查VIP.dat和
>;real.dat中是否存在IP/服务器。如果存在,则无需添加。请避免重复的
>;条目。
--
>;使用vig name作为lbtool的参数
[root@lb1 lb]\lbtool test
example>;帮助
有效的选择是:
退出-->;退出程序
gen_u conf generate_u conf-->;生成haproxy配置
ha_vig-->;start stop reload restart状态配置。"
gen_u keep-->;master backup genrates keepalive配置
is-->;设置服务器状态设置为"服务中"
oos-->;设置服务器状态s to out-of-serving
help-->;显示有效命令。
[root@lb1 root]\lbtool test
>;haproxy vig的名称作为lb
>;脚本的参数。
test>;generate懔conf
>;生成haproxy配置文件
>;生成新旋转的keepalived配置。如果角色是master,则此服务器上的旋转将处于活动状态。如果备份,则仅当主服务器
>;失败时,它才会收到
>;流量。
test>;hau vig start
启动haproxy配置
test>;keep_init reload
>;重新加载新更新的配置文件。
test>;exit
**将新主机添加到配置:**
将新主机添加到real.dat文件。
>;添加之前,请检查文件中是否存在主机。如果是,则不要添加。我们应该避免重复的
>;条目。
[root@lb1 lb]lb test
>;haproxy vig的名称作为lb
>;脚本的参数。
test>;is tiber1
>;将主机tiber1添加到
>;haproxy config for test
test>;generate_conf
test>;hau vig restart
test>;exit
**使主机停止旋转:**
[root@lb1 lb]\lb test
test>;oos tiber1
>;使主机tiber1停止旋转
>;haproxy config进行测试。
test>;generate_conf
test > ha_vig restart
test > exit
#################################################
misc -
add net.ipv4.ip_nonlocal_bind = 1 in sysctl.conf so that keepalived can bind non local ip's