网络负载均衡

LVS负载均衡群集详解

可紊 提交于 2019-11-29 08:23:47
此博文包含以下内容: 1、 群集类型 2、负载均衡的分层结构 3、负载均衡的工作模式 4、LVS的负载调度算法 5、LVS相关的基础命令 6、使用ipvsadm管理工具 7、搭建NFS共享存储服务器 8、搭建基于NAT模式的LVS负载均衡群集实例 根据生产环境的不同,群集所提供的功能也各不相同,采用的技术细节也可能各有千秋。关于群集技术的相关概念如下: 1、 群集类型 无论是哪种群集,都至少包括两台节点服务器,而对外表现为一个整体,只提供一个访问入口(域名或IP地址),相当于一台大型计算机。根据群集所针对的目标差异,可以分为以下三种类型: 负载均衡群集(LB):以提高应用系统的响应能力、尽可能处理更多的访问请求、较少延迟为目的,获得高并发、高负载的整体性能。例如,“DNS轮询” 、“应用层交换”、“反向代理”等都可用做负载均衡群集。LB的负载分配依赖于主节点的分流算法,将来自客户机的访问请求分担给多个服务器节点,从而缓解整个系统的负载压力。 . 高可用群集(HA):以提高应用系统的可靠性,尽可能地减少中断时间为目标,确保服务的连续性,达到高可用(HA)的容错效果,例如,“故障切换”。“双机热备”、“多机热备”、等都属于高可用群集技术,HA的工作方式包括双工和主从两种模式。双工就是所有节点同时在线;主从则只有主节点在线,但当出现故障时从节点能自动切换为主节点

nginx 简单理解和配置

自作多情 提交于 2019-11-29 08:15:38
1.概念 Nginx是一个高性能的HTTP和反向代理的web服务器,同时也提供了IMAP/POP3/SMTP服务,Nginx是由伊戈尔·塞索耶夫为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。 其将源代码以类BSD许可证的形式发布,因他的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx1.0.4发布。 nginx时一款轻量级的web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点时占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆是由nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。 2. 优点 Nginx可以在大多数UnixLinuxOS上编译运行,并有Windows移植版,Nginx的1.4.0稳定版本已经于2013年4月24日发布,一般情况下,对于新建站点,建议是由最新稳定版本为生产版本,已有站点的升级紧迫性不高,Nginx的源代码使用2-clause BSD-like license。 Nginx 是一个很强大的高性能web和反向代理服务,它具有很多非常优越的特性: 再连接高并发的情况下,Nginx是Apache服务模型不错的替代品

架构整体认知

≡放荡痞女 提交于 2019-11-29 00:04:15
1、引言 本文以设计淘宝网的后台架构为例,介绍从一百个并发到千万级并发情况下服务端的架构的14次演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知。文章最后汇总了一些架构设计的原则。 2、程序员成长线 这是一条成长线的表意图,有两个部分:图上左侧的路径,是匹配不同成长阶段,对应不同职业角色;右侧是一条由不同成长阶段组成的成长线,包括如下: 征途:启程之初 修炼:程序之术 修行:由术入道 徘徊:道中彷徨 寻路:路在何方 蜕变:破茧成蝶 3、相关文章 《 新手入门:零基础理解大型分布式架构的演进历史、技术原理、最佳实践 》 《 腾讯资深架构师干货总结:一文读懂大型分布式系统设计的方方面面 》 《 一篇读懂分布式架构下的负载均衡技术:分类、原理、算法、常见方案等 》 《 快速理解高性能HTTP服务端的负载均衡技术原理 》 《 知乎技术分享:从单机到2000万QPS并发的Redis高性能缓存实践之路 》 《 达达O2O后台架构演进实践:从0到4000高并发请求背后的努力 》 《 小米技术分享:解密小米抢购系统千万高并发架构的演进和实践 》 《 通俗易懂:如何设计能支撑百万并发的数据库架构? 》 4、基本概念 在介绍架构之前,为了避免部分读者对架构设计中的一些概念不了解,下面对几个最基础的概念进行介绍。 1)什么是分布式? 系统中的多个模块在不同服务器上部署

Linux运维精华常见基础面试题

