首页
最新活动
服务器租用
香港服务器租用
台湾服务器租用
美国服务器租用
日本服务器租用
新加坡服务器租用
高防服务器
香港高防服务器
台湾高防服务器
美国高防服务器
裸金属
香港裸金属服务器
台湾裸金属服务器
美国裸金属服务器
日本裸金属服务器
新加坡裸金属服务器
云服务器
香港云服务器
台湾云服务器
美国云服务器
日本云服务器
CDN
CDN节点
CDN带宽
CDN防御
CDN定制
行业新闻
官方公告
香港服务器资讯
帮助文档
wp博客
zb博客
服务器资讯
联系我们
关于我们
机房介绍
机房托管
登入
注册
帮助文档
专业提供香港服务器、香港云服务器、香港高防服务器租用、香港云主机、台湾服务器、美国服务器、美国云服务器vps租用、韩国高防服务器租用、新加坡服务器、日本服务器租用 一站式全球网络解决方案提供商!专业运营维护IDC数据中心,提供高质量的服务器托管,服务器机房租用,服务器机柜租用,IDC机房机柜租用等服务,稳定、安全、高性能的云端计算服务,实时满足您的多样性业务需求。 香港大带宽稳定可靠,高级工程师提供基于服务器硬件、操作系统、网络、应用环境、安全的免费技术支持。
联系客服
服务器资讯
/
香港服务器租用
/
香港VPS租用
/
香港云服务器
/
美国服务器租用
/
台湾服务器租用
/
日本服务器租用
/
官方公告
/
帮助文档
centos7系统keepalived安装配置(服务器主备、负载均衡)
发布时间:2024-02-29 14:02:43 分类:帮助文档
centos7系统keepalived安装配置(服务器主备、负载均衡) 脚本 https://gitcode.net/zengliguang/nginx_keepalived.git 系统拓扑 安装keepalived 主备服务器上都需要安装 在线安装 yum install -y keepalived 离线安装 主服务器脚本 # 设置虚拟机ip、网卡命令、hostname(后期自动获取) master_ipaddress=192.168.11.54 backup_ipaddress=192.168.11.53 virtual_ipaddress=192.168.11.56 hostname=localhost.localdomain interface=ens33 #关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0 #永久关闭 sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config #创建文件夹 mkdir /home/tuners -p # 拷贝到tuners路径下 \cp -r ./*keepalived* /home/tuners echo "拷贝完成" # 离线安装 cd /home/tuners/keepalived rpm -Uvh --force --nodeps *.rpm # 生成主服务器配置文件 cat > /etc/keepalived/keepalived.conf << EOF global_defs { router_id $hostname # 访问到主机,本机的hostname,需要修改 } vrrp_script chk_http_port { script "/usr/local/src/nginx_check.sh" # 检测脚本位置 interval 2 #(检测脚本执行的间隔) weight 2 # 权重 } vrrp_instance VI_1 { state MASTER # 备份服务器上将 MASTER 改为 BACKUP,需要修改 interface $interface # 网卡名字,使用ifconfig查看,需要修改 virtual_router_id 51 # 主、备机的 virtual_router_id 不能相同 priority 100 # 主、备机取不同的优先级,主机值较大,备份机值较小,一般主100从90 advert_int 1 # 每隔1秒发送心跳 authentication { auth_type PASS auth_pass 1111 } unicast_src_ip $master_ipaddress 自己ip unicast_peer { #单模式 $backup_ipaddress #另一个ip } virtual_ipaddress { $virtual_ipaddress #// VRRP H 虚拟地址,也可以绑定多个虚拟ip,需要修改 } } EOF # 生成备服务器配置文件 # cat > /etc/keepalived/keepalived.conf << EOF # global_defs { # router_id localhost.localdomain # 访问到主机,本机的hostname,需要修改 # } # vrrp_script chk_http_port { # script "/usr/local/src/nginx_check.sh" # 检测脚本位置 # interval 2 #(检测脚本执行的间隔) # weight 2 # 权重 # } # vrrp_instance VI_1 { # state BACKUP # 备份服务器上将 MASTER 改为 BACKUP,需要修改 # interface ens33 # 网卡名字,使用ifconfig查看,需要修改 # virtual_router_id 59 # 主、备机的 virtual_router_id 不能相同 # priority 90 # 主、备机取不同的优先级,主机值较大,备份机值较小,一般主100从90 # advert_int 1 # 每隔1秒发送心跳 # authentication { # auth_type PASS # auth_pass 1111 # } # virtual_ipaddress { # $virtual_ipaddress #// VRRP H 虚拟地址,也可以绑定多个虚拟ip,需要修改 # } # } # EOF # 生成监测脚本 # cat > /usr/local/src/nginx_check.sh << EOF # #!/bin/bash # A=\`ps -C nginx – no-header |wc -l\` # if [ \$A -eq 0 ];then # /usr/sbin/nginx #nginx启动路径 # sleep 2 # if [ \`ps -C nginx --no-header |wc -l\` -eq 0 ];then # killall keepalived # fi # fi # EOF cat > /usr/local/src/nginx_check.sh << EOF rm -rf ./tmp.log systemctl status nginx.service > ./tmp.log if cat tmp.log |grep "failed";then systemctl start nginx.service sleep 2 rm -rf ./tmp.log systemctl status nginx.service > ./tmp.log if cat tmp.log |grep "failed";then systemctl stop keepalived.service fi fi EOF # 启动keepalived systemctl enable keepalived.service systemctl restart keepalived.service # 查看keepalived systemctl status keepalived.service 备服务器脚本 # 设置虚拟机ip、网卡命令、hostname(后期自动获取) master_ipaddress=192.168.11.54 backup_ipaddress=192.168.11.53 virtual_ipaddress=192.168.11.56 hostname=localhost.localdomain interface=ens33 #关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0 #永久关闭 sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config #创建文件夹 mkdir /home/tuners -p # 拷贝到tuners路径下 \cp -r ./*keepalived* /home/tuners echo "拷贝完成" # 离线安装 cd /home/tuners/keepalived rpm -Uvh --force --nodeps *.rpm # 生成主服务器配置文件 # cat > /etc/keepalived/keepalived.conf << EOF # global_defs { # router_id localhost.localdomain # 访问到主机,本机的hostname,需要修改 # } # vrrp_script chk_http_port { # script "/usr/local/src/nginx_check.sh" # 检测脚本位置 # interval 2 #(检测脚本执行的间隔) # weight 2 # 权重 # } # vrrp_instance VI_1 { # state MASTER # 备份服务器上将 MASTER 改为 BACKUP,需要修改 # interface ens33 # 网卡名字,使用ifconfig查看,需要修改 # virtual_router_id 51 # 主、备机的 virtual_router_id 不能相同 # priority 100 # 主、备机取不同的优先级,主机值较大,备份机值较小,一般主100从90 # advert_int 1 # 每隔1秒发送心跳 # authentication { # auth_type PASS # auth_pass 1111 # } # virtual_ipaddress { # $virtual_ipaddress #// VRRP H 虚拟地址,也可以绑定多个虚拟ip,需要修改 # } # } # EOF # 生成备服务器配置文件 cat > /etc/keepalived/keepalived.conf << EOF global_defs { router_id $hostname # 访问到主机,本机的hostname,需要修改 } vrrp_script chk_http_port { script "/usr/local/src/nginx_check.sh" # 检测脚本位置 interval 2 #(检测脚本执行的间隔) weight 2 # 权重 } EOF vrrp_instance VI_1 { state BACKUP # 备份服务器上将 MASTER 改为 BACKUP,需要修改 interface $interface # 网卡名字,使用ifconfig查看,需要修改 virtual_router_id 59 # 主、备机的 virtual_router_id 不能相同 priority 90 # 主、备机取不同的优先级,主机值较大,备份机值较小,一般主100从90 advert_int 1 # 每隔1秒发送心跳 authentication { auth_type PASS auth_pass 1111 } unicast_src_ip $backup_ipaddress 自己ip unicast_peer { #单模式 $master_ipaddress #另一个ip } virtual_ipaddress { $virtual_ipaddress #// VRRP H 虚拟地址,也可以绑定多个虚拟ip,需要修改 } } EOF # 生成监测脚本 # cat > /usr/local/src/nginx_check.sh << EOF # #!/bin/bash # A=\`ps -C nginx – no-header |wc -l\` # if [ \$A -eq 0 ];then # /usr/sbin/nginx #nginx启动路径 # sleep 2 # if [ \`ps -C nginx --no-header |wc -l\` -eq 0 ];then # killall keepalived # fi # fi # EOF cat > /usr/local/src/nginx_check.sh << EOF rm -rf ./tmp.log systemctl status nginx.service > ./tmp.log if cat tmp.log |grep "failed";then systemctl start nginx.service sleep 2 rm -rf ./tmp.log systemctl status nginx.service > ./tmp.log if cat tmp.log |grep "failed";then systemctl stop keepalived.service fi fi EOF # 启动keepalived systemctl enable keepalived.service systemctl restart keepalived.service # 查看keepalived systemctl status keepalived.service 服务器准备 虚拟机ip:192.168.11.56 主服务器:192.168.11.53 备服务器:192.168.11.54 配置文件修改 keepalived安装之后,在 etc 里面生成目录 keepalived,有文件 keepalived.conf /etc/keepalived 主服务器配置文件 global_defs { router_id localhost.localdomain # 访问到主机,本机的hostname,需要修改 } vrrp_script chk_http_port { script "/usr/local/src/nginx_check.sh" # 检测脚本位置 interval 2 #(检测脚本执行的间隔) weight 2 # 权重 } vrrp_instance VI_1 { state MASTER # 备份服务器上将 MASTER 改为 BACKUP,需要修改 interface ens33 # 网卡名字,使用ifconfig查看,需要修改 virtual_router_id 59 # 主、备机的 virtual_router_id 组播模式不能相同,单播模式必须相同 priority 100 # 主、备机取不同的优先级,主机值较大,备份机值较小,一般主100从90 advert_int 1 # 每隔1秒发送心跳 authentication { auth_type PASS auth_pass 1111 } unicast_src_ip 192.168.11.53 自己ip unicast_peer { #单模式 192.168.11.54 #另一个ip } virtual_ipaddress { 192.168.11.56 #// VRRP H 虚拟地址,也可以绑定多个虚拟ip,需要修改 } } 需要修改的内容如下 hostname 需要修改 hostname获取方式 :在命令行中输入hostname 网卡命令需要修改:interface这个字段的值 查看网卡信息:输入下面命令 ip a 下图中ens33就是网卡名字 虚拟ip需要修改:virtual_ipaddress 这个字段 备服务器配置文件 global_defs { router_id localhost.localdomain # 访问到主机,本机的hostname,需要修改 } vrrp_script chk_http_port { script "/usr/local/src/nginx_check.sh" # 检测脚本位置 interval 2 #(检测脚本执行的间隔) weight 2 # 权重 } vrrp_instance VI_1 { state BACKUP # 备份服务器上将 MASTER 改为 BACKUP,需要修改 interface ens33 # 网卡名字,使用ifconfig查看,需要修改 virtual_router_id 59 # 主、备机的 virtual_router_id 组播模式不能相同,单播模式必须相同 priority 90 # 主、备机取不同的优先级,主机值较大,备份机值较小,一般主100从90 advert_int 1 # 每隔1秒发送心跳 authentication { auth_type PASS auth_pass 1111 } unicast_src_ip 192.168.11.54 自己ip unicast_peer { #单模式 192.168.11.53 #另一个ip } virtual_ipaddress { 192.168.11.56 #// VRRP H 虚拟地址,也可以绑定多个虚拟ip,需要修改 } } 需要修改的内容跟主服务器脚本一样 监测脚本 主备切换的测试的两种方案 方案1:关服务器 方案2: 停nginx应用 监测脚本流程 监测脚本路径:/usr/local/src/nginx_check.sh 功能:检测nginx是否启动,如果停了就重启,如果还是起不来,就停止keepalived。 主备服务器上都需要配置 rm -rf ./tmp.log systemctl status nginx.service > ./tmp.log if cat tmp.log |grep "failed";then systemctl start nginx.service sleep 2 rm -rf ./tmp.log systemctl status nginx.service > ./tmp.log if cat tmp.log |grep "failed";then systemctl stop keepalived.service fi fi 启动keepalived systemctl start keepalived.service 重启keepalived systemctl restart keepalived.service 查询keepalived状态 systemctl status keepalived.service nginx部署 nginx web页面修改 nginx配置文件路径:/etc/nginx/nginx.conf,该配置文件引用了/etc/nginx/conf.d/default.conf 打开/etc/nginx/conf.d/default.conf配置文件可以看到html页面的路径 /usr/share/nginx/html 为路径 index.html为页面 进入到对应路径下 打开页面文件,修改信息,作为访问的服务器的标记,比如我服务器是54,我就在页面中加上54 具体访问呈现效果如下
上一篇
日本手机服务器显示
下一篇
香港云服务器到底能有多便宜
相关文章
asp.net写好的网站 怎么放在服务器
李宏毅2023机器学习作业1--homework1——模型创建
Linux服务器80端口无法访问
超级详细的 FinalShell 安装 及使用教程
服务器老被打怎么办啊
xbox连接PC共享的加速热点
第五篇【传奇开心果系列】vant开发移动应用示例:深度解读高度可定制
怎么看域名多少钱买的
百度云怎么搞无限空间
香港云服务器租用推荐
服务器租用资讯
·广东云服务有限公司怎么样
·广东云服务器怎么样
·广东锐讯网络有限公司怎么样
·广东佛山的蜗牛怎么那么大
·广东单位电话主机号怎么填写
·管家婆 花生壳怎么用
·官网域名过期要怎么办
·官网邮箱一般怎么命名
·官网网站被篡改怎么办
服务器租用推荐
·美国服务器租用
·台湾服务器租用
·香港云服务器租用
·香港裸金属服务器
·香港高防服务器租用
·香港服务器租用特价
7*24H在线售后
高可用资源,安全稳定
1v1专属客服对接
无忧退款试用保障
德讯电讯股份有限公司
电话:00886-982-263-666
台湾总部:台北市中山区建国北路一段29号3楼
香港分公司:九龙弥敦道625号雅兰商业二期906室
服务器租用
香港服务器
日本服务器
台湾服务器
美国服务器
高防服务器购买
香港高防服务器出租
台湾高防服务器租赁
美国高防服务器DDos
云服务器
香港云服务器
台湾云服务器
美国云服务器
日本云服务器
行业新闻
香港服务器租用
服务器资讯
香港云服务器
台湾服务器租用
zblog博客
香港VPS
关于我们
机房介绍
联系我们
Copyright © 1997-2024 www.hkstack.com All rights reserved.