00:02
刚才我们通过N这个配置了反向代理,我们通过两个具体实例完成了反向代理配置,那下面呢,我们继续往下演示。我们还是进入N这个四的配置实例,那下面呢,给大家来配置另外一个实例,这个实例咱之前解释过,叫做负载均衡。那负载均衡的概念咱们快速回顾下,它就是通过增加服务器的数量,然后将请求分发到各个服务器上,将负载分发到不同的服务器,这个过程就是我们说的负载均衡。那我们下面就来演示一下这个负载均衡该怎么进行配置。而我们现在想要实现出这样一个效果,我在里边先写一下。我们通过浏览器的地址栏输入一个地址,这个地址应该就是我们的IP,比如说HTP冒号杠杠,咱们的IP是192.168.17.129。
01:17
然后通过地址咱们访问我们的某个页面,那这个咱让它实验出一个负载均衡的一个效果。也就是说咱们访问的时候,让他把请求平均。就是分担到这个8080和8081的端口中去,这是我们要做的效果,也就是说在里边呢,我们输一个地址,让这个地址既到8080,又到8081,让它平均分担到不同的套拍中去,这是我们要做到的这么一个基本效果,这就是咱们之前说的负载均衡。
02:03
那这个效果咱们同样先做一些准备工作,首先我们先准备两台tomcat服务器,当然你可以有多台,我以两台为例,然后两台,一台是8080,另一台是8081,这单之前应该都准备过了,在我们这个下边。Us RS RC下边有8080和8081,这个咱们之前已经准备过了,然后准备之后我们就是在这个两台tomcat里边。咱们在这个汤CAD里边那个web apps目录中,咱们分别都来创建一个名称是比如说我们叫edu的文件夹,然后在edu的文件夹中创建一个页面,用于我们这个测试。
03:09
比如说这个页面,我们统一都叫a.HTML。那咱们来准备一下。那这个页面为了我们操作明显,因为之前呢,在这个8080里边应该有这么一个页面edu。a.HTML而这个它里边应该是8080,那我们来测试一下啊。它是8080。里边edu。A点。HTL应该是8080端口啊,少少写一个冒号。我们看8080,另外有一个叫8081,那咱们准备一下8081端口号在8081里边,我这个位置咱们也是建一个文件夹,可以用命令,我在里边直接创建了,也叫edu,然后EU里边我们给它放入一个文件,还是a.HTL这里边我改成叫8081。
04:21
把这个文件咱直接拖到我们这个里边来。a.a填完,所以现在在8081中也是有我们这个内容,那咱们把服务器给它启动下,8081应该是没有启动的。啊,咱先仿一下。如果能访问启动,不能访问,我们给它启动一下。这应该是不能访问,那咱们把8081启动一下。CDR。S2C,然后CD这个Tom k8081。进入到这个目录中去。
05:02
在里边到B目录,然后我们启动。这个应该已经启动了,我们通过8081来访问一下。这个应该是可以的,所以咱们现在应该准备了两台tomcat,他们里边分别都有这个文件夹,还有这个a.HTL这个准备工作做到了,然后做到之后咱们下面就是在这个。N这个的配置文件中进行负载均衡的对比配置,那咱们来做一下,首先把这个打开。咱们找到。N这个四道配置文件。UR。Local。N在con。F里边有它的文件N这个点CF。
06:02
那我们找到它这个配置文件,然后在里边呢,进行我们相应的配置,那它的配置怎么来做呢?咱们需要在里边加上一些内容。首先我们需要加上的,要加上这么一个东西,叫upstream,起一个名字,这里边就表示你进行负载均衡服务器的一个列表,然后在思维里边location中加上你这个映射的一个规则。那咱们把它,我们就最终加上。首先第一个注意我们加的位置啊,咱们是在HTP的这个块里边加上一个叫upstream。那我们来加下,我就加到这个位置。咱就啊放到这里了。然后添加它的名字叫做upstream。
07:01
我们给它起个名字,叫这个my server。然后在这个MY里边加上咱们那个服务器的这个列表。它的做法就是加一个叫server。加上我们那个就是服务器的IP地址和端口号。第一个就是192.168.17.129,我们的第一个是8080端口,这是第一个负责列表,然后再加第二个就是里边这个8081。好,我们加上啊这么一个分号。再加第二个server。192。点168.17.129,这个是8081。所以我们加上这么一个就是负载均衡的服务列表,然后加上之后我们需要改下一个地方,在server里边,它现在监听是八零端口,然后咱们把local host改成我们的IP192.168.17点。
08:19
129,另外在location里边,我们给它加上这么一个规则。就是。Pass。然后加上一个HTP冒号杠杠,后面加上你起的那个服务名字,我们叫买。So。所以这样的话呢,咱们把这个负载均衡,就初步实现一个配置,它的做法就是我们再重复一遍,第一个在HTP的块里边加上一个叫upstream。然后里边给服务起个名字,下面列出你这个负载均衡tocad服务器的这个列表,80808081。
09:06
然后加上之后,我们在serve里边加上它里边这么一个规则,主要加的就是里边的这个位置,第一个改成我们的IP,然后重点是这里加上你刚才起那个服务名字叫做my server。把这个我们拿过来。所以说这样加完之后,咱们把这个最终的效果我们就做到了。咱们给它保存。退出一下。这样的话,我们就完成了负载均衡的配置,它里边最基本的配置就是这么来做,咱们试下了。然后实现之后呢,下面咱们把这个效果我们来试一下,看它的效果能不能出来,那首先咱们把NEX先给它启动一下。
10:06
我们来先给它关掉。N-S。Stop,然后我们再给它启动,这样的话咱们把这个就配置完成了,然后最终我们来做一个最终的一个完整的测试。因为我现在配置那个端口号,或者咱们对照这个来看。就刚才我们改的地方,第一个呢,咱们加这个东西叫upstream,然后这里边呢,加了个规则,让它到咱们的服务中去,因为我现在监听默认是八零端口,所以咱们直接用IP地址访问,应该就能完成我们的测试,那最终我们来测试一下。咱们现在在里边输入我们的IP地址,192.168.17.129,加上文件的路径edua点。
11:01
H填完了,大家注意,我现在回车。我们看到这里显示是不是叫8081啊,也就是说他现在啊,应该是直接跳转到了我们的8081这个服务器的专网中去,到了这里边,那比如我现在我来刷新大家看。变成谁是不是又是8080啊,他现在又到了8080,我再刷新80818080,所以你发现他是不是把这请求就是平均分担到我们的不同服务器中,因为刚才我们配置的有80808081,你看现在每次他在刷新都是一次请求,他就把请求分担到不同服务器中,所以说这个就是一个负载均衡的一个基本效果。也就是咱们。刚才做的里边的订单配置。所以咱们把这个最基本的效果我们就完成了,主要就这个做法。
12:01
然后在里边我再快速啊,再快速写一遍啊,做法就是在HT块中加一个upstream。比如我们叫my server。然后里边呢,加上咱们那个服务器的列表,Server192.168.17.129,第一个是。8080,然后第二个。192.168.17.129,第二个是8081,然后这里边加上我们的IP地址。最后在location里边加上这么一个规则,Policy。Pass。HTTP冒号杠杠买server。这样的话负载均衡,那我们的配置就最终完成了,它里边主要就这过程,刚才咱们测试应该也是没有问题的。
13:01
所以大家把这个过程一定要特别的清晰,咱们就最终完成了。然后完成之后呢,在我的文档中啊,有这么一段话,里边就讲了N这个中啊,提供这么几种分配的策略,也就是说怎么把请求平均分担到不同服务器中,它里边用到了什么样的方式,我在文档中列出了几种比较常用的方式,那我们来看一下里面这个过程。首先这里写到说随着互联网信息的爆炸性增长,负载均衡呢?其实已经不是一个陌生的话题。负载均衡就是将负载分担到不同的负单元,既可以保证服务的可能性,又保证响应足够快,给用户有很好的体现。而我们现在呢?在Linux系统中的N这X,包括还有其他的服可以提供负载平衡服务,而N这X应该是很受欢迎的一种工具或者一种软件,下面有这么几种分配的策略。
14:08
也就是咱们刚才啊,在请求过程中,我们把请求是不是就平均分担到了8080和8081专用中去,那这个分配的策略是怎么样的呢?这里边我列出了几种策略。那这几种策略我们来看一下啊,首先第一种策略。它也是一种默认的策略,这个策略叫做轮询。我在里边写一下。就是我们的。第四个。N这个词它。分配服务器的这些策略。然后里边的第一种策略,它叫做轮询。而这个轮询呢,是一种默认的策略,也就是说啊,你不做任何配置,它默认用到的就是轮询的这种方式,这是他的第一个策略。
15:11
那这个轮询具体是什么意思呢?这个文档中有一个解释,它就是。每个请求按照时间顺序逐一分配到服务器中,如果说服务器当掉了,它能怎么样自动剔除,也就是说我现在分配的时候,首先8080,然后到8081,按照你里边这个就是时间的顺序进行分配,如果说里边的某个服务器宕掉了,比如说8080已经没了,它服务器宕机了,那就把服务器给它剔除掉,就去访问8081,这是里边的第一种策略,叫做轮询策略。这个各位给他要知道。我把它拿过来。然后除了这种之外,还有第二种策略,第二种策略是什么呢?这个叫外,这种策略就是一种叫权重的策略,那这权重什么意思,给大家详细说一下。
16:14
也就是里边的。这句话。我把它拿回来,Y呢代表权重,默认它值是一,而权重越高,被分配客户端就越多,也就是说呢,我们在配置文件的时候呢,咱可以在每个服务后面加上这么一个外头,那我来演示一下。比如说在里边,我在这个位置,咱们加上一个外头,假如这外头我叫。等于值是五,然后我再加一个这个值,比如说我们等于叫做十。这个咱们等于十,那大家看这个值比它是不是要多呀,也就是说我们在分配的时候,分配到8081,比8080要多出一倍,这个叫权重,根据权重来分配,你这个就是客户端的多少。
17:13
这里边也列了一个例子,这是它的一个具体写法,这是我们的第二种方式,叫做根据权重来进行分配。这叫外头。然后除了第二种方式之外,还有第三种方式,第三种方式叫什么?它叫做IP哈希的方式。给大家复制过来,然后咱们解释一下什么叫艾比哈希,首先它的做法就是直接在我们的配置文件中啊,加上这句话就是IP哈希。这样的话就能实现这个效果,那IP哈希具体是什么意思?让我们来详细说一下。首先看这句话描述,它指的是每个请求按照访问IP的哈希结构分配,这样的话,每个访客固定访问一个后端服务器可以解决session问题。
18:10
那它的含义就是。比如我现在我进行访问,那我现在当前是不是一个IP地址,那它里面怎么做,只要是你的IP,比如我第一次访问是808营,那我后面只要我还用这个IP访问,那访问服务器就永远是8080,它不会访问到8081。假如说你换个服,换个IP地址,第一次访问是8081,那你后面永远访问的都是8081,这个叫IP哈希的方式,就是让你的用户指定就访问某一台服务器,这个叫IP哈希的方式。各位把这种方式他也记住。能把它拿回来,而这种方式呢,可以解决那个session共享的问题。
19:01
啊,这是第三种,然后除了它之外,还有第四种方式,叫做fire方式,也就是它里边指的是第三方的方式。那什么叫范方式呢?其实这种方式啊,应该比较好理解,它就是。看这句话。按照后端服务器的响应时间来分配,响时间越短,那它就优先分配。这句话我先拿过来,然后给大家详细解释一下它的写法就是在你的这里边我们加一个单词,叫做fair。这样的话,这效果就能做到,而fair什么意思?这句话根据响应时间来分配。也就是说,比如我现在访问。肯定他要做负载均衡到80808081,那他根据访问时间,比如说现在我先访问8080,没有访问到,然后去访问8081,看谁的想时间短,那就先给谁进行分配,这里边80808081谁的时间短就先分给多,这个叫半的方式,这种方式根据请求的响应时间来决定。
20:20
也是一种比较。常见的分析策略写法就是加上一个带就可以了。所以咱们这里边啊,就把我们NEX做负载均衡中服务器的分配的策略给大家做了一个说明,里边主要就是这么几种策略,我们就说完了,咱们快速重复一遍,第一种默认策略,允许根据时间逐一分配,第二个外头权重。谁的权重越高越被多分配客户端。第三个IP,哈希根据IP决定你用这个IP访问第一次是那个服务器,后面就一直是这台服务器。第四种叫fair,根据响应时间来分配你的客户端的请求。
21:10
所以这样的话,咱们就把这个NEX如何实现负载均衡的配置我们就说完了,主要就是在NEX的配置文件中实现咱们看到的这些基本配置。所以到这里我们就完成了N的第二个实例,结合咱们配置的第一个反向代理。负载均衡,我们就完成了。然后这个完成之后呢,后面我们继续往下做配置,大家先掌握什么是反向代理,什么是负载均衡。
我来说两句