keepalived+nginx高可用有主备和双活两种方式。主备方式下对外提供一个vip,同时只有一台服务器工作,另一台作备机;双活方式下对外提供两个vip,两台机器互为备份,下面详细说明搭建测试步骤。
主备模式
架构图:
配置:
主机 | ip | 操作系统 | 软件 | 备注 |
nginx01 | 172.27.9.91 | Centos7.3.1611 | nginx 端口82 keepalived |
关闭防火墙和selinu |
nginx02 | 172.27.9.92 | Centos7.3.1611 | nginx 端口82 keepalived |
关闭防火墙和selinu |
web01 | 172.27.9.125 | Centos7.3.1611 | apache 端口1180 | 关闭防火墙和selinu |
web02 | 172.27.9.126 | Centos7.3.1611 | apache 端口1180 | 关闭防火墙和selinu |
1.nginx安装
nginx01和nginx02安装nginx参见Centos7安装nginx
2.nginx配置
两台nginx服务器配置相同,如下:
[root@nginx01 ~]# more /usr/local/nginx/conf/nginx.conf
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive