邢台旅游:负载平衡服务之HAProxy基础设置(三)

admin 5天前 科技 56 1

  前文我们聊到了haproxy的署理设置段中对照常用的设置指令的用法以及说明,回首请参考https://www.cnblogs.com/qiuhom-1874/p/12770930.html;今天我们来说说haproxy的状态页的设置,以及基于cookie实现的会话保持设置;

  haproxy和nginx一样,都有一个状态页,这个页面对于运维职员来说是一个对照主要的页面,内里包罗了haproxy署理的后端服务器的种种指标,通常我们要领会后端主机是否康健,当前负载情形,我们可以通过状态页去领会;haproxy的状态页设置起来很简单,用stats enable指令去开启即可;

  stats enable:开启状态页;该指令可以设置在frontend或者listen或者backend,若是界说在backend中,那么我们必须要用前端去挪用该banckend才能够看到状态页,以是通常我们都界说在listen中或者frontend中;详细示例如下

  示例:界说在backend中

  提醒:界说在backend中必须要用frontend去挪用该backend;

  示例:界说在frontend中

  示例:界说在listen中

  提醒:以上三种方式都不影响接见状态页面,推荐设置在fonrtend或listen中;

  设置好stats enable参数后,重启haproxy,我们就可以通过浏览器接见haproxy所在主机的对应端口,我这里监听在81端口上,以是接见http://192.168.0.22:81/haporxy?stats就可以接见到状态页;如下

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第1张

  提醒:之以是接见/haproxy?stats这个uri才能够接见到状态页,是由于我们没有在设置文件中明确指定把状态页绑定到谁人uri上,默认情形不指定就是这个/haproxy?stats,固然我们若是要指定需要用stats uri <prefix>来指定对应的rui即可,如下

   stats uri <prefix>:自界说stats page uri,默认值:/haproxy?stats

  示例:更改状态也都uri

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第2张

  提醒:以上设置示意接见状态页,的uri为/admin??status

  测试:用浏览器接见81端口上的/admin??status这个uri看看是否能够接见到状态页?

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第3张

  提醒:可以看到我们更改了uri后,默认的uri就不可以接见了,必须键入我们指定uri才可以被接见到,这在一定程度上降低了任何人接见状态页的风险;

  stats auth <user>:<passwd>:设置状态页面认证的账号和密码,可使用多次;默认:no authentication,示意不验证

  示例:设置状态页只允许admin用户接见而且密码为admin123.com

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第4张

  提醒:以上设置示意开启状态页的认证功效,而且添加admin为用户名,admin123.com为密码

  测试:现在我们接见状态页,看看是否需要验证?

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第5张

  提醒:可以看到我们现在接见状态页,需要我们提供用户名和密码了,这相对于前面的设置,对于状态页的获取加倍平安了;

  stats realm <realm>:设置认证时弹出输入用户名密码的提醒信息;

  tats refresh <delay>:设置自动刷新时长;

  示例:

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第6张

  提醒:以上设置示意设定弹出输入用户名和密码的提醒,设置自动刷新时长为每4秒自动刷新一次

  测试:重启haproxy,看看对应设置是否生效

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第7张

  提醒:可以看到我们设置的输入用户名和密码提醒的字符串和自动刷新页都实现了,这里说一下,设定提醒字符串需要把空缺字符通过“\”转义,否则不会生效,加引号似乎都不可以;

  stats admin { if | unless } <cond>:启用stats page中的治理功效

  示例:设置可以在状态页治理后端主机的权限;通常会通事后面的acl去控制,我这里为了演示利便,就用TRUE这个内置的ACL

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第8张

  提醒:以上设置示意开启状态页治理功效,在条件为真的情形下,if TRUE示意一直为真,这意味着只要登录状态页,就有治理后端主机的权限;

  测试:

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第9张

  提醒:可以看到我们可以把后端主机的状态随便调整;

  stats hide-version:隐藏版本

  示例:隐藏haproxy状态也的版本信息

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第10张

  测试:登录状态页看看是否另有版本信息?

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第11张

  到此状态页的设置相关指令说完了,接下来我们来说说状态页里边的内容;

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第12张

  提醒:pid = 11712 (process #4, nbproc = 4) #pid为当前pid号,process为当前历程号,nbproc和nbthread为一共若干历程和每个历程若干个线程(多线程需要在1.7以上的版本才支持);uptime = 0d 0h08m17s #启动了多长时间;system limits: memmax = unlimited; ulimit-n = 8035示意系统资源限制:内存/最大打开文件数/;maxsock = 8035; maxconn = 4000; maxpipes = 0示意最大socket毗邻数/单历程最大毗邻数/最大管道数maxpipes;current conns = 1; current pipes = 0/0; conn rate = 1/sec;示意当前毗邻数/当前管道数/当前毗邻速率;Running tasks: 1/8; idle = 100 %示意运行的义务/当前空闲率;

  active UP:绿色示意在线服务器; backup UP:天蓝色示意标记为backup的服务器;active UP, going down:淡黄色示意监测未通过正在进入down历程;backup UP, going down:深紫色示意备份服务器正在进入down历程;active DOWN, going up:黄色示意down的服务器正在进入up历程;backup DOWN, going up:浅紫色示意备份服务器正在进入up历程;active or backup DOWN:粉红色示意在线的服务器或者是backup的服务器已经转换成了down状态; not checked:灰色示意标记为不监测的服务器(没有对它做康健状态监测);active or backup DOWN for maintenance (MAINT) :棕色示意active或者backup服务器以为下线的;active or backup SOFT STOPPED for maintenance :深蓝色示意active或者backup被以为软下线(人为将weight改成0);

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第13张

  提醒:session rate(每秒的毗邻会话信息)中的指标有cur,max,limit;其中cur示意每秒的当前会话数目;max示意每秒的最大会话数目;limit示意每秒新的会话限制量;sessions(会话信息),cur:示意当前会话量;max:示意最大会话量;limit: 示意限制会话量;Total:示意总共会话量;LBTot:示意选中一台服务器所用的总时间;Last:示意和服务器的连续毗邻时间;Bytes(流量统计):In示意网络的字节输入总量;Out示意网络的字节输出总量;Denied(拒绝统计信息):Req示意拒绝请求量;Resp示意拒绝恢复量;Errors(错误统计信息):Req示意错误请求量;conn示意错误毗邻量;Resp示意错误响应量;Warnings(忠告统计信息):Retr示意重新实验次数;Redis示意再次发送次数;Server(real server信息):Status示意后端server的状态,包罗UP和DOWN;LastChk示意连续监测后端服务器的时间,其中L4OK示意基于4层tcp检查OK,L7OK示意基于7层应用层检查OK;Wght示意权重;Act示意流动链接数目;Bck示意备份的服务器数目;Chk示意心跳监测时间;Dwn示意后端服务器毗邻后都是DOWN的数目;Dwntme示意总的downtime时间;Thrtle示意server的状态;

  领会了上面的状态页信息说明后,接下来我们来聊一聊haproxy基于cookie做会话保持;

  首先我们要清晰什么叫cookie?它的主要作用是干什么的?众所周知http是无状态的,所谓无状态就是前一秒客户端接见服务端,后一秒统一客户端接见服务端,服务端是无法判断是不是统一客户端;就相当于服务端没有任何能力记着客户端;这样一来就存在一个问题;若是是一需要验证的网站,若是服务端不能鉴别客户端身份,这意味着它不能够识别到底是哪个客户端登录了,这样一来用户每刷新一次网页,服务端就会要求客户端重新登录;这很显然不是正常的逻辑;为领会决这样的问题,服务端每当客户端登录的时刻,就会检查请求报文中是否携带cookie信息;若是没有携带cookie服务端在响应客户端的时刻就会在响应报文中添加一个set-cookie的首部,意思是告诉客户端,这是你的cookie;客户端拿到服务端的响应的同时,它会自动的把服务端发来的cookie保存到一个特定的地方,下次客户端再次接见服务端的时刻,就会把上次服务器发送过来的cookie信息带上去接见服务器;这样一来服务端收到客户端的请求,一看请求报文中的cookie信息,服务端就知道这个请求是谁人用户发送过来的;这样一来服务端就通过cookie来识别客户端了;这也是cookie的主要作用;通常情形下保存在客户端的叫cookie;在服务端一侧类似cookie的功效的器械我们叫session;通常两者通过某些信息来对应的;比如在客户端cookie信息里记录了服务端上的session的号码;当客户端再次接见服务端时,就会把cookie中的信息发送给服务端;服务端收到客户端发送过来的cookie就会去找对应的session;从而实现了,服务端知道对应客户端上次的操作;cookie是有时限性的;通常在有用的时间内去接见服务端,服务端都能够准确的识别客户端;过时以后,服务端会重新给客户端发送cookie信息;

  从上面的形貌,我们不难理解,cookie就是用来让服务端辨识客户端的一种机制;而对于haproxy来讲,基于cookie来做会话保持的原理就是通过对后端服务器响应报文中的cookie信息中添加(或笼罩的方式)一个键值对,在客户端下次接见时,检查对应cookie首部的信息,从而让haproxy能够判断把该请求调剂在谁人后端服务器上;通常我们会在server上设置一个cookie的值,在listen或backend中设置一个cookie的键,明确说明以怎样的方式设置cookie的键;通过listen或backend中设置的cookie的键连系server后面的cookie的值组成的cookie信息,从而实现差别的cookie信息调剂到差别的server上去;

  示例:

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第14张

  提醒:以上cookie COOKIE insert nocache示意在后端服务器响应报文首部中添加一个cookie的名称为COOKIE,而对应cookie的值就来源于后面server中的cookie的值;nocache示意该cookie不被共有缓存系统缓存;

  测试:重启haproxy,用浏览器接见看看响应首部有什么转变

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第15张

  提醒:可以看到当客户端第一次接见时,响应首部set-Cookie中就会设置一个COOKIE=web1的值;这个值就是我们刚才在haproxy设置的,从这个值上看,我们本次接见被调剂到web1上了,之后我们再次接见时,就不会被调剂到其他服务器上,在cookie过时之前始终都会被调剂到web1上响应;这是由于下次我们接见时,会自动把这个cookie信息携带上;如下

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第16张

  提醒:正是由于我们携带的cookie信息是COOKIE=web1和haproxy上的web1上的cookie的值相同,以是我们只要携带COOKIE=web1就会被调剂到web1上;

  用curl 模拟cookie信息接见差别后端服务器

邢台旅游:负载平衡服务之HAProxy基础设置(三) 第17张

  提醒:通过差别的cookie信息,就可以接见到差别后端server了;这样就实现了基于cookie信息来把相同cookie的请求发送给统一后端server的目的;实现了会话保持;

,

诚信在线

诚信在线(www.hoteluniformcustom.com)现已开放诚信在线手机版下载。游戏公平、公开、公正,用实力赢取信誉。

Sunbet声明:该文看法仅代表作者自己,与本平台无关。转载请注明:邢台旅游:负载平衡服务之HAProxy基础设置(三)

网友评论

  • (*)

最新评论

  • 欧博allbet网址 2020-09-24 00:02:32 回复

    欧博会员开户欢迎进入欧博会员开户(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。每天的精神食粮啊。

    1

文章归档

站点信息

  • 文章总数:794
  • 页面总数:0
  • 分类总数:8
  • 标签总数:1433
  • 评论总数:425
  • 浏览总数:34829