首页 存档 技术 查看内容

Nginx Keepalived(双机热备)搭建高可用负载均衡环境(HA)

2018-3-30 13:00 |来自: 互联网 341 0

摘要: 摘要:1.基于上一篇博客总结,再次安装一个虚拟机当backup服务器,这个服务器只安装Keepalived Nginx即可 2.Master还是上一篇博文的虚拟机,环境是Tomcat JDK Nginx Keepalived 3.每个Nginx服务器都安装Keepalived ...


摘要:1.基于上一篇博客总结,再次安装一个虚拟机当backup服务器,这个服务器只安装Keepalived Nginx即可 2.Master还是上一篇博文的虚拟机,环境是Tomcat JDK Nginx Keepalived 3.每个Nginx服务器都安装Keepalived


基于 Nginx Tomcat Redis 负载均衡 Session 共享来实现后续的功能

(https://my.oschina.net/xshuai/blog/916122)


一张简单的图说下大概的意思



  • 安装Keepalived到CentOS虚拟机环境(2个虚拟机都安装)


使用的版本为keepalived-1.2.24.tar.gz 为了方便安装,在系统里面提前下载好相关的库


yum -y install libnl libnl-devel

yum install -y libnfnetlink-devel


然后就开始解压编译安装吧


tar -zxvf keepalived-1.2.24.tar.gz

cd keepalived-1.2.24.tar.gz

./configure --prefix=/usr/local/keepalived

make

make install



然后继续配置Keepalived


mkdir /etc/keepalived

cp /usr/local/keepalived/etc/keepalived.conf /etc/keepalived/keepalived.conf

cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/keepalived

cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/keepalived

添加到开机自启

chkconfig keepalived on



如果提示keepalived: command not found 解决方法如下

ln -s /usr/local/keepalived/sbin/keepalived /sbin/

如果遇权限不足 执行以下命令

chmod 755 /etc/init.d/keepalived



相关操作

service keepalived start #启动服务

service keepalived stop #停止服务

service keepalived restart #重启服务


请不要着急去启动Keepalived


  • Keepalived的配置文件说明


引用于 http://blog.csdn.net/xyang81/article/details/52554398

keepalived服务安装完成之后,后面的主要工作就是在keepalived.conf文件中配置HA和负载均衡。

一个功能比较完整的常用的keepalived配置文件,主要包含三块:

全局定义块、VRRP实例定义块和虚拟服务器定义块。

全局定义块是必须的,如果keepalived只用来做ha,

虚拟服务器是可选的。下面是一个功能比较完整的配置文件模板:

#全局定义块

global_defs {

# 邮件通知配置

notification_email {

email1

email2

}

notification_email_from email

smtp_server host

smtp_connect_timeout num


lvs_id string

router_id string ## 标识本节点的字条串,通常为hostname

}


#VRRP 实例定义块

vrrp_sync_group string {

group {

string

string

}

}


vrrp_instance string {

state MASTER|BACKUP

virtual_router_id num

inte**ce string

mcast_src_ip @IP

priority num

advert_int num

nopreempt

smtp_alert

lvs_sync_daemon_inte**ce string

authentication {

auth_type PASS|AH

auth_pass string

}


virtual_ipaddress { # Block limited to 20 IP addresses @IP

@IP

@IP

}

}


#虚拟服务器定义块

virtual_server (@IP PORT)|(fwmark num) {

delay_loop num

lb_algo rr|wrr|lc|wlc|sh|dh|lblc

lb_kind NAT|DR|TUN

persistence_timeout num

protocol TCP|UDP

real_server @IP PORT {

weight num

notify_down /path/script.sh

TCP_CHECK {

connect_port num

connect_timeout num

}

}


real_server @IP PORT {

weight num

MISC_CHECK {

misc_path /path_to_script/script.sh(or misc_path “/path_to_script/script.sh

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部