keepalived

keepalived + nginx 实现高可用

只谈情不闲聊 提交于 2021-02-13 06:49:01
原理 nginx 可以实现负载均衡,但 nginx 自身存在单点故障的问题,这时候最先想到的就是 keepalived,可以解决单点故障的问题 由于没有使用 lvs,所以这里 nginx 之间不存在负载均衡 同时,如果 keepalived 的 master 节点 nginx 服务宕了以后,如果 keepalived 还在运行,则用户就访问不到 nginx 服务了,所以需要添加监控脚本,当 nginx 宕机时,杀死本机的 keepalived 服务 这样,keepalived 的 master 就会切换,同时用户访问的 nginx 服务也会切换到原来的 backup 节点 测试节点 RIP VIP MASTER 192.168.132.136 192.168.132.200 SLAVE 192.168.132.140 192.168.132.200 配置nginx 安装 nginx 不是重点,这里就是用 yum 简单安装 yum -y install nginx systemctl start nginx 配置keepalived 安装 keepalived 使用 yum 安装即可 keepalived 配置如下: global_defs { notification_email { chen@test.com } notification_email_from chen@test

nginx配置详解

拜拜、爱过 提交于 2021-02-11 15:58:46
nginx的配置在nginx下的conf/nginx.conf worker_processes 1; 进程为1,可以往高调,一般设置为 CPU数*核数 #error_log logs/error.log; 错误日志存放的位置 #pid logs/nginx.pid; pid文件存放的位置 events {   use epoll; 使用epoll的I/O 模型。nginx一般都用epoll worker_connections 1024; 这是一个子进程的连接数,可以调高 keepalive_timeout 60; 高可用的超时时间 } http {   include  mime.type:  //设定mime类型,类型由mime.type文件定义   default_type application/octet-stream;   #access_log logs/access.log main; 访问日志的开启和路径   sendfile  on;   keepalived_timeout  65;   #gzip  on;  是否开启gzip压缩   server  {     lsten  80;  监控的端口     server_name   www.yunwei.com; 域名   location / {  我的个人理解为这也是个location匹配规则    

来谈谈写作这件事

痴心易碎 提交于 2021-02-08 13:18:41
写作这件事,很多大佬都谈过,但我还是想从自己的角度去谈谈. 说到写作,我们就需要来说,我为什么要去写作,或者说,写作带给了我什么. 1 ,可以系统性的思考. 我觉得你肯定有这样的感受,就是一个知识点我明明懂了,可是给别人讲的时候,却总是讲不明白.知道为什么嘛?因为你只是以为你自己懂了,实际上你并没有懂. 而写作就相当于你在给别人讲,那么你为了写明白一个知识点,为了让别人读懂你这篇文章,你会怎么做? 就拿这篇文章来说,为了向别人说明写作的重要性,你会怎么展开?起码会从是什么,为什么,怎么做,这三点去展开说,对吧. 那么,当你这样去写的时候,你发现,我好像对是什么不太清楚,所以你就会去查资料;我为什么要去用这个呢,想不明白,再去查资料;我怎么用这个知识呢,再去查资料或者实践. 这样做一次两次三次...当你坚持这样写完 100 篇文章的时候,你的思考角度,思维模式,绝对和写作之前不一样. 2 ,构建影响力. 对于一个人来说,最重要的是什么?是有自己的「影响力」. 当你有自己的影响力时,你就能够在整个行业里面脱颖而出,从而能够有机会结识更加优秀的人. 但是影响力很轻松就能构建?只想说,别做梦了. 那么,我怎么构建影响力? 高质量的内容 一件事情,你一定要想清楚,就是你和我都互相不认识,那么我凭什么信任你,我凭什么受你的影响,对吧.靠的就是高质量的内容. 我写博客,特别是需要实操的内容

keepalive

扶醉桌前 提交于 2021-02-05 12:32:07
1.1 Keepalived高可用软件 1.1.1 Keepalived介绍 Keepalived软件起初是专门为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx,Haproxy,MySQL等)的高可用解决方案软件。 Keepalived软件主要是通过VRRP协议实现高可用功能的。VRRP是Virtual Router Redundancy Protocol(虚拟路由器冗余协议)的缩写,VRRP出现的目的就是为了解决静态路由单点故障问题的,他能够保证当个别节点宕机时,整个网络可以不间断地运行。所以,Keepalived一方面具有配置管理LVS的功能,同时还具有对LVS下面节点进行健康检查的功能,另一方面也可实现系统网络服务的高可用功能。 Keepalived软件的官方站点是 http://www.keepalived.org 1.1.2 Keepalived服务的三个重要功能 (1)管理LVS负载均衡软件 早期的LVS软件,需要通过命令行或脚本实现管理,并且没有针对LVS节点的健康检查功能。为了解决LVS的这些使用不便问题,Keepalived诞生了,可以说,Keepalived软件起初是专为解决LVS的问题而诞生的。因此

lvs+keepalived

☆樱花仙子☆ 提交于 2021-01-30 13:41:52
1.关闭防火墙 systemctl stop firewalld && systemctl disable firewalld 2.关闭selinux vim /etc/sysconfig/selinux 修改 SELINUX=disabled 3.安装keepalived等 yum -y install keepalived ipvsadm net-tools gcc gcc-c++ make popt-devel kernel-devel openssl-devel #设置开机启动 systemctl enable keepalived 4.修改keepalived.conf vim /etc/keepalived/keepalived.conf keepalived.conf 配置,注意修改ip和端口 ! Configuration File for keepalived global_defs { router_id lvs1 #router_id 机器标识,通常为hostname,但不一定非得是hostname。故障发生时,邮件通知会用到。 } vrrp_instance VI_1 { #vrrp实例定义部分 state MASTER #设置lvs的状态,MASTER和BACKUP两种,必须大写,只能一个MASTER interface ens33 #设置对外服务的接口

