本文介绍了nginx+keepalived 高可用主从配置详解,分享给大家,具体如下:
一、系统环境及软件版本
CentOS 6.6 x64
keepalived-1.2.18.tar.gz
nginx-1.6.2.tar.gz
主服务器:192.168.38.64
从服务器:192.168.38.66
VIP :192.168.38.100
二、nginx安装 (主从安装一致)
1.安装依赖环境
复制代码 代码如下:yum install gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-developenssl openssl-devel
2.上传nginx到 opt 目录
3.解压安装
# tar -zxvf nginx-1.6.2.tar.gz # cd nginx-1.6.2 # ./configure --prefix=/opt/nginx (prefix=/opt/nginx 这个指定的是 nginx目录) # make && make install
4.修改 nginx监听端口 及 index.html
# vi /opt/nginx/conf/nginx.conf
vi /opt/nginx/html/index.html
5. nginx 启动及常用命令
配置测试: /opt/nginx/sbin/nginx -t 出现如下界面说明配置没问题
启动 : /opt/nginx/sbin/nginx
重启 : /opt/nginx/sbin/nginx -s reload
停止 : /opt/nginx/sbin/nginx -s stop
6.开机启动 nginx
vi /etc/rc.local
加入: /opt/nginx/sbin/nginx
7.修改防火墙开放端口
vi /etc/sysconfig/iptables
添加 : -A INPUT -p tcp -m state --state NEW -m tcp --dport 8888 -j ACCEPT
重启防火墙 : service iptables restart
8.问题
启动 nginx遇到的问题
vi /etc/ld.so.conf
添加: /opt/nginx/lib/
9.nginx的负载均衡
nginx的负载均衡主要是 由upstream 这一模块完成
修改 nginx的配置文件
vi /data/nginx/conf/nginx.conf
添加如下内容:(web_pools 这个名称可变)
upstream web_pools { server 10.0.6.108:7080weight=1; server 10.0.0.85:8980weight=1; }
将server节点下的location节点中的proxy_pass配置为:http:// + upstream名称即可
结果如下:
其中 weight是权重 backup是备用服务器 ,只有其它服务器宕机后,备用服务器才会启动。
三、keepalived 安装
1.keepalived上传到 opt目录下
2.解压 安装
tar -zxvf keepalived-1.2.18.tar.gz cd keepalived-1.2.18 ./configure --prefix=/opt/keepalived make && make install
3.将keepalived 安装成 linux服务
cp /opt/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/ cp /opt/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ ln -s /opt/sbin/keepalived /usr/sbin/ ln -s /opt/keepalived/sbin/keepalived /sbin/
4.设置 keepalived 服务开机启动
chkconfig keepalived on
5.修改 Keepalived 配置文件
vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived (!、#都是注释) global_defs { #全局配置 notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 192.168.200.1 smtp_connect_timeout 30 router_id LVS_01 #这个配置要唯一 } vrrp_script chk_nginx { script "/etc/keepalived/nginx_check.sh" ## 检测 nginx 状态的脚本路径 interval 2 ## 检测时间间隔 weight -20 ## 如果条件成立,权重-20 } vrrp_instance VI_1 { #实例 VI_1 名字可以随意 但是不建议修改 state MASTER # 主服务器MASTER 从服务器 BACKUP interface em1 # em1 网卡 virtual_router_id 51 #virtual_router_id 主备要一致 priority 100 # 优先级 数字越大 优先级越高 priority 的值 主服务器要大于 从服务器 advert_int 1 #设定MASTER与BACKUP负载均衡器之间同步检查的时间间隔,单位是秒 authentication { # 主从通信 验证类型及密码 auth_type PASS #设置vrrp验证类型,主要有PASS和AH两种 auth_pass 1111 #设置vrrp验证密码,在同一个vrrp_instance下,MASTER与BACKUP必须使用相同的密码才能正常通信 } ## 将 track_script 块加入 instance 配置块 track_script { chk_nginx ## 执行 Nginx 监控的服务 } virtual_ipaddress { 192.168.38.100/24 #VRRP HA 虚拟地址 如果有多个VIP,继续换行填写 } }
6.编写 Nginx 状态检测脚本
vi /etc/keepalived/nginx_check.sh
内容如下:
#!/bin/bash A=`ps -C nginx –no-header |wc -l` if [ $A -eq 0 ];then /opt/nginx/sbin/nginx sleep 2 if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then killall keepalived fi fi
保存后,给脚本赋执行权限:chmod +x/etc/keepalived/nginx_check.sh
7.注意点:Keepalived主从配置文件不同点
a.router_id 不一致
b.state 主服务器是MASTER ,从服务器是 BACKUP
c.priority 主服务器 大于 从服务器
8.keepalived 命令
启动 : servicekeepalived start
停止: servicekeepalived stop
重启: servicekeepalived restart
9.注意的问题
a.vip没绑定成功
解决方案:ip addr 查看 本地ip所在网卡的名称 ,然后修改 配置文件
vi /etc/keepalived/keepalived.conf
保存后 servicekeepalived restart 重启 keepalived服务即可
10.测试
启动主从nginx和keepalived 服务
主从服务器分别: ip add | grep 192.168.38.100
在192.168.38.64 可看到
同时 在192.168.38.66
当杀死 主服务器上的keepalived 则 从服务器
当再次启动主服务器上的keepalived则结果主服务器上有结果,从服务器上没结果。
当杀死 nginx后,keepalived则会自动启动 nginx服务
11. keepalived脑裂 (ip add | grep 192.168.38.100 在主从都有结果)
解决方案:防火墙问题
iptables-IINPUT4-pvrrp-jACCEPT service iptables save service iptables restart
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新动态
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]