立Flag 学习Ng - 高可用配置
立Flag 学习Ng - 高可用配置
- keepalived高可用配置
keepalived高可用配置
nginx解决tomcat高可用的思路,是前面加一层负载服务nginx。那当ng
挂掉的时候同样需要高可用的方式来处理,如果继续采用ng
前面加一层负载或者代理会出现套娃的情况。那么如何解决呢?
可以使用keepalived来解决。
keepalived的思路,由 2台服务器软件虚拟出来一台 虚拟网关vip,此vip由两台机器共同协商生成。当有一台机器宕机时,另一台机器一样能维持vip。这保证了,只要两台机器不同时宕机,vip就存在
keepalived下载地址:http://www.keepalived.org/download.html
## 安装
# 下载
> wget http://www.keepalived.org/software/keepalived-1.4.2.tar.gz
# 解压
> tar zxvf keepalived-1.4.2.tar.gz
# 安装依赖插件
> yum install -y gcc openssl-devel popt-devel
> cd keepalived-1.4.2
# 配置环境变量
> ./configure --prefix=/usr/local/keepalived
# 编译安装
> make && make install
# 配置
> cp /usr/local/keepalived-1.4.2/keepalived/etc/init.d/keepalived /etc/init.d/
> mkdir /etc/keepalived
> cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
> cp /usr/local/keepalived-1.4.2/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
> cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
# 命令查看网卡用于下面文配置中使用网卡
> ip addr## 修改配置文件
vim /etc/keepalived/keepalived.conf# master 配置
! Configuration File for keepalivedglobal_defs {#一个没重复的名字即可router_id xxoo_master
}# 检测nginx是否运行
vrrp_script chk_nginx {script "/etc/keepalived/nginx_check.sh"interval 2weight -20
}vrrp_instance VI_1 {# 此处不设置为MASTER,通过priority来竞争masterstate BACKUP# 网卡名字interface enp0s3# 同一个keepalived集群的virtual_router_id相同virtual_router_id 51# 权重,master要大于slavepriority 100# 主备通讯时间间隔advert_int 1# 如果两节点的上联交换机禁用了组播,则采用vrrp单播通告的方式# 本机ipunicast_src_ip 192.168.0.182unicast_peer {# 其他机器ip192.168.0.189}# 设置nopreempt防止抢占资源nopreempt# 主备保持一致authentication {auth_type PASSauth_pass 1111}# 与上方nginx运行状况检测呼应track_script {chk_nginx}virtual_ipaddress {# 虚拟ip地址(VIP,一个尚未占用的内网ip即可)192.168.0.180}
}## slave配置
! Configuration File for keepalivedglobal_defs {#一个没重复的名字即可router_id xxoo_slave
}# 检测nginx是否运行
vrrp_script chk_nginx {script "/etc/keepalived/nginx_check.sh"interval 2weight -20
}vrrp_instance VI_1 {# 此处不设置为MASTER,通过priority来竞争masterstate BACKUP# 网卡名字interface enp0s3# 同一个keepalived集群的virtual_router_id相同virtual_router_id 51# 权重,master要大于slavepriority 90# 主备通讯时间间隔advert_int 1# 如果两节点的上联交换机禁用了组播,则采用vrrp单播通告的方式# 本机ipunicast_src_ip 192.168.0.189unicast_peer {# 其他机器ip192.168.0.182}# 设置nopreempt防止抢占资源nopreempt# 主备保持一致authentication {auth_type PASSauth_pass 1111}# 与上方nginx运行状况检测呼应track_script {chk_nginx}virtual_ipaddress {# 虚拟ip地址(VIP,一个尚未占用的内网ip即可)192.168.0.180}
}# nginx_check.sh 脚本
> vim /etc/keepalived/nginx_check.sh
#!/bin/bash
A=`ps -C nginx --no-header |wc -l`
if [ $A -eq 0 ];then #重启nginx/usr/local/nginx/sbin/nginx #nginx重启失败,则停掉keepalived服务,进行VIP转移if [ `ps -C nginx --no-header |wc -l` -eq 0 ];then #杀掉,vip就漫游到另一台机器killall keepalived fi
fi# 启动keepalived
# 执行安装目录/sbin 下 ./keepalived 或者 service keepalived start
> service keepalived start
# 配置开机自启动 (可选)
> systemctl enable keepalived
# 查看网卡观察变化
> ip addr### 防止出现脑裂现象(未验证)
# 指定keepalived配置的网卡:enp0s3(这个看配置中选择的网卡),固定的VRRP广播地址:xxx.x.x.xxx
firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface enp0s3 --destination xxx.x.x.xxx --protocol vrrp -j ACCEPT
firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 0 --out-interface enp0s3 --destination xxx.x.x.xxx --protocol vrrp -j ACCEPT
firewall-cmd --reload# 查看配置的规则
firewall-cmd --direct --get-rules ipv4 filter INPUT
firewall-cmd --direct --get-rules ipv4 filter OUTPUT
flag 完成。 虽然离立Flag的时间超过了一周,不过学习时间还是差不多一周的(手动狗头)。
以后如果遇到其他需要补充的内容在继续来补充吧
立Flag 学习Ng - 高可用配置相关推荐
- 带哨兵节点的链_深入学习Redis高可用架构:哨兵原理及实践
原标题:深入学习Redis高可用架构:哨兵原理及实践 " 在上篇文章<深入学习 Redis 高可用的基石:主从复制>中曾提到,Redis 主从复制的作用有数据热备.负载均衡.故障 ...
- Keepalived v1.3.5 高可用配置参数总结
Keepalived v1.3.5 高可用配置参数总结 前言 官网介绍 gratuitous ARP包 VRRP包 VRRP实例 1 全局配置 1.1 全局定义(global_defs ) 1.2 静 ...
- linux集群架构(一),集群概述、高可用配置
2019独角兽企业重金招聘Python工程师标准>>> linux集群概述 根据功能划分为两大类:高可用和负载均衡 高可用集群通常为两台服务器,一台工作,另外一台作为冗余,当提供服务 ...
- 2008r2文件服务器高可用,Windows Server 2012 R2 文件服务器安装与配置07 之文件服务器高可用配置DFS...
今天和大家分享的是关于文件服务器高可用配置,简单一点说就是当一台机宕机的时候,另一台文件服务器可以继续为你提供文件服务,以保证业务的正常使用. 分布式文件系统是作为文件服务角色的一种角色服务而实现的. ...
- Nginx+keepalived高可用配置实战
1.整体架构图如下 2.环境准备 今天所配置的是keepalived+nginx 的负载均衡 下载keepalived软件 [root@LB01 tools]# wget http://www.kee ...
- 白话SpringCloud | 第三章:服务注册与发现-高可用配置(Eureka)-下
2019独角兽企业重金招聘Python工程师标准>>> 前言 上一章节,讲解了在单机模式下的服务注册与发现的相关知识点及简单示例.而在实际生产或者在这种微服务架构的分布式环境中,需要 ...
- MySQL之MHA高可用配置及故障切换实例
MySQL之MHA高可用配置及故障切换实例 前言 一.MHA概述 (1)MHA是什么 (2)MHA的组成 (3)MHA的特点 二.部署MHA (1)配置主从服务 ①环境初始化 ③修改master.sl ...
- MySQL的MHA高可用配置及故障切换
MySQL的MHA高可用配置及故障切换 一.MHA概述 1.MHA简介 2.MHA的组成 3.MHA特点 二.MHA实验 1.实验环境准备 2.实验目的 3.实验步骤 一.MHA概述 1.MHA简介 ...
- Kerberos HA高可用配置
Kerberos 高可用配置 Kerberos 安装(主节点操作) 节点信息 data80 data81 data82 data83 备注 主Kerberos节点:data80 备Kerberos节点 ...
最新文章
- iOS的一些常用性能优化,和内存优化的方法
- access开发精要(13)-货币与数字类型格式(1)
- python 创建子类_python创建子类的方法分析
- Dubbo(四)之xml配置方式
- 微信扫描二维码和浏览器扫描二维码 ios和Android 分别进入不用的提示页面
- Vue.js 极简小例: 4 种方式样式绑定、style 的多种方式实现
- C#实现图片文件到数据流再到图片文件的转换
- 远程客户端连接linux,远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接...
- 30K iOS程序员的简述:如何快速进阶成为高级开发人员
- 数字孪生技术方案下的智慧城市建设治理体系优势
- 13讲项目实战内页滚动图效果实现
- android 关闭软键盘失去焦点,Android edittext 点击其他处 失去焦点和关闭软键盘
- SylixOS 系统工作队列
- 网络聊天室(Java)
- word标尺随缩进移动_在Word中在标尺上设置缩进和制表符时如何获取详细的度量...
- ThreadLocal在多线程中的作用和原理浅析(模拟学生入学报到场景)
- Xshell窗口置顶的问题
- CF刷题笔记之思维切入篇--持续更新中
- js下载文件、音频、视频的方式
- elementUI el-upload上传文件 关闭文件列表
热门文章
- 腾讯云windows 2008 服务器无法登录,可能是你需要的答案
- 生命周期onLoad和onShow的区别
- 人工神经网络实验报告,生成数据的神经网络
- 基于S32K144 CAN总线功能开发详解
- win7和linux双系统怎么切换,使用easybcd完美实现windows7与linux双系统的详细步骤
- 高通win10电脑软件兼容测试,微软把高通处理器装在了Win 10上,那又怎样呢?
- 基于android的防抖音直播,uniapp 仿火山 / 抖音短视频|uni-App+vue 直播实例
- 基于51单片机的上下限可调的数字温度控制系统
- 毕业设计 —— 基于STM32手势控制显示系统的设计
- 归一化差异雪指数 (NDSI)的简介