痞子三分冷 提交于 2019-11-28 11:20:24
尽管运维是做的最苦最累的活,最容易背锅的一个岗位,大家还是应该在工作中不断提高自己。 下面是一名资深Linux运维求职数十家公司总结的Linux运维面试精华,助力大家跳槽找个高薪好工作。 1、你理解的运维是什么,什么是游戏运维? 1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常, 在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术 运维又包括很多种,有DBA运维、网站运维、虚拟化运维、监控运维、游戏运维等等 2)游戏运维又有分工,分为开发运维、应用运维(业务运维)和系统运维 开发运维:是给应用运维开发运维工具和运维平台的 应用运维:是给业务上线、维护和做故障排除的,用开发运维开发出来的工具给业务上线、维护、做故障排查 系统运维:是给应用运维提供业务上的基础设施,比如:系统、网络、监控、硬件等等 总结:开发运维和系统运维给应用运维提供了“工具”和“基础设施”上的支撑 开发运维、应用运维和系统运维他们的工作是环环相扣的 2、在工作中,运维人员经常需要跟运营人员打交道,请问运营的人员是做什么工作的? 游戏运营要做的一个事情除了协调工作以外 还需要与各平台沟通,做好开服的时间、开服数、用户导量、活动等计划 3、现在给你二三百台服务器,你怎么对他们进行管理? 管理3百台服务器的方式: 1)设定跳板机,使用统一账号登录

nginx 篇

人走茶凉 提交于 2019-11-28 04:11:24
nginx 安装 下载必要组件 nginx下载地址 http://nginx.org/en/download.html pcre库下载地址,nginx需要 http://sourceforge.net/projects/pcre/files/pcre/ zlib下载地址,nginx需要 http://www.zlib.net/ openssl下载地址,nginx需要 https://github.com/openssl/openssl 在同级目录下,解压安装zlib、openssl、pcre 创建 /usr/local/zlib /usr/local/openssl /usr/local/pcre /usr/local/nginx 四个文件夹。为以防万一,都给足权限 chmod 777 1、因为是零初始环境,所以要安装一些基本的文件,否则后面会狂报错   1)安装GCC软件套件::yum install gcc 否则会报错 configure: error: no acceptable C compiler found in $PATH   2)安装解压缩: yum install -y unzip zip 否则会报错 unzip: command not found   3)安装c++编译环境:yum groupinstall "Development Tools"

nginx之负载均衡

最后都变了- 提交于 2019-11-27 22:08:24
集群   概念:    大白话就是:一堆服务器做一件事   一组若干个相互独立的计算机,利用高速通信网络组成一个较大的计算机服务系统,每个集群节点都是运行各自服务的独立服务器。   存在地方:可能分布在全国各地。(有点夸张了,全国各地那这个服务系统超级大了)比如谷歌,淘宝,百度服务器,背后估计有成千上万台电脑组成多个集群干多件事情   为什么要用集群?   单点计算机很难达到高性能的特点。     高性能、价值有效性、可扩展性:如果当服务负载压力增加时,就可以对系统进行扩展,且不会降低服务质量 高可用性:挂了单点计算机,其它的计算机还可以正常工作7*24 负载均衡    平均分配压力(压力均摊)   负载均衡抽象理解(图糙理不糙)    小黄人好酷,分担压力泽帅 实验准备 准备三台计算机 当然我这里无法真正上的测试哈!两台还好计算机还好能扛下来,三台有点难。 nginx1 作为nginx负载均衡器 假如ip为192.168.13.121 nginx2 web服务 提供一个简单的页面 192.168.13.24 nginx3 web服务 提供一个简单的页面 192.168.13.79 主要是配置负载均衡器,要看效果的话可以配置下web服务两个的首页 1 #user nobody; 2 worker_processes 1; 3 4 #error_log logs/error.log;

tomcat集群负载均衡配置

青春壹個敷衍的年華 提交于 2019-11-27 20:25:03
参考: Tomcat与Apache或Nginx的集群负载均衡设置: http://huangrs.blog.51cto.com/2677571/1058579 Tomcat与Apache或Nginx连接和集群配置: http://toplchx.iteye.com/blog/1928390 系统环境设置 准备三台redhat linux 5或 centos服务器: 负载均衡服务器:Apache安装自带的web发布服务(httpd服务) IP地址:192.168.0.100 Tomcat发布服务器1:安装有两个发布服务tomcat1和tomcat2 IP地址:192.168.0.101 Tomcat发布服务器2:安装有两个发布服务tomcat3和tomcat4 IP地址:192.168.0.102 统一对外部发布的地址是: http://192.168.0.100 (即负载均衡地址) 在设定完成IP以后,最好先设置主机名和IP的对应关系: 1 2 3 4 cat /etc/hosts 192.168.0.100 web.example.com web #add 127.0.0.1 localhost.localdomain localhost ::1 localhost6.localdomain6 localhost6 Tomcat发布器的安装 JDK安装 JDK软件最新版下载:

