1.安装nginx,keepalived软件
需要准备的软件包为
1)使用yum安装基础依赖包
yum -y install gcc openssl-devel pcre-devel
2)源码安装Nginx
[root@proxy ~]# useradd -s /sbin/nologin nginx [root@proxy ~]# tar
-xvf nginx-1.12.2.tar.gz [root@proxy ~]# cd nginx-1.12.2 [root@proxy nginx-1.12.2]# ./configure \
–user=nginx --group=nginx
–with-http_ssl_module
[root@proxy ~]# make && make install
3)安装mysql
yum -y install perl-Data-Dumper perl-JSON perl-Time-HiRes
tar -xvf mysql-5.7.17.tar //解压mysql整合包
./mysql-community-client-5.7.17-1.el7.x86_64.rpm
./mysql-community-common-5.7.17-1.el7.x86_64.rpm
./mysql-community-devel-5.7.17-1.el7.x86_64.rpm
./mysql-community-embedded-5.7.17-1.el7.x86_64.rpm
./mysql-community-embedded-compat-5.7.17-1.el7.x86_64.rpm
./mysql-community-embedded-devel-5.7.17-1.el7.x86_64.rpm
./mysql-community-libs-5.7.17-1.el7.x86_64.rpm
./mysql-community-libs-compat-5.7.17-1.el7.x86_64.rpm
./mysql-community-minimal-debuginfo-5.7.17-1.el7.x86_64.rpm
./mysql-community-server-5.7.17-1.el7.x86_64.rpm
./mysql-community-test-5.7.17-1.el7.x86_64.rpm
yum -y isntall mysql*
启动mysql 服务
4)安装 php和php-fpm 动态页面解析
yum -y install php php-mysql
yum -y install php-fpm-5.4.16-42.el7.x86_64.rpm
安装Keepalived软件
yum install -y keepalived
配置keepalived文件
! 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 keepalived01 //设置路由ID号
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval 0
vrrp_gna_interval 0
}
vrrp_script nginx_check { //健康检测脚本
script “/etc/keepalived/chk_nginx.sh”
interval 2 //每隔2秒检测一次
weight 2 //权重2
}
vrrp_instance VI_1 {
state MASTER //主服务器为MASTER(备服务器需要修改为BACKUP)
interface eth0 //定义网络接口
virtual_router_id 50 //主备服务器VRID号必须一致
mcast_src_ip 192.168.10.50 //主服务器的IP(备用服务器更改为其本机IP)
priority 100 //服务器优先级,优先级高优先获取VIP
advert_int 1
authentication {
auth_type PASS
auth_pass 1111 //主备服务器密码必须一致
}
track_script {
nginx_check
}
virtual_ipaddress {
192.168.10.25 //服务器优先级,优先级高优先获取VIP
}
}
健康脚本内容
vim /etc/keepalived/chk_nginx.sh
#!/bin/bash
status=
(
p
s
−
C
n
g
i
n
x
−
−
n
o
−
h
e
a
d
i
n
g
∣
w
c
−
l
)
i
f
[
"
(ps -C nginx --no-heading|wc -l) if [ "
(ps−Cnginx−−no−heading∣wc−l)if["{status}" = “0” ]; then
nginx
status2=
(
p
s
−
C
n
g
i
n
x
−
−
n
o
−
h
e
a
d
i
n
g
∣
w
c
−
l
)
i
f
[
"
(ps -C nginx --no-heading|wc -l) if [ "
(ps−Cnginx−−no−heading∣wc−l)if["{status2}" = “0” ]; then
systemctl stop keepalived
fi
fi
给该脚本加上执行权限
chmod +x /etc/keepalived/chk_nginx.sh