Keepalived高可用集群应用实践
一、Keepalived介绍
Keepalived软件主要是通过VRRP协议实现高可用功能的。目的就是为了解决静态路由单点故障问题的,它能够保证当个别节点宕机时,整个网络可以不间断地运行。Keepalived具有三个重要功能:
1.有配置管理LVS的功能;
2.对LVS下面节点进行健康检查功能;
3.实现系统网络服务的高可用功能。
二、Keepalived高可用服务搭建
1.安装Keepalived环境说明
HostName | IP | 说明 |
lb01 | 192.168.12.128 | Keepalived主服务器(Nginx主负载均衡器)VIP:192.168.12.126 |
lb02 | 192.168.12.129 | Keepalived备服务器(Nginx备负载均衡器)VIP:192.168.12.127 |
web01 | 192.168.12.130 | web01服务器 |
web02 | 192.168.12.131 | web02服务器 |
web03 | 192.168.12.132 | web03服务器 |
2.开始安装Keepalived软件
[root@Nginx src]# wget http://www.keepalived.org/software/keepalived-1.2.24.tar.gz
[root@Nginx src]# tar -zxvf keepalived-1.2.24.tar.gz
[root@Nginx src]# cd keepalived-1.2.24
[root@Nginx keepalived-1.2.24]# ./configure \
> --prefix=/usr/local/keepalived
[root@Nginx keepalived-1.2.24]# make && make install
[root@Nginx]# cd /usr/local/keepalived/etc/rc.d/init.d
[root@Nginx init.d]# cp keepalived /etc/init.d/keepalived
[root@Nginx init.d]# cp keepalived /etc/init.d/keepalived
[root@Nginx init.d]# chmod +x /etc/init.d/keepalived
[root@Nginx init.d]# chkconfig keepalived on
[root@Nginx /]# ln /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/keepalived
[root@Nginx sbin]# ln -s /usr/local/keepalived/sbin/keepalived /usr/sbin/keepalived
[root@Nginx /]# mkdir /etc/keepalived
[root@Nginx /]# vim /etc/keepalived/keepalived.conf
#配置lb01 192.168.12.128的keepalived.conf
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 55
mcast_src_ip 192.168.12.128
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.12.126/24 dev eth0 label eth0:1
}
}
vrrp_instance VI_2 {
state BACKUP
interface eth0
virtual_router_id 56
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtural_ipaddress {
192.168.12.127/24 dev eth0 label eth0:2
}
#配置lb02 192.168.12.129的keepalived.conf
[root@Nginx keepalived]# vim keepalived.conf
router_id lb02
}
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 55
mcast_src_ip 192.168.12.129
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.12.126/24 dev eth0 label eth0:1
}
}
vrrp_instance VI_2 {
state MASTER
interface eth0
virtual_router_id 56
priority 150
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.12.127/24 dev eth0 label eth0:2
}
}
[root@Nginx /]# iptables -I INPUT -s192.168.12.128 -p112 -j ACCEPT
[root@Nginx /]# service iptables save
[root@Nginx keepalived]# iptables -I INPUT -s192.168.12.129 -p112 -jACCEPT
[root@Nginx keepalived]# service iptables save
#Nginx负载均衡配合Keepalived服务案例实战
#Nginx负载均衡的配置如下:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream www_server_pools {
server 192.168.12.130:80 weight=1;
server 192.168.12.131:80 weight=1;
server 192.168.12.132:80 weight=1;
}
server {
listen 192.168.12.126:80;
server_name www.etiantian.org;
location / {
proxy_pass http://www_server_pools;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
#Nginx web1 web2 web3的配置请点击链接地址:
https://www.geek-share.com/detail/2759386687.html #nginx web配置
#测试结果如下:
- Keepalived高可用集群实践
- Keepalived高可用集群应用场景与配置
- day63:keepalived介绍及高可用集群应用
- 高可用集群企业级应用实战-keepalived
- LINUX 学习第14天 Keepalived高可用集群应用
- Groovy 数据库应用开发实践-SQL对象托管和封装
- iOS应用开发最佳实践:编写高质量的Objective-C代码
- Framework的设计与应用--基于Windows Forms的应用开发实践
- 基于keepalived搭建MySQL的高可用集群
- 如何快速构建高可用集群(Keepalived+Haproxy+Nginx)
- 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡
- 安卓应用保活实践(双进程守护)
- Kubernetes初探:原理及实践应用
- 第十一周项目实践2 用邻接表存储的图来实现基本应用
- React + Node 单页应用「二」OAuth 2.0 授权认证 & GitHub 授权实践
- 一个可供参考的企业应用容器化实践案例
- 微软WPF技术应用与实践系列
- 介绍事务与分布式事务原理与实践、事务在Java程序中的应用
- Microsoft Azure Web Sites应用与实践【3】—— 通过Visual Studio Online在线编辑Microsoft Azure 网站
- shell应用实践