网站设计开户,一次性付费做网站,无锡专业做网站建设,seo是一种利用搜索引擎的提醒一下#xff1a;下面实例讲解是在mac虚拟机里的Ubuntu系统演示的#xff1b;
Nginx与keepalived实现集群实现的效果 两台服务器都安装Nginx与keepalived#xff1a; master服务器的ip(192.168.200.2) backup服务器的ip(192.168.200.4) 将 master服务器Nginx与keepalive…提醒一下下面实例讲解是在mac虚拟机里的Ubuntu系统演示的
Nginx与keepalived实现集群实现的效果 两台服务器都安装Nginx与keepalived master服务器的ip(192.168.200.2) backup服务器的ip(192.168.200.4) 将 master服务器Nginx与keepalived都停掉在 backup服务器里的浏览器输入http://192.168.188.100访问Nginx首页 备注192.168.188.100是keepalived的虚拟ip 第一步准备两台服务器示例如下图所示 第二步给两台服务器安装Nginx 在终端里输入: su root 切换到root用户角色方便后面输入指令执行操作如果提示输入密码错误退出在终端里输入 sudo passwd 按回车键 输入密码成功后再输入 su root 切换到root角色安装nginx.终端里输入apt-get install nginx 如果没有切换到root , 输入sudo apt-get install nginx启动Nginx终端里输入service nginx start在浏览器里输入服务器的ip地址验证Nginx启动成功 master服务器 backup服务器 第三步给两台服务器安装keepalived 在终端里输入apt-get install keepalived如果没有切换到root , 输入sudo apt-get install keepalivedkeepalived安装完之后切换到etc目录在终端里输入cd /etc接着输入ls,如下图所示 切换到keepalived目录cd keepalived, ls查看keepalived里的文件如果里面没有keepalived.conf和check_nginx.sh文件分别输入touch keepalived.conftouch check_nginx.sh 即创建两个对应的文件。 编辑keepalived.conf终端里输入vi keepalived.conf 提醒如果没有vi指令需要先安装vim, 在终端里输入apt-get install vim 查看master服务器的网卡名称输入ifconfig master服务器的keepalived.conf 内容如下
global_defs {router_id LVS_MASTER #名称标记为master名字随便取vrrp_gna_interval 0
}#加入周期性检测nginx服务脚本的相关配置
vrrp_script check_nginx{script /etc/keepalived/check_nginx.sh #心跳执行的脚本检测nginx是否启动interval 2 #检测脚本执行的间隔单位是秒
}vrrp_instance VI_1 {state MASTER #指定当前节点为master节点只能有一个master其余只能是backupinterface ens33 #绑定此虚拟路由使用的网卡的名称使用ifconfig或者ip addr查看virtual_router_id 99 #指定虚拟路由id虚拟路由的唯一标识范围是0-255mater和backup节点需要指定一样的相同id为一组priority 200 #指定当前结点的优先级master节点要大于backup节点。advert_int 1 #指定发送VRRP通告的间隔单位是秒virtual_ipaddress {192.168.188.100 #指定虚拟ip自定义的虚拟ip}#添加跟踪(执行脚本)track_script{check_nginx}
}编辑完keepalived.conf 内容在终端里按住键盘shift:(冒号)键然后输入wq即退出并保存 backup服务器的网卡名称 backup服务器的keepalived.conf 内容如下
global_defs {router_id LVS_BACKUP #名称标记为BACKUP只要不是MASTER,名字随便取vrrp_gna_interval 0
}#加入周期性检测nginx服务脚本的相关配置
vrrp_script check_nginx{script /etc/keepalived/check_nginx.sh #心跳执行的脚本检测nginx是否启动interval 2 #检测脚本执行的间隔单位是秒
}vrrp_instance VI_1 {state BACKUP #指定当前节点为master节点只能有一个master其余只能是backupinterface ens33 #绑定此虚拟路由使用的网卡的名称使用ifconfig或者ip addr查看virtual_router_id 99 #指定虚拟路由id虚拟路由的唯一标识范围是0-255mater和backup节点需要指定一样的相同id为一组priority 199 #指定当前结点的优先级master节点要大于backup节点。advert_int 1 #指定发送VRRP通告的间隔单位是秒virtual_ipaddress {192.168.188.100 #指定虚拟ip自定义的虚拟ip, 注意一定是和master的服务器里虚拟ip一样的}#添加跟踪(执行脚本)track_script{check_nginx}
}两台服务器编辑check_nginx.sh终端里输入vi check_nginx.sh check_nginx.sh内容
#!/bin/bash
#检测nginx是否启动了
Aps -C nginx --no-header |wc -l
if [ $A -eq 0 ];then #如果nginx没有启动就启动nginx /root/ydy/nginx/sbin/nginx #重启nginx也可以使直接监听应用服务if [ ps -C nginx --no-header |wc -l -eq 0 ];then #nginx重启失败则停掉keepalived服务进行VIP转移killall keepalived fi
fi
第四步启动两台服务器的keepalived 在master服务器终端里输入service keepalived start 查看绑定的网卡 验证keepalived虚拟ip调用在master服务器的浏览器输入http://192.168.188.100 第五步关闭master服务器的Nginx和keepalived在 backup服务器里的浏览器输入http://192.168.188.100访问Nginx首页 在master服务器终端里输入service keepalived stop在master服务器终端里输入service nginx stop在 backup服务器里的浏览器输入http://192.168.188.100 以上就是Nginx与keepalived实现集群的全部内容讲解。