Nginx高可用集群

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Hannah_zh/article/details/82987413

环境配置:

集群管理主机:(安装luci)

server2:172.25.51.2

集群节点:(安装ricci)

server1:172.25.51.1
server4:172.25.51.4

nginx高可用集群搭建:

1、server1、server4设置集群节点,安装ricci;server2设置集群管理主机,安装luci.

具体配置详情:https://blog.csdn.net/Hannah_zh/article/details/80841684
在这里插入图片描述
在这里插入图片描述

2、server1、server4安装nginx服务,并设置启动脚本(高可用集群执行nginx脚本)

server4安装nginx服务过程,参考:https://blog.csdn.net/Hannah_zh/article/details/80845382

server4设置启动脚本,并添加可执行权限:

[root@server4 ~]# cd /etc/init.d/

在这里插入图片描述

[root@server4 init.d]# chmod +x nginx 
其中,nginx启动脚本内容为:
#!/bin/bash
# processname: nginx
# config: /usr/local/nginx/conf/nginx.conf
# pidfile: /usr/local/nginx/logs/nginx.pid
#

# Source function library.
. /etc/rc.d/init.d/functions

nginx=${NGINX-/usr/local/nginx/sbin/nginx}
prog=nginx
pidfile=${PIDFILE-/usr/local/nginx/logs/nginx.pid}
lockfile=${LOCKFILE-/var/lock/subsys/nginx}
RETVAL=0

start() {
        echo -n $"Starting $prog: "
        LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $nginx $OPTIONS
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && touch ${lockfile}
        return $RETVAL
}

stop() {
	echo -n $"Stopping $prog: "
	killproc -p ${pidfile} $nginx
	RETVAL=$?
	echo
	[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
}
reload() {
    echo -n $"Reloading $prog: "
        if [ $RETVAL -eq 7 ]; then
            failure $"nginx shutdown"
        fi
    echo
}

# See how we were called.
case "$1" in
  start)
	start
	;;
  stop)
	stop
	;;
  status)
        status -p ${pidfile} $nginx
	RETVAL=$?
	;;
  restart)
	stop
	start
	;;
  reload)
        reload
	;;
  *)
	echo $"Usage: $prog {start|stop|restart|reload|status}"
	RETVAL=2
esac

exit $RETVAL
server1安装nginx服务,设置启动脚本:

在这里插入图片描述
在这里插入图片描述

[root@server1 ~]# cd /etc/init
[root@server1 init.d]# useradd nginx
[root@server1 init.d]# id nginx 
uid=500(nginx) gid=500(nginx) groups=500(nginx)
nginx的安全设置:
[root@server1 ~]# vim /etc/security/limits.conf 
nginx           -       nofile          65536

在这里插入图片描述

3、nginx集群管理

<1>Disabled集群的web服务

在这里插入图片描述
在这里插入图片描述

<2>将脚本httpd更改为nginx并应用

在这里插入图片描述
在这里插入图片描述

<3>再次开启web服务,web服务运行在server1节点(server1优先级高于server4)

在这里插入图片描述
示图:server1上开启nginx服务
在这里插入图片描述
示图:vip浮动在server1上
在这里插入图片描述

<4>server1上的nginx实现负载均衡

示图:真机DNS
在这里插入图片描述
示图:server1上实现nginx负载均衡
在这里插入图片描述

<5>server内核崩溃,server1主机重启后,刷新页面可看到web服务运行在server4,vip漂移到server4
[root@server1 ~]# echo c > /proc/sysrq-trigger

在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Hannah_zh/article/details/82987413