Keepalived+Nginx实现高可用Web负载均衡

假如想象 提交于 2021-01-13 07:35:25
1、安装编译 Nginx 所需的依赖包 # yum install gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl openssl-devel 2、上传 Nginx #gzip on; server { listen 88; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } } 修改 Nginx 欢迎首页内容(用于后面测试,用于区分两个节点的 Nginx): # vi /usr/local/nginx/html/index.html 192.168.1.51 中的标题加 1 <h1>Welcome to nginx! 1</h1>

Keepalived+Nginx实现负载均衡高可用

烂漫一生 提交于 2021-01-13 07:29:32
一、负载均衡高可用 Nginx作为负载均衡器,所有请求都到了Nginx,可见Nginx处于非常重点的位置,如果Nginx服务器宕机后端web服务将无法提供服务,影响严重。 为了避免负载均衡服务器的宕机故障,需要建立一个备份机。主备机上都运行高可用(High Availability)监控程序,通过传送心跳信息来监控对方的运行状况。当备份机不能在一定的时间内收到对方的正常心跳时,它就接管主服务器的服务IP并继续提供负载均衡服务;当备份管理器又从主管理器收到“I am alive”这样的信息时,它就释放服务IP地址,这样的主服务器就开始再次提供负载均衡服务。 二、使用keepalived+Nginx实现负载均衡高可用 1、提供两个Nginx负载服务器 这里方便演示,分别在本机上添加2个虚拟服务器,分别安装Nginx 2、分别在两台服务器上安装keepalived Keepalived的安装方式不外乎检查配置、编译、安装那几个命令,这里就不再赘述,为方便管理,将相关配置文件进行移动,重启keepalived服务 3、配置keepalived 安装好keepalived后 ,进入/usr/local/keepalived/etc/keepalived,修改keepalived.conf文件 1)主机 2)备机 通过对两台服务器的keepalive进行配置,区分出主机和备机服务器,state

百万级高并发技术整体架构

我只是一个虾纸丫 提交于 2021-01-09 08:04:51
高并发是由于应用系统(如:移动APP或网站等)即页面浏览量或点击量大,单台服务器无法承载大量访问所带来的压力,因此会采用服务器硬件集群技术,用N台服务器进行分流,对于每次访问采取负载均衡策略,被分配到不同的服务器来处理请求。 负载均衡种类 一种是通过硬件来实现,常见硬件有F5,A10,NetScaler、Radware和Array等商用的负载均衡器,但是它们是比较昂贵,成本比较高。 另一种是通过软件来实现,常见的软件有LVS、Nginx、Apache等,它们是基于Linux系统并且开源的负载均衡策略。 整体架构图: 架构说明: Keepalived :是用来 检测服务器的状态,如果有一台web服务器宕机,或工作出现故障时,Keepalived将会检测到,并将有故障的服务器从系统中剔除,同时使用其他服务器代替该服务器的工作,当服务器工作正常后Keepalived自动将服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的服务器。 Keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议。 LVS (Linux Virtual Server):即Linux虚拟服务器,有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR),十种调度算法(rr|wrr

web集群需要学习哪些知识?linux系统工程师学习

萝らか妹 提交于 2021-01-04 16:33:48
  在充斥着各种的互联网+的数字时代,IT运维方面也越来越趋于Linux系统的应用,掌握 Linux 运维技术已成为IT 技术人员的必经之路,但是,构建在Linux系统上的高性能、高并发企业级网站集群架构上的网站集群架构,又会涉及到哪些具体的内容呢?   1、需要学习与Linux 相关的基础且重要的知识   Linux的历史沿革、Linux的企业级选型、学习环境的搭建、Linux 的企业级系统安装、Linux系统的基础优化,以及远程连接Linux及客户端SSH的设置等,HTTP协议和WWW服务相关知识。为搭建企业级Web 集群环境做准备。   2、学习当下流行的Web 环境架构(LNMP)搭建及企业级Web优化   Linux、Nginx、MySQL、PHP(LNMP)等Web环境架构的搭建、开源blog网站产品的安装部署、Web优化等知识。为搭建企业级完整的网站Web集群架构做准备。   3、学习Web 集群后端的数据存储及Web 集群前端的负载均衡和高可用   Web 集群后端的MySQL 数据库、Web 集群共享存储NFS、Nginx 反向代理负载均衡、Keepalived高可用、Memcached 缓存及session 共享、Nagios 企业级监控等技术实战,规划一个中等规模的网站集群架构解决方案。   如果是一名经验丰富的资深 Linux用户,可以直接从第1步开始学习

configure: error: no acceptable C compiler found in $PATH 解决

為{幸葍}努か 提交于 2021-01-04 07:34:56
在安装keepalived时报错 ./configure --prefix=/usr/local/ccbase/keepalived-2.0.15 && make && make install checking for a BSD-compatible install ... /usr/bin/ install - c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /usr/bin/ mkdir - p checking for gawk ... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking whether make supports nested variables... (cached) yes checking for pkg-config ... /usr/bin/ pkg-config checking pkg-config is at least version 0.9 . 0 ... yes checking for gcc ... no checking for