LVS实现负载均衡

二次信任 提交于 2019-11-27 16:44:01
一、LVS 1、LVS是什么? LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中。终端互联网用户从外部访问公司的外部负载均衡服务器,终端用户的Web请求会发送给LVS调度器,调度器根据自己预设的算法决定将该请求发送给后端的某台Web服务器,比如,轮询算法可以将外部的请求平均分发给后端的所有服务器,终端用户访问LVS调度器虽然会被转发到后端真实的服务器,但如果真实服务器连接的是相同的存储,提供的服务也是相同的服务,最终用户不管是访问哪台真实服务器,得到的服务内容都是一样的,整个集群对用户而言都是透明的。 LVS基于内核网络层工作,有着超强的并发处理能力,单台LVS可以承受上万的并发连接。LVS是基于4层的负载均衡软件,因此LVS在所有负载均衡软件中性能最强,稳定性最高,消耗CPU和内存少。LVS是工作在4层,所以它可以对应用层的所有协议作负载均衡,包括http、DNS、ftp等。 2、LVS分层及组成 LVS负载均衡分为3层: 第一层:负载调度器(load balancer/Director),它是整个集群的总代理,它在有两个网卡,一个网卡面对访问网站的客户端, 一个网卡面对整个集群的内部。负责将客户端的请求发送到一组服务器上执行,而客户也认为服务是来自这台主的。举个生动 的例子

LVS负载均衡群集——NAT地址转换模式实战(可跟做!)

血红的双手。 提交于 2019-11-27 08:24:14
负载均衡群集(Load Balance Cluster) 以提高应用系统的响应能力、尽可能处理更多的访问请求、减少延迟为目标,获得高并发、高负载(LB)的整体性能LB的负载分配依赖于主节点的分流算法 群集的负载调度技术有三种工作模式 地址转换(本文只介绍NAT模式) IP隧道 直接路由 NAT模式 地址转换 (Network AddressTranslation) 简称NAT模式,类似于防火墙的私有网络结构,负载调度器作为所有服务器节点的网关,即作为客户机的访问入口,也是各节点回应客户机的访问出口 服务器节点使用私有IP地址,与负载调度器位于同一一个物理网络,安全性要优于其他两种方式 负载均衡群集架构 负载均衡的结构 第一层,负载调度器(Load Balancer或Director) 第二层,服务器池(Server Pool) 第三层,共享存储(Share Storage) LVS的负载调度算法 轮询(Round Robin) 将收到的访问请求按照顺序轮流分配给群集中的各节点(真实服务器)均等地对待每一台服务器,而不管服务器实际的连接数和系统负载 加权轮询(Weighted Round Robin) 根据真实服务器的处理能力轮流分配收到的访问请求,调度器可以自动查询各节点的负载情况,并动态调整其权重 保证处理能力强的服务器承担更多的访问流量 最少连接(Least

LVS+Keepalived实现负载均衡

ぃ、小莉子 提交于 2019-11-27 07:46:28
背景 在上一篇文章 美团点评DBProxy读写分离使用说明 实现了读写分离,但在最后提了二个问题:一是代理不管MySQL主从的复制状态,二是DBProxy本身是一个单点的存在。对于第一个可以通过自己定义的检测规则进行操作Admin接口,实现主从状态异常的处理。而对于第二个问题,需要再起一个DBProxy来防止单点故障,本文通过介绍LVS来实现DBProxy的负载均衡和高可用。MySQL的架构如下: LVS基础 http://www.linuxvirtualserver.org/zh/lvs1.html http://www.linuxvirtualserver.org/zh/lvs2.html http://www.linuxvirtualserver.org/zh/lvs3.html http://www.linuxvirtualserver.org/zh/lvs4.html 1)LVS是什么 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器。主要用于 服务器集群的负载均衡 。它是四层负载均衡,建立在OSI模型的第四层——传输层之上,传输层上有我们熟悉的 TCP/UDP。转发主要通过修改IP地址(NAT 模式)、修改目标 MAC(DR 模式)来实现。它工作在网络层,可以实现高性能,高可用的服务器集群技术