版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、负载均衡最佳实践负载均衡/最佳实践负载均衡/最佳实践 PAGE 13 PAGE 13最佳实践健康检查异常的排查思路负载均衡健康检查的实现机制可以点击这里查看。针对7层(HTTP协议)服务,当某一监听出现健康检查异常时,可以通过如下方面进行排查:首先,请确保您能够直接通过ECS来访问到您的应用服务。由于7层(HTTP协议)服务跟后端ECS之前的通讯是走内网的,需要您登录服务器检查应用服务器端 口是否正常监听在内网地址上,如果没有监听在内网地址,请将应用服务器端口监听到内网上,从而 确保负载均衡系统和后端ECS之间的通讯正常。请确保后端服务器开启了相应的端口,该端口必须与您在负载均衡监听配置中配置
2、的后端端口保持一 致。检查后端ECS内部是否有防火墙或者他的安全类防护软件将,这类软件很容易将负载均衡系统的本地 IP地址给屏蔽了,从而导致负载均衡系统无法跟后端服务器进行通讯。检查负载均衡健康检查参数设置是否正确,建议参照我方缺省提供的健康检查参数进行设置。建议您使用静态页面来进行健康检查,如果您用于健康检查的页面在后端ECS应用服务器上并不是缺 省首页,那么需要您在健康检查配置中指定该页面的URI。检查后端ECS资源是否有较高负载导致ECS对外提供服务响应慢。除此之外,您还可通过以下方法进行检查。由于负载均衡与后端ECS是通过内网进行通信的,因此需要ECS监听内网或者全网端口。 1.假设负
3、载均衡前端端口是80,ECS后端端口也是80,ECS内网IP是: Windows系统服务器使用如下命令:netstat -ano | findstr :80 系统服务器使用如下命令: netstat -anp | grep:80如果能看到::80的监听,或者:80的监听则说明这部分正常。 2.检查服务器内网防火墙是否放行80端口,可以暂时关闭防火墙进行测试。Windows系统可以运行输入firewall.cpl 操作关闭Linux系统可以输入/etc/init.d/iptables stop 关闭3.如果是4层负载均衡,只要后端端口telnet有响应即可,可以使用telnet 80 来测试。如
4、果是7层负载均衡,需要HTTP状态码是200 等代表正常的状态码。检验方法如下: IP测试是否正常,本例是: HYPERLINK / Linux系统可以通过curlIHTTP/1.1200OK,本例是:curlI形式的简单页面,只用于检查返回结果,不建议用php等动态脚本 语言。如问题还未解决,请联系售后技术支持。获取来访真实IP方法常见应用服务器获取来访者真实IP的方法.由于4层负载均衡(TCP协议)服务可以直接在后端ECS上获取来访者真实IP地址,无需进行额外的配 置,以下介绍的内容均是针对7层(HTTP协议)的负载均衡服务而言。的方式获取访问者真实IP,默认开启,用户无需配置。 以下针对
5、常见的应用服务器配置方案进行介绍:IIS 6 配置方案通过IIS 6日志中获取来访者真实IP地址的解决方案,首先需要安装插件F5XForwardedFor.dll,下载地址根据自己的服务器操作系统版本将x86Release或者x64Release目录下的F5XForwardedFor.dll拷 贝到某个目录,这里假设为C:ISAPIFilters,同时确保对IIS进程对该目录有读取权限。打开IIS管理器,找到当前开启的网站,在该网站上右键选择属性,打开属性页。在属性页切换至ISAPI筛选器,点击添加按钮,出现添加窗口。在添加窗口:筛选器名称填写F5XForwardedFor,可执行文件填写F5
6、XForwardedFor.dll的完 整路径,点击确定。重启IIS服务器,等待配置生效。IIS 7 配置方案通过F5XForwardedFor模块获取来访者真实IP地址的解决方案,首先需要下载与安装插件F5XForwardedFor模块,下载地址根据自己的服务器操作系统版本将x86Release 或者x64Release目录下的F5XFFHttpModule.dll和F5XFFHttpModule.ini拷贝到某个目录,这里假设为C:F5XForwardedFor,确保对IIS进程对该目 录有读取权限。选择IIS服务器选项,按图所示选择模块功能:双击模块功能,点击配置本机模块:在弹出框中点击
7、注册按钮:添加下载的DLL文件,如下图:添加完成后,勾选并点击确定:把这两个DLL在 API 和CGI限制进行添加,并改为允许:重启IIS服务器,等待配置生效。Apache配置方案wget HYPERLINK /apache/rpaf/download/mod_rpaf-0.6.tar.gz /apache/rpaf/download/mod_rpaf-0.6.tar.gzwget HYPERLINK /apache/rpaf/download/mod_rpaf-0.6.tar.gz /apache/rpaf/download/mod_rpaf-0.6.tar.gz tar zxvf mod_
8、rpaf-0.6.tar.gzcd mod_rpaf-0.6/alidata/server/httpd/bin/apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.cLoadModule rpaf_module modules/mod_rpaf-2.0.so RPAFenable OnRPAFsethostname On RPAFproxy_ips ip地址LoadModule rpaf_module modules/mod_rpaf-2.0.so RPAFenable OnRPAFsethostname On RPAFproxy_ips ip地址RPAFhe
9、ader X-Forwarded-For/RPAFproxy_ips ip地址(这个ip地址首先不是负载均衡提供的公网ip,具体ip多少可以看一下apache日志,通常会有2个 都要写上)/alidata/server/httpd/bin/apachectl restart添加完成后重启apache/alidata/server/httpd/bin/apachectl restartLoadModule rpaf_module modules/mod_rpaf-2.0.so RPAFenable OnRPAFsethostname OnLoadModule rpaf_module module
10、s/mod_rpaf-2.0.so RPAFenable OnRPAFsethostname OnRPAFproxy_ips 5 31RPAFheader X-Forwarded-ForRPAFheader X-Forwarded-ForNginx配置方案默认一键安装包安装的Nginx是没有安 装这个模块的,需要重新重新编译Nginx并加装:wget HYPERLINK http:/soft.phpwind.me/top/nginx-1.0.12.tar.gz wget HYPERLINK http:/soft.phpwind.me/top/nginx-1.0.12.tar.gz http:/
11、soft.phpwind.me/top/nginx-1.0.12.tar.gz tar zxvf nginx-1.0.12.tar.gzcd nginx-1.0.12./configure-user=www-group=www-prefix=/alidata/server/nginx-with-http_stub_status_module- without-http-cache -with-http_ssl_module-with-http_realip_modulemakemake installkill -USR2 cat /alidata/server/nginx/logs/nginx
12、.pidkill -QUIT cat /alidata/server/nginx/logs/ nginx.pid.oldbinvi /alidata/server/nginx/conf/nginx.conf修改nginx.confvi /alidata/server/nginx/conf/nginx.conf在fastcgi connect_timeout 300;fastcgi connect_timeout 300;fastcgi send_timeout 300;fastcgi read_timeout 300; fastcgi buffer_size 64k; fastcgi buff
13、ers 4 64k;fastcgi busy_buffers_size 128k; fastcgi temp_file_write_size 128k;set_real_ip_from ip地址;(这个ip地址首先不是负载均衡提供的公网ip,具体ip多少可以看一下之前nginx日志,如果有多个都要写上。)set_real_ip_from ip地址;(这个ip地址首先不是负载均衡提供的公网ip,具体ip多少可以看一下之前nginx日志,如果有多个都要写上。)set_real_ip_from ip地址;(这个ip地址首先不是负载均衡提供的公网ip,具体ip多少可以看一下之前nginx日志,如果有多
14、个都要写上。)real_ip_header X-Forwarded-For;重启Nnginx/alidata/server/nginx/sbin/nginx -s reload/alidata/server/nginx/sbin/nginx -s reload配置不同会话保持规则针对多个域名配置不同会话保持规则的实现方法如你某个VIP下有两个域名:和。您希望有会话保持,而没有会话保 持。则可以在开启会话保持配置中选择重写服务cookie的方式,比如,填写name这个cookie字段,并且在 自己的应用服务器上为域名设置key为name的cookie,而不给域名设置,就可以实现你 的需求。下面是
15、三种较为主流的应用服务器针对域名配置cookie的方法,可供你参考:ApacheLoadModule usertrack_module modules/mod_usertrack.so打开httpd.conf,保证这一行没有被注释LoadModule usertrack_module modules/mod_usertrack.soCookieName name CookieExpires 1 days CookieStyle Cookie CookieTracking on在virtual host中配置CookieName name CookieExpires 1 days CookieS
16、tyle Cookie CookieTracking onNginxserver server listen 8080;server_name ; location / add_header Set-Cookie name=xxxx; root html;index index.html index.htm;Lighttpdserver.modules = ( mod_setenv )server.modules = ( mod_setenv )$HTTPhost = server.document-root = /var/www/html/setenv.add-response-header
17、 = ( Set-Cookie = name=XXXXXX )但是,子域名对主域名的cookie存在继承关系,如果你有对一级域名做会话保持而对二级域名不做会话保持的 需求,那么后续可以通过申请更多的VIP来解决这个问题。OpenAPI配置负载均衡如何通过负载均衡Open API来配置负载均衡服务以下示例中使用URL表示请求参数,并且没有将公共请求参数包含在内。构造完整的请求URL,请参考 Aliyun ECS API参考手册。为方便阅读,示例中请求URL的参数值没有进行URL编码。前提条件 : 拥有1台或多台ECS实例。创建ECS实例并授权SSH和Web端口访问权限可以参考ECS相关介绍。这里
18、假设已经创建好1台ECS实例,并配置好Nginx,为了检验负载均衡能力,把/usr/share/nginx/www/index.html中的Body文字改为:Welcome to nginx on mytesthost1! 1.复制实例从第1台实例中复制出第2台实例。 假设第1台实例刚刚配置完成,可以用于创建自定义镜像。为系统盘创建快照/?Action=DescribeInstanceDisks&InstanceId=id5ab1760-3498-4d95-9687- a91545ef90b3先查询实例的系统盘ID: /?Action=DescribeInstanceDisks&Instanc
19、eId=id5ab1760-3498-4d95-9687- a91545ef90b3RequestId : 9F2188AC-AFAC-4F43-B452-C88463B9F069,RequestId : 9F2188AC-AFAC-4F43-B452-C88463B9F069,Disks : Disk : DiskId : 1008-27930,DiskId : 1008-27930,Size : 20,Type : system这里,系统盘Disk ID是:1008-27930/?Action=CreateSnapshot&InstanceId=id5ab1760-3498-4d95-96
20、87- a91545ef90b3&DiskId=1008-27930&SnapshotName=mytesthost1-init为系统盘创建快照: /?Action=CreateSnapshot&InstanceId=id5ab1760-3498-4d95-9687- a91545ef90b3&DiskId=1008-27930&SnapshotName=mytesthost1-initRequestId : 5CA4F9E6-81D2-42E1-A317-4C25284C6939, RequestId : 5CA4F9E6-81D2-42E1-A317-4C25284C6939, Snaps
21、hotId : 1008-27930-1097358这里,创建的快照ID是1008-27930-1097358。 Progress为100时,表示快照创建完成。请求:RequestId : 8307863A-1415-40EF-9520-8974871E651C, SnapshotId : 1008-27930-1097358,RequestId : 8307863A-1415-40EF-9520-8974871E651C, SnapshotId : 1008-27930-1097358,SnapshotName : mytesthost1-snp-init, Progress : 100,C
22、reationTime : 2013-05-19T03:19Z/?Action=DescribeSnapshotAttribute&RegionId=cn-hangzhou-dg- a01&SnapshotId=1008-27930-1097358/?Action=CreateImage&RegionId=cn-hangzhou-dg-a01&SnapshotId=1008-用创建完成的快照制作自定义镜像请求:/?Action=CreateImage&RegionId=cn-hangzhou-dg-a01&SnapshotId=1008-27930-1097358&Description=fo
23、r creating test instances27930-1097358&Description=for creating test instancesRequestId : 38C930E9-5CE9-4E24-A392-8538FC20D503,RequestId : 38C930E9-5CE9-4E24-A392-8538FC20D503,ImageId : m8a1f80fe-ed9d-4156-a7a8-432f66305c36复制机器有了自定义镜像,就可以复制一台同样配置的机器,通过ImageId=m8a1f80fe-ed9d-4156-a7a8- 432f66305c36创建
24、第2台ECS实例。RequestId : 850ED7ED-A4D5-40A1-A7EF-C33B74B1296B,RequestId : 850ED7ED-A4D5-40A1-A7EF-C33B74B1296B,InstanceId : i6b47cd72-843f-4558-b911-2776acae06fb, ImageId : m8a1f80fe-ed9d-4156-a7a8-432f66305c36, RegionId : cn-hangzhou-dg-a01,ZoneId : cn-hangzhou-gy002-a, InstanceType : ecs.t1.small, Hos
25、tName : mytesthost2, Status : Stopped, SecurityGroupIds : SecurityGroupId : g1f91e6e8-3c4b-4923-98dd-78aacbd09d17,PublicIpAddress : IpAddress : 73,InnerIpAddress : IpAddress : 52,InternetMaxBandwidthIn : 2,InternetMaxBandwidthOut : 2,SerialNumber : 1fec6c01-7186-2c3e-fa10-a672b8c300ec为了演示方便,在访问时与第1台
26、进行区分以示负载均衡配置成功,把/usr/share/nginx/www/default/index.html中的Body文字改为:Welcome to nginx on mytesthost2! 2.创建负载均衡的LoadBalancer/?Action=CreateLoadBalancer&RegionId=cn-hangzhou-dg-a01请求:/?Action=CreateLoadBalancer&RegionId=cn-hangzhou-dg-a01返回: RequestId : 3DE96B24-E2AB-4DFA-9910-1AADD60E13A5, LoadBalancerI
27、d :13ebb82ceaa-cn-hangzhou-dg-a01, Address : 7 这里,创建好的LoadBalancer ID为: 13ebb82ceaa-cn-hangzhou-dg-a01,为该LoadBalancer新增监听HTTP 80端口的HTTP Listener。当使用四层(TCP协议)的负载均衡时,方法类似。/?Action=CreateLoadBalancerHttpListener&LoadBalancerId=13ebb82ceaa-cn-hangzhou- dg-a01&ListenerPort=80&BackendServerPort=80&Listene
28、rStatus=active/?Action=CreateLoadBalancerHttpListener&LoadBalancerId=13ebb82ceaa-cn-hangzhou- dg-a01&ListenerPort=80&BackendServerPort=80&ListenerStatus=active激活LoadBalancer,使其进入工作状态。请求:/?Action=SetLoadBalancerStatus&LoadBalancerId=13ebb82ceaa-cn-hangzhou-dg- a01&LoadBalancerStatus=active3.增加后端服务器/?
29、Action=SetLoadBalancerStatus&LoadBalancerId=13ebb82ceaa-cn-hangzhou-dg- a01&LoadBalancerStatus=active可以通过AddBackendServers接口增加负载均衡后端服务器。新增后端服务器后,负载均衡器会将请求根据配 置转发到后端服务器。/?Action=AddBackendServers&LoadBalancerId=13ebb82ceaa-cn-hangzhou-dg- a01&BackendServers=ServerId:id5ab1760-3498-4d95-9687-a91545ef9
30、0b3/?Action=AddBackendServers&LoadBalancerId=13ebb82ceaa-cn-hangzhou-dg- a01&BackendServers=ServerId:id5ab1760-3498-4d95-9687-a91545ef90b3返回:RequestId : FA2F2172-63F2-409D-927C-86BD1D536F13,LoadBalancerId : 13ebb82ceaa-cn-hangzhou-dg-a01, BackendServers : BackendServer : ServerId : id5ab1760-3498-4d95-9687-a91545ef90b3,Weight : 100/?Action=AddBackendServers&LoadBalancerId=13ebb82ceaa-cn-hangzhou-dg- a01&BackendServers=ServerId:i6b47cd72-843f-4558-b911-2776acae06fb把第2台实例也加入进来(也可以一次增加多台): /?Action=AddBackendS
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年牛津深圳中考英语语法专项练习定语从句和宾语从句
- 吉首大学《教学技能训练1》2021-2022学年第一学期期末试卷
- 吉首大学《抽样技术与应用》2021-2022学年第一学期期末试卷
- 《机床夹具设计》试卷23
- 吉林艺术学院《艺用人体解剖学》2021-2022学年第一学期期末试卷
- 吉林艺术学院《三维软件MAYA》2021-2022学年第一学期期末试卷
- 集体经济房屋分配协议书范本
- 协议书范文伪装通知书的效力
- 吉林师范大学《原动画技法》2021-2022学年第一学期期末试卷
- 城市拍档协议书范文范本
- PICC并发症的预防和处理课件
- 人教版小学数学一年级上册4.1《认识立体图形》说课稿
- 人教版数学六上第五单元《圆》全单元教学设计
- 2022《建筑工程项目管理》形考1-4答案
- 职业生涯规划书教师职业分析
- 部编版(2024)一年级语文上册《语文园地四》精美课件
- 2024年新高考II卷高考生物试卷(真题+答案)
- MIL-STD-202-211-2020美国美军标准
- 2024-2030年中国医用同位素行业竞争格局及未来运行状况监测研究报告
- 租赁经营合同
- 初一奥数思维训练100题
评论
0/150
提交评论