当前位置: 首页 > news >正文

山西网站建设服务好杭州seo服务公司

山西网站建设服务好,杭州seo服务公司,网站的关于我们怎么做,门户网站报价单Nginx 和 Keepalived 是常用于构建高可用性(High Availability)架构的工具。Nginx 是一款高性能的Web服务器和反向代理服务器,而Keepalived则提供了对Nginx服务的健康状态监测和故障切换功能。 下载Nginx 在服务器1和服务器2分别下载nginx …

Nginx 和 Keepalived 是常用于构建高可用性(High Availability)架构的工具。Nginx 是一款高性能的Web服务器和反向代理服务器,而Keepalived则提供了对Nginx服务的健康状态监测和故障切换功能。

下载Nginx

在服务器1和服务器2分别下载nginx

yum install nginx

配置Nginx

在服务器1配置,vim /usr/share/nginx/html/index.html 

在服务器2配置, vim /usr/share/nginx/html/index.html 

启动Nginx

启动服务器1和服务器2的nginx 

nginx # 启动nginx
nginx -s reload # 重启nginx
nginx -t # 检查nginx配置

 访问服务

访问服务1

访问服务2

 Keepalived架构

环境搭建

VIPIP主机名主/从
192.168.2.3keepalived 1Master
192.168.2.200
192.168.2.4keepalived 2Backup

keepalived的安装

前置下载,keepalived需要gcc

yum install gcc
yum install openssl openssl-devel

通过链接wget获取 

wget https://www.keepalived.org/software/keepalived-2.0.20.tar.gz --no-check-certificate

创建keepalived目录,方便管理资源

mkdir keepalived

将压缩文件进行解压缩,解压缩到指定的目录

tar -zxf keepalived-2.0.20.tar.gz -C keepalived/

对keepalived进行配置,编译和安装

cd keepalived/keepalived-2.0.20./configure --sysconf=/etc --prefix=/usr/localmake && make install

以上服务器2同理 

安装完成后,有两个文件需要我们认识下,一个是 /etc/keepalived/keepalived.conf(keepalived的系统配置文件,我们主要操作的就是该文件),一个是/usr/local/sbin目录下的keepalived,是系统配置脚本,用来启动和关闭keepalived

Keepalived配置

服务器1 ,vim /etc/keepalived/keepalived.conf 

! Configuration File for keepalivedglobal_defs {#通知邮件,当keepalived发送切换时需要发email给具体的邮箱地址notification_email {acassen@firewall.locfailover@firewall.locsysadmin@firewall.loc}#设置发件人的邮箱信息notification_email_from Alexandre.Cassen@firewall.loc#指定smpt服务地址smtp_server 192.168.2.1#指定smpt服务连接超时时间smtp_connect_timeout 30#运行keepalived服务器的一个标识,可以用作发送邮件的主题信息router_id keepalived1vrrp_skip_check_adv_addrvrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0
}
vrrp_instance VI_1 {state MASTER #有两个值可选MASTER主 BACKUP备interface ens33 #vrrp实例绑定的接口,用于发送VRRP包[当前服务器使用的网卡名称]virtual_router_id 51 #指定VRRP实例ID,范围是0-255priority 100 #指定优先级,优先级高的将成为MASTERadvert_int 1 #指定发送VRRP通告的间隔,单位是秒authentication { #vrrp之间通信的认证信息auth_type PASS #指定认证方式。PASS简单密码认证(推荐)auth_pass 1111 #指定认证使用的密码,最多8位}virtual_ipaddress {  #虚拟IP地址设置虚拟IP地址,供用户访问使用,可设置多个,一行一个192.168.2.200}
}

服务器2,vim /etc/keepalived/keepalived.conf 

! Configuration File for keepalivedglobal_defs {#通知邮件,当keepalived发送切换时需要发email给具体的邮箱地址notification_email {acassen@firewall.locfailover@firewall.locsysadmin@firewall.loc}#设置发件人的邮箱信息notification_email_from Alexandre.Cassen@firewall.loc#指定smpt服务地址smtp_server 192.168.2.1#指定smpt服务连接超时时间smtp_connect_timeout 30#运行keepalived服务器的一个标识,可以用作发送邮件的主题信息router_id keepalived2vrrp_skip_check_adv_addrvrrp_strictvrrp_garp_interval 0vrrp_gna_interval 0
}
vrrp_instance VI_1 {state BACKUP#有两个值可选MASTER主 BACKUP备interface ens33 #vrrp实例绑定的接口,用于发送VRRP包[当前服务器使用的网卡名称]virtual_router_id 51 #指定VRRP实例ID,范围是0-255priority 90 #指定优先级,优先级高的将成为MASTERadvert_int 1 #指定发送VRRP通告的间隔,单位是秒authentication { #vrrp之间通信的认证信息auth_type PASS #指定认证方式。PASS简单密码认证(推荐)auth_pass 1111 #指定认证使用的密码,最多8位}virtual_ipaddress {  #虚拟IP地址设置虚拟IP地址,供用户访问使用,可设置多个,一行一个192.168.2.200}
}

Keepalived启动

在服务器1、2启动服务

cd /usr/local/sbin
./keepalived

