keepalived和nginx组合进行高可用配置一:双机自启动nginx模式
即是:在两台keepalived服务器中启动两个nginx进行高可用
使用到的服务器列表
IP | 安装nginx | 安装keepalived |
192.168.75.131 | 是 | 是 |
192.168.75.130 | 是 | 是 |
可以从列表中看到在我们只需要两台服务器上都安装上nginx和keepalived即可实现高可用
安装 keepalived:https://blog.csdn.net/u010833154/article/details/106216423
keepalived配置详解:https://blog.csdn.net/u010833154/article/details/106264987
nginx安装:https://blog.csdn.net/u010833154/article/details/50975499
keepalived的master配置
global_defs {
router_id test-one
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state MASTER
interface eth1
virtual_router_id 50
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.75.222/24
}
}
keepalived的BACKUP配置
global_defs {
router_id test-two
vrrp_skip_check_adv_addr
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_instance VI_1 {
state BACKUP
interface eth2
virtual_router_id 50
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.75.222/24
}
}
nginx在两台服务器上都配置都一样
server {
listen 80;
server_name www.minTest.cn;
location / {
root html;
index index.html index.htm;
}
}
在keepalived的master中查看vip挂载
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:16:46:4d brd ff:ff:ff:ff:ff:ff
inet 192.168.75.130/24 brd 192.168.75.255 scope global eth1
inet 192.168.75.222/24 scope global secondary eth1
inet6 fe80::20c:29ff:fe16:464d/64 scope link
valid_lft forever preferred_lft forever
在keepalived的BACKUP中查看vip挂载
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:3c:5c:d8 brd ff:ff:ff:ff:ff:ff
inet 192.168.75.131/24 brd 192.168.75.255 scope global eth2
inet6 fe80::20c:29ff:fe3c:5cd8/64 scope link
valid_lft forever preferred_lft forever
我们看到在master中看到了vip的挂载但是在backup中没有看到vip挂载
然后我们kill掉master中的keepalived进程
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:3c:5c:d8 brd ff:ff:ff:ff:ff:ff
inet 192.168.75.131/24 brd 192.168.75.255 scope global eth2
inet 192.168.75.222/24 scope global secondary eth2
inet6 fe80::20c:29ff:fe3c:5cd8/64 scope link
valid_lft forever preferred_lft forever
然后在本地配置hosts:192.168.75.222 www.minTest.cn
关闭防火墙即可访问
我kill掉master的进程仍然可以访问,可以通过nginx查看日志
谢谢支持,多少都行