云服务器内容精选

  • 为什么100或214开头的IP在频繁访问后端服务器? 共享型负载均衡实例以100.125.0.0/16网段中的IP作为源地址,向后端服务器转发前端业务流量及发起健康检查探测(如果您已开启健康检查)。 所以这些100.125开头的IP为弹性负载均衡服务与后端服务器通信所使用的内部IP,为了保证您的共享型负载均衡实例可正常提供服务,请确保后端服务器的安全策略已放通100.125.0.0/16网段。 如果共享型负载均衡实例所在区域已无100.125.0.0/16网段可供使用,将启用214.0.0.0/8网段中的IP作为源IP转发业务流量及发起健康检查探测。 父主题: 后端服务器
  • 如何检查ELB请求不均衡? 检查是否开启了会话保持。如果配置了会话保持,而客户端的个数又比较少时,很容易导致不均衡。 检查后端云服务器的健康检查状态是否正常,特别要关注下是否有健康检查状态一会正常一会异常的情况。健康检查异常或者状态切换都会导致流量不均衡。 检查负载均衡算法是否是源IP算法。此时同一个IP发过来的请求都会分发到同一个后端,导致流量不均衡。 后端服务是否开启了TCP keepalive保持长连接。如果开启,则有可能因为长连接上的请求数不同导致流量不均衡。 将云服务器添加到ELB后端时是否设置了权重,权重不同,分发的流量也不同。 一般情况下,影响负载均衡分配的因素包括分配策略、会话保持、长连接、权重等。换言之,最终是否均匀分配不仅与分配策略相关,还与使用的长短连接、后端的性能负载等相关。 父主题: 异常检查
  • 后端服务器可以反过来访问ELB吗? 通常情况,不建议同一台服务器既作为后端服务器又作为客户端的业务场景。 如果您有特殊业务需求,请谨慎选择方案。 公网通信:如果后端服务器绑定了公网IP地址,可以访问ELB的公网IP地址。 私网通信: 七层监听器支持后端服务器作为客户端访问ELB。 如果四层监听器开启“获取客户端IP”功能,不支持后端服务器作为客户端访问ELB。 如果四层监听器未开启“获取客户端IP”,支持后端服务器作为客户端访问ELB。 如果ELB开启“跨VPC后端”功能,“获取客户端IP”功能将失效,支持后端服务器作为客户端访问ELB。 父主题: 功能支持
  • 检查后端服务器路由 请检查是否手动修改了后端服务器内部的路由,查看主网卡(比如eth0)上是否配置默认路由,默认路由是否修改。如果默认路由更改,可能导致健康检查报文无法到达后端服务器。 您可以在后端服务器上通过以下命令查看您的默认路由是否指向网关(经过ELB转发属于跨网段访问,三层通信需要配置默认路由指向网关)。 ip route 或 route -n 正常的回显如图5所示。 图5 默认路由指向网关示例 图6 默认路由未指向网关示例 如果回显中没有像图5中的第一条路由信息,或者路由指向的IP的不是后端服务器所在VPC子网的网关,请您配置默认路由指向网关。
  • 后端服务器的安全组配置 共享型负载均衡的后端服务器安全组规则必须放通ELB用于健康检查的协议和端口和健康检查的源地址。 健康检查的协议和端口为用户在健康检查配置页面进行设置,您可在后端服务器组的基本信息页面查看。共享型负载均衡用于健康检查的源地址为100.125.0.0/16网段的IP。 您可通过自助诊断工具后端服务器的安全组规则进行诊断。后端服务器安全组规则的检查项目如下表2所示。 表2 安全组规则排查项目 排查项 处理措施 健康检查入方向源地址检查 请确保后端服务器的安全组入方向规则放通健康检查协议对应的传输层协议、健康检查端口和100.125.0.0/16网段的IP。 配置指导详情见配置后端服务器的安全组(共享型)。 健康检查入方向端口检查 健康检查入方向协议检查 健康检查出方向源地址检查 默认的安全组出方向规则全部放通。如果您设置了出方向规则,请确保后端服务器的安全组出方向规则放通健康检查协议对应的传输层协议、健康检查端口和100.125.0.0/16网段的IP。 配置指导详情见配置后端服务器的安全组(共享型)。 健康检查出方向端口检查 健康检查出方向协议检查 若共享型ELB实例开启“获取客户端IP”功能,共享型ELB四层监听器转发的流量将不受安全组规则和网络ACL限制,安全组规则和网络ACL规则均无需额外放通。建议您使用监听器的访问控制功能对访问IP进行限制,详情请参考访问控制策略。
  • 后端服务器的网络ACL配置 网络ACL为子网级别的可选安全层,若ELB的后端子网关联了网络ACL规则,网络ACL规则必须放通ELB用于健康检查的协议和端口和健康检查的源地址。 网络ACL默认规则会拒绝所有入站和出站流量,启用网络ACL后,您必须对网络ACL规则进行配置。 您可通过自助诊断工具后端服务器的安全组规则进行诊断。后端服务器的网络ACL规则的检查项目如下表3所示。 表3 网络ACL规则排查项目 排查项 处理措施 健康检查入方向协议检查 请确保后端服务器的网络ACL入方向规则放通健康检查协议对应的传输层协议、健康检查端口和100.125.0.0/16网段的IP。 配置指导详情见配置后端服务器的网络ACL规则(共享型)。 健康检查入方向源地址检查 健康检查入方向源端口检查 健康检查入方向目的地址检查 健康检查入方向目的端口检查 健康检查出方向协议检查 请确保后端服务器的网络ACL出方向规则放通健康检查协议对应的传输层协议、健康检查端口和100.125.0.0/16网段的IP。 配置指导详情见配置后端服务器的网络ACL规则(共享型)。 健康检查出方向源地址检查 健康检查出方向源端口检查 健康检查出方向目的地址检查 健康检查出方向目的端口检查 若共享型ELB实例开启“获取客户端IP”功能,共享型ELB四层监听器转发的流量将不受安全组规则和网络ACL限制,安全组规则和网络ACL规则均无需额外放通。建议您使用监听器的访问控制功能对访问IP进行限制,详情请参考访问控制策略。
  • 检查后端服务器是否正常 如果后端服务器的操作系统为Windows,请通过浏览器直接访问https://后端服务器的IP : 健康检查配置的端口。如果返回码为2xx或3xx,则表示后端服务器正常。 您可以在后端服务器上通过以下命令查看后端服务器的健康检查端口是否被健康检查协议正常监听。 netstat -anlp | grep port 回显中包含健康检查端口信息并且显示LISTEN,则表示后端服务器的健康检查端口在监听状态,如图1中表示880端口被TCP进程所监控。 如果您没有配置健康检查端口信息,默认和后端服务器业务端口一致。 图1 后端服务器正常被监听的回显示例 图2 后端服务器没有被监听的回显示例 如果健康检查端口没有在监听状态(后端服务器没有被监听),您需要先启动后端服务器上的业务,启动业务后再查看健康检查端口是否被正常监听。 如果是HTTP健康检查,请您在后端服务器上执行以下命令查看回显中返回的状态码。 curl 后端服务器的私有IP:健康检查端口/健康检查路径 -iv HTTP健康检查是ELB向后端服务器发起GET请求,当获取到以下所列的响应状态码,认为服务器是正常状态。 对于TCP的监听器,HTTP健康检查正常返回状态码是200。 对于共享型ELB:HTTP健康检查正常返回状态码是200、202或者401。 图3 后端服务器异常的回显示例 图4 后端服务器正常的回显示例 如果HTTP健康检查异常,除了检查健康检查路径外,建议您将配置的HTTP健康检查修改为TCP健康检查。操作如下: 在监听器界面,修改目标监听器,在配置参数里选择已有TCP健康检查的后端服务器组,或者选择新创建TCP健康检查的后端服务器组。配置完成之后,几十秒后去查看健康检查状态是否恢复正常。
  • 排查思路 负载均衡已提供自助问题诊断工具帮助用户定位健康检查异常问题,如果通过自助诊断工具排查仍然无法定位问题,请参考表1进一步排查。 因为健康检查包含检查间隔和阈值判断,相关配置的修改完成后需要等待一定的时间,配置才会生效。 如果健康检查恢复正常,在ELB关联的后端服务器基本信息界面可以看到健康检查状态是否正常。 表1 排查思路 排查手段 排查项目 自助诊断工具排查 后端服务器的安全组配置 后端服务器的网络ACL配置 健康检查参数配置 其他异常排查项 检查后端服务器组是否关联监听器 检查ELB是否绑定EIP或私网IP 检查后端服务器是否正常 检查后端服务器防火墙 检查后端服务器路由 检查后端服务器负载 检查后端服务器hosts.deny文件
  • 如何使用Linux curl测试负载均衡会话保持? 申请ELB与ECS资源。 创建3个ECS实例,1个做客户端,2个做服务端。 创建1个ELB实例与HTTP监听器实例,注意务必开启“会话保持”功能。 启动服务端ECS的HTTP服务。 登录第一个服务端ECS,在当前路径下创建名为“1.file”的文件,以标示第一个节点。 并在当前路径执行以下命令启动HTTP服务。 nohup python –m SimpleHTTPServer 80 & 在第一个部署后端服务的虚拟机执行以下命令,确认HTTP服务正常。 curl http://127.0.0.1:80 登录第二个服务端ECS,在当前路径下创建名为“2.file”的文件,以标示第二个节点。 并在当前路径执行以下命令启动HTTP服务。 nohup python –m SimpleHTTPServer 80 & 在本机执行以下命令,确认HTTP服务正常。 curl http://127.0.0.1:80 从客户端ECS指定cookie值对ELB实例发起访问。 调整以下命令,从客户端ECS对ELB实例发起访问,确认每次请求返回的file名称一致。 curl --cookie "name=abcd" http://ELB_IP:Port 父主题: 功能支持
  • ELB的IPv4/IPv6双栈实例可以切换到仅IPv4模式吗? 为实现ELB实例IPv4/IPv6双栈的能力,需要为ELB实例指定一个IPv6子网,用于分配访问ELB实例的IPv6地址,IPv6地址会从指定的子网中随机分配。 当您的实例需要关闭IPv6的功能,可以将ELB实例与IPv6地址解绑,IPv6地址将回收至子网中,无法再使用此IPv6地址访问ELB实例。 若要重新使用IPv4/IPv6双栈的能力,目前您可通过调用API的方式为ELB实例重新绑定IPv6子网,重新绑定后,为实例分配的IPv6地址无法保证与之前的IPv6地址一致。 父主题: 负载均衡器
  • ELB支持IPv6网络吗? 目前,共享型负载均衡仅支持IPv4网络,不支持IPv6网络。独享型负载均衡支持IPv4网络和IPv6网络。 对于四层独享型负载均衡,当客户端和ELB之间使用IPv6网络通信时,ELB和后端服务器之间必须使用IPv6网络通信;对于七层独享型负载均衡,当客户端和ELB之间使用IPv6网络通信时,ELB和后端服务器之间必须使用IPv4网络通信。 创建独享型负载均衡时,若指定的后端子网未开启IPv6,负载均衡实例创建后将不支持IPv6网络。 如果您的业务需要支持IPv6网络,您需要在创建独享型负载均衡时指定已开启IPv6的子网作为后端子网。 图1 四层独享型负载均衡支持的网络类型 图2 七层独享型负载均衡支持的网络类型 父主题: 功能支持
  • 如何通过监控数据和日志快速判断ELB的响应时间? 七层负载均衡HTTP和HTTPS可以通过监控指标项可以查看ELB的平均响应时间,同时可以通过日志查看每一次请求的响应时间。 登录控制台,并单击需要查询的负载均衡名称。 切换到“监控”页签,并选择正确的七层监听器。 查看“7层后端RT平均值”参数,可以得到负载均衡器到后端服务器的平均响应时间。 表1 平均响应时间 参数名 解释 7层后端的RT平均值 统计监听器当前7层后端平均响应时间。(HTTP和HTTPS监听器才有此指标) 从监听器将请求转发给后端服务器开始,到监听器收到后端服务器返回响应为止。 单位:毫秒。 如果您想查询七层协议每个请求的具体响应时间,您可以通过访问日志查看。 访问日志的“request_time”、“upstream_connect_time”、“upstream_header_time”或“upstream_response_time”字段计算可以查看ELB转发请求的耗时情况。访问日志获取方法,请参考访问日志。 表2 参数解释 参数名 解释 request_time 请求处理时间,即ELB收到第一个客户端请求报文到ELB发送完响应报文的时间间隔(单位:秒)。 upstream_connect_time 与上游服务器建立连接所花费的时间,时间以秒为单位,分辨率为毫秒。当ELB代理进行请求重试时会包含多个连接的时间,当请求未被正确转发到后端服务器时此字段为 -。 upstream_header_time 从上游服务器接收响应头所花费的时间,时间以秒为单位,分辨率为毫秒。当ELB代理进行请求重试时会包含多个响应时间,当请求未被正确转发到后端服务器时此字段为 -。 upstream_response_time 从上游服务器接收响应所花费的时间,时间以秒为单位,分辨率为毫秒。当ELB代理进行请求重试时会包含多个响应时间,当请求未被正确转发到后端服务器时此字段为 -。 父主题: 功能支持
  • 如何排查ELB返回至客户端的异常请求头? 在异常返回码的基础上,ELB会将典型的异常情况通过“x-router-code” header头通知客户端,常见的有40000,40001,50000, 50001,您可以参考下表排查异常header值的可能原因: 表1 ELB返回至客户端的异常请求头 header值 含义 可能原因 40000 默认后端服务器组没有配置后端后端服务器 客户端请求没有命中任何转发策略。 后端服务器组没有配置后端服务器。 40001 转发策略对应的后端服务器组没有配置后端服务器 客户端请求命中了错误的转发策略。 转发策略对应的后端服务器组没有配置后端服务器。 50000 ELB的后端服务器全都不可用 健康检查配置异常,导致ELB认为后端服务器异常不可用。 后端服务器自身异常不可用,需自行排查后端服务器。 50001 配置正在加载中 配置尚未加载完毕,请等待配置加载完成,稍后重试。 父主题: 异常检查
  • 如何检查弹性负载均衡服务不通或异常中断? 检查后端云服务器的健康检查状态是否正常,如果异常,流量会切换到其他后端云服务器。请您排查并解决健康检查异常问题后,再重新访问ELB。 检查安全组规则是否放通了对应的网段: 对于独享型负载均衡,检查后端服务器所在的安全组入方向是否放通ELB后端子网所属网段。 对于共享型负载均衡,检查客户后端服务安全组入方向是否放通了100.125.0.0/16网段。 共享型实例四层监听器开启“获取客户端IP”功能后,后端服务器安全组规则和网络ACL规则均无需放通100.125.0.0/16网段及客户端IP地址。 独享型负载均衡四层监听器未开启“跨VPC后端”功能时,后端服务器安全组规则和网络ACL规则均无需放通ELB后端子网所属网段。 检查ELB与客户端之间是否是TCP连接。创建TCP连接的超时时间是300s,超时时间用户不能设置。如果超过300s,ELB会向客户端和服务端发送RST断开连接。 检查是否开启了会话保持,且会话保持类型选择的是源IP地址。如果是,需要注意请求到达ELB之前,请求IP是否发生变化。 例如:ELB配合CDN、WAF服务使用,请求经过CDN、WAF后,IP会被代理,到达ELB的IP无法保持一致,导致会话保持失效。若您要使用CDN、WAF服务,建议使用七层监听器,使用基于cookie的会话保持。 检查是否是HTTP/HTTPS监听器,并配置了会话保持。如果是,需要注意发送的请求是否带有cookie,如果带有cookie,则观察该cookie值是否发生了变化(因为7层会话保持基于cookie)。 检查后端服务器组的会话保持是否超时。如果您开启了会话保持且未修改默认的会话保持时间,那么四层监听器和七层监听器的后端服务器组默认会话保持时间是20分钟,超时后会断开连接。 检查您访问ELB的服务器是否为后端服务器。 四层监听器(TCP/UDP)开启“获取客户端IP”功能之后,不支持同一台服务器既作为后端服务器又作为客户端的场景。 检查您是否通过跨VPC后端功能添加了后端服务器。如果是,需要确认在ELB所在的VPC和后端服务器所在的VPC之间是否建立了对等连接。 请检查您的账户是否欠费,欠费会导致EIP等付费资源被冻结,而无法使用。 父主题: 异常检查
  • 如何检查弹性负载均衡业务访问延时大? 将EIP绑定到后端云服务器,不经过弹性负载均衡直接访问后端服务,查看访问延时。用来判断是弹性负载均衡的问题,还是前端网络问题或者后端服务问题。 查看业务流量是否超过了EIP的带宽限制,超带宽会产生拥塞、丢包等异常情况。 带宽超限指的是您的突发的流量超过了带宽基准的速率,并不是带宽被占满导致的。每个带宽都有基准的速率,超过这个速率就称为带宽超速的现象,这种情况下限速策略就会生效,会导致一定程度的丢包,这种情况需要您进一步排查业务情况或提升带宽的上限。 如果直接访问后端存在业务访问延时大,需要排查后端服务是否压力过大,是否配置了安全策略等。 查看异常主机数的监控来判断后端云服务器的健康检查状态是否有跳变。在后端服务状况不稳定时,因为弹性负载均衡的重试机制,如果连接一台后端超时,请求会重新发往下一台后端,请求成功,这样业务就表现为访问成功,但是延时很大。 如果问题依然存在,请联系客服。 父主题: 异常检查