测试

查看服务器1

查看服务器2,虚拟IP没有存在在服务器2

 当把192.168.2.3服务器上的keepalived关闭后,再次查看ip

systemctl disable keepalived
systemctl stop keepalived

查看服务器1,虚拟IP没有存在在服务器1

查看服务器2

虚拟IP(VIP)会在MASTER节点上,当MASTER节点上的keepalived出问题以后,因为BACKUP无法收到MASTER发出的VRRP状态通过信息,就会直接升为MASTER。VIP也会"漂移"到新的MASTER。

测试Nginx

systemctl start keepalived # 启动

我们把192.168.2.3服务器的keepalived再次启动下,由于它的优先级高于服务器192.168.2.4的,所有它会再次成为MASTER,VIP也会"漂移"过去,然后我们再次通过浏览器访问nginx:

如果把192.168.2.3服务器的keepalived关闭掉,再次访问相同的地址  

Nginx状态检测脚本

效果实现了以后, 我们会发现要想让vip进行切换,就必须要把服务器上的keepalived进行关闭,而什么时候关闭keepalived呢?应该是在keepalived所在服务器的nginx出现问题后,把keepalived关闭掉,就可以让VIP执行另外一台服务器,但是现在这所有的操作都是通过手动来完成的,我们如何能让系统自动判断当前服务器的nginx是否正确启动,如果没有,要能让VIP自动进行"漂移" 。

vrrp_script

keepalived只能做到对网络故障和keepalived本身的监控,即当出现网络故障或者keepalived本身出现问题时,进行切换。但是这些还不够,我们还需要监控keepalived所在服务器上的其他业务,比如Nginx,如果Nginx出现异常了,仅仅keepalived保持正常,是无法完成系统的正常工作的,因此需要根据业务进程的运行状态决定是否需要进行主备切换,这个时候,我们可以通过编写脚本对业务进程进行检测监控。

编写脚本 

vim /root/keepalived/ck_nginx.sh ,这是一个 Bash 脚本,用于检查 Nginx 服务是否正在运行,并在 Nginx 未启动时启动它,并在启动失败后关闭 Keepalived 服务

#!/bin/bash
num=`ps -C nginx --no-header | wc -l`
if [ $num -eq 0 ];then/usr/sbin/nginx  #使用 which nginx 可查找到nginx的启动目录sleep 2if [ `ps -C nginx --no-header | wc -l` -eq 0 ]; thenkillall keepalivedfi
fi

设置权限

为脚本文件设置权限

chmod 755 ck_nginx.sh

Keepalived添加配置

vim /etc/keepalived/keepalived.conf ,将脚本添加到Keepalived配置

global_defs {...
}
vrrp_script ck_nginx {script "/root/keepalived/ck_nginx.sh" #执行脚本的位置interval 2           #执行脚本的周期,秒为单位weight -20           #权重的计算方式
}

以上服务器2同理 

测试

服务器1,停止nginx服务

systemctl stop nginx

查看服务器1,虚拟IP不在此服务器

查看服务器2 ,虚拟IP转移到此服务器

如果master服务死掉后backup会变成master,但是当master服务又好了的时候 master此时会抢占VIP,这样就会发生两次切换对业务繁忙的网站来说是不好的。所以我们要在配置文件加入 nopreempt 非抢占,但是这个参数只能用于state 为backup,故我们在用HA的时候最好master 和backup的state都设置成backup 让其通过priority来竞争。  

http://www.tj-hxxt.cn/news/30811.html

相关文章:

  • asp.net 建立网站吗软文素材网
  • entware wordpress关键词优化app
  • WordPress整合phpems杭州余杭区抖音seo质量高
  • 深圳福田商城网站建设友链交换
  • 哪个网站做3d模型今天大事件新闻
  • 北京网站建设yi wl怎么自己搭建网站
  • 万户信息 做网站怎么样知乎营销平台
  • 和别人做网站接单赚钱百度搜索指数排行
  • 手机要访问国外网站如何做网站推广途径和推广要点有哪些?
  • 做视频赚钱的网站有哪些aso关键词搜索优化
  • 网站备案 阿里云seo优化方法有哪些
  • 做公司官方网站排行榜软件
  • 有没有网站做设计可以赚钱百度提交链接
  • 做风水网站郑州网络营销顾问
  • 怎么用手机做抖音上最火的表白网站24小时网站建设
  • 广东上海专业网站建设公司可以访问违规网站的浏览器
  • 请人做网站站长之家ip查询
  • 扬州建设信息网站seo搜索引擎优化期末考试
  • ip地址做网站sem推广是什么
  • wordpress分类访问权限优化网站
  • 网站 业务范围百度竞价登录
  • 哪些公司提供微信做网站服务深圳网站seo哪家快
  • php网站开发总结怎么提交百度收录
  • 武汉网站推广报价天津优化公司
  • 网站开发建设费用竞价出价怎么出
  • parallax wordpress小时seo
  • 个人建设网站成本河南靠谱seo地址
  • 微企免费做网站上海十大营销策划公司
  • 燕郊网站建设网站设计制作在哪里找
  • wordpress建站全过程百度竞价返点一般多少