标签: amazon-elb

AWS 上的粘性会话有其他选择吗?

我在经典负载均衡器上使用两个 ec2 实例。我的用户在分析过程中遇到 502 错误,尤其是在进行 ajax 调用时。换句话说,如果用户连接到一个服务器实例,则在使用程序过程中的 ajax 调用将定向到另一个服务器实例。这会导致该错误。我需要用户在他/她的会话期间定位到同一服务器实例。

在谷歌搜索上述问题后,我发现了这一点:

负载平衡、AJAX 和您

https://docs.aws.amazon.com/elasticloadbalancing/latest/application/sticky-sessions.html

根据这些文档,我应该将粘性会话应用于我的负载均衡器。但是,它要求客户在其浏览器上启用 cookie。我真的不想这样。

对于这个问题还有其他解决方案吗?我真的很感激任何建议。

ajax amazon-web-services amazon-elb

1
推荐指数
1
解决办法
1056
查看次数

设置 AWS WAF ACL 时未找到资源

我正在尝试为负载均衡器设置 ACL,但Associated AWS resources在创建 Web ACL 时它没有显示在该部分中。

创建 ACL 仪表板

Resource TypeRegional resources区域与我的(网络)负载均衡器 (us-west-2) 相同。

这是负载均衡器配置: 在此输入图像描述

注意:我拥有管理员访问权限,因此这不是权限问题,至少对于我的 IAM 用户而言不是

acl amazon-web-services amazon-elb amazon-waf aws-application-load-balancer

1
推荐指数
1
解决办法
461
查看次数

Flask 套接字 - 无效会话 lWmxdNRmai59bRfLAAAA(此错误的进一步出现将使用级别 INFO 进行记录)

我正在尝试通过基本命令在 docker 中使用flask socket.io。

当我运行gunicorn的单个工作人员时,一切工作正常,但是当我增加工作人员时,然后在客户端,它开始给出400错误请求,并且在服务器日志上,我看到无效的会话lWmxdNRmai59bRfLAAAA(此错误的进一步发生将记录为级别信息)

这些是我正在使用的命令 Gunicorn --worker-class geventwebsocket.gunicorn.workers.GeventWebSocketWorker -w 2 application:app -b 0.0.0.0:5000

application.py文件是

from gevent import monkey monkey.patch_all()
from flask import Flask from flask_socketio import SocketIO from flask import session 
app = Flask(__name__) 
app.config.from_object("settings.BaseConfig") 
socket_app = SocketIO(
    app,
    cors_allowed_origins="*",
    message_queue=settings.get_evn("CACHE_QUEUE_URL"),
    async_mode="gevent", 
)
socket_app.init_app(app, cors_allowed_origins="*")
Run Code Online (Sandbox Code Playgroud)

我正在使用 Redis 作为消息队列,并已验证消息队列 url 是否正确

使用aws负载均衡器来处理请求

flask gunicorn amazon-elb gevent-socketio flask-socketio

1
推荐指数
1
解决办法
2951
查看次数

elb上的https不与路由53设置一起工作

我是新来的.我试图在elb的帮助下实现https.我在elb上配置了ssl证书以及端口443上的HTTPS(安全HTTP).我还配置了路由53,如快照所示.我已将elb分配给A-IPv4地址.但它仍然不适用于https,每当我试图点击https://www.mypleaks.com它不起作用,但它的工作http: //www.mypleaks.com,www.mypleaks.com,mypleaks. COM.

在此输入图像描述

请在下面找到elb屏幕截图: -

在此输入图像描述

在此输入图像描述

它显示: - 在此输入图像描述

https amazon-web-services amazon-elb amazon-route53 amazon-elastic-beanstalk

0
推荐指数
1
解决办法
494
查看次数

动态端口和 AWS Applocation 负载均衡器和 ECS

ELB 后面的 Docker 容器获得动态端口,这些端口自动向 ELB 注册,以便它们可以将流量重定向到它们。

为了让 ELB 可以访问您的 Web 服务器,您必须打开所有这些源自您的安全组内的端口 1024 - 65535。

有没有办法不必向一系列端口开放安全组,而只向 ELB 使用的罐开放?

amazon-web-services amazon-ecs amazon-elb aws-security-group

0
推荐指数
1
解决办法
5056
查看次数

AWS Elastic Load Balancer - 实例优先级

我在这里阅读AWS_Blue_Green_Deployments论文,并试图了解下一篇:

在部署时,您只需将绿色组附加到现有负载均衡器,即可将流量引入新环境.对于HTTP/HTTPS侦听器,负载均衡器支持绿色Auto Scaling组,因为它使用最不完整的请求路由算法,如Elastic Load Balancing开发人员指南中所述.

不幸的是-我看不到的解释(或-只是不明白吧)的弹性负载平衡开发者指南 这里.

有人可以解释一下这部分:

负载均衡器有利于绿色Auto Scaling组,因为它使用最不完整的请求路由算法

为什么ELB会支持新附加的ASG用于流量?什么是AWS中的" 最不完善的请求路由算法 "?

amazon-web-services amazon-elb

0
推荐指数
1
解决办法
2023
查看次数

Boto3没有列出我的应用程序负载均衡器

我是boto3的新手,并且正在使用它来自动注册和从负载均衡器注销EC2实例的过程.

这是我的示例Python代码:

import boto3
elbList = boto3.client('elb')
bals = elbList.describe_load_balancers()
for elb in bals['LoadBalancerDescriptions']:
    print 'ELB Name:' + elb['LoadBalancerName'] +  'ELB scheme type: ' + elb['Scheme']
Run Code Online (Sandbox Code Playgroud)

此脚本仅列出我的所有经典负载均衡器,但未列出我的应用程序负载均衡器.

如何列出我的应用程序负载均衡器并列出附加到它的所有实例?

amazon-web-services amazon-elb boto3

0
推荐指数
1
解决办法
1946
查看次数

EC2 上是否需要运行某些内容才能通过运行状况检查?

好吧,这似乎是一个愚蠢的问题,但我不得不说我有点困惑。我不明白为什么我的 ELB(经典)--> EC2 运行状况检查在 AWS 中失败。

因此,按照我配置的方式,我的 ELB 的运行状况检查将尝试 ping 上的实例TCP:8080

我的 ELB 上有 3 个端口侦听器,根据我的理解,这应该不重要,因为它处理源自外部的流量,但我将列出它,以防我忽略某些内容:1.) HTTP:80 --> HTTP:8080 2.) HTTPS:443 --> HTTP:8080 3.)TCP:2222 --> TCP:2222

我还尝试将运行状况检查配置为 pingTCP:2222以防万一,同样的交易。

此外,我的 EC2 还拥有启用 ELB 安全组的安全TCP:8080TCP:2222

它失败的原因是因为虽然 EC2 实例允许流量,但它仍然需要在该端口上运行某些东西来为流量提供服务?

目前,所有 EC2 都是 AWS 提供的简单 Linux AMI。

请原谅我对网络空间有点陌生。

amazon-ec2 amazon-web-services amazon-elb

0
推荐指数
1
解决办法
352
查看次数

如何对AWS私有子网EC2实例进行负载平衡

如果我创建 ELB 并尝试附加私有子网实例,我的运行状况检查会失败:OutOfService。

问题 1:我可以获得内部/私有 IP(不是 IP,而是 dns 名称)用于负载平衡。即无法访问互联网?

问题 2:如果我的应用程序负载均衡器有一个公共 dnsname。如何附加私有子网中没有弹性 IP 的 EC2 实例(无法访问 Internet)。我正在寻找最好的方法。我们是否应该——

ELB --> 公有子网 EC2 实例(代理配置- */* [private_ip]:[port]/* ) ---> 来自私有子网/EC2 实例的服务,并在此处进行运行状况检查。

reverse-proxy amazon-ec2 amazon-web-services amazon-elb

0
推荐指数
1
解决办法
5007
查看次数

Laravel 应用程序会话在 AWS ELB 上过期

我有一个 Laravel 应用程序部署在带有经典负载均衡器的 AWS Elastic Beanstalk 上。不知何故,用户会话在不规则的时间到期。有时它在登录后立即过期,大多数情况下在登录后几分钟。在某些情况下,它需要几个小时才能过期。但在本地主机上,这不会发生。

我已将 Laravel 应用程序中的会话持续时间配置为 10 小时,这在本地主机上运行良好,但不知何故在 AWS ELB 上不起作用。

我怀疑 AWS 在一天内多次重置应用程序会话。如果是这种情况,我该如何克服?如果不是这种情况,那么可能是什么原因造成的?

session amazon-ec2 amazon-web-services amazon-elb laravel

0
推荐指数
1
解决办法
1303
查看次数

Rails 生产无法在 AWS 负载均衡器中运行

我的 Rails 6 应用程序可以在 EC2 实例中的开发模式下正常工作。但是当配置使用生产模式时。负载均衡器无法进行运行状况检查,也无法运行应用程序。

我的健康检查:

在此输入图像描述

安全性:负载均衡器

在此输入图像描述

在此输入图像描述

安全性:Rails 应用程序

在此输入图像描述

在此输入图像描述

负载均衡器正在开发中

在此输入图像描述

这里是与负载均衡器一起使用的开发

启动导轨:

rails s -p 3000 -b 0.0.0.0
Run Code Online (Sandbox Code Playgroud)

然后回应

=> Booting Puma
=> Rails 6.0.3.2 application starting in development 
=> Run `rails server --help` for more startup options
Puma starting in single mode...
* Version 4.3.5 (ruby 2.6.3-p62), codename: Mysterious Traveller
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Run Code Online (Sandbox Code Playgroud)

配置/环境/development.rb

Rails.application.configure do
  config.hosts << "xxxxxxxx.us-east-2.elb.amazonaws.com" #This is public dns of load balance
  config.cache_classes …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails amazon-elb

0
推荐指数
1
解决办法
1933
查看次数

AWS Cloudformation - 如何将 vpc 链接/NLB 附加到 api 网关中的方法?

这对后端来说是一件非常痛苦的事情,浪费了好几个小时,而且仍然无法弄清楚 AWS CloudFormation 的一行语法。

如果 AWS 的人员可以更好地编写他们的文档 - 只需多花一点时间 - 这对开发人员来说会更容易。

我正在尝试使用 CloudFormation 来部署具有 VPC Link 和 NLB 的 API Gateway。目标是将所有请求代理传递到 NLB:

  ApiProxyMethod: 
    Type: AWS::ApiGateway::Method
    Properties: 
      RestApiId: !Ref ApiGatewayRestApi
      ResourceId: !Ref ApiProxyResource
      # AuthorizationScopes: # https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationscopes
      AuthorizationType: COGNITO_USER_POOLS
      AuthorizerId: !Ref ApiAuthorizer
      HttpMethod: ANY
      OperationName: "ProxyAllRequests"
      Integration: 
        ConnectionType: VPC_LINK
        ConnectionId: !Ref ApiGatewayVpcLink
        IntegrationHttpMethod: ANY
        PassthroughBehavior: String
        Type: "VPC_LINK" # Member must satisfy enum value set: [HTTP, AWS_PROXY, HTTP_PROXY, AWS] 
        Uri: "http://NLB-myapp-internal-beta-12345.elb.ap-northeast-1.amazonaws.com/{proxy}"
Run Code Online (Sandbox Code Playgroud)

然而,这失败了,它抱怨错误的Type值:Member must satisfy enum value set: [HTTP, …

amazon-web-services amazon-elb aws-cloudformation amazon-vpc aws-api-gateway

0
推荐指数
1
解决办法
813
查看次数

如何查询AWS以使用python boto3模块获取ELB名称和附加实例?

我找不到boto3的代码.我可以单独获取elb名称和InstanceID,但无法将它们链接在一起以查找ELB名称的附加实例.

amazon-web-services amazon-elb boto3

-1
推荐指数
1
解决办法
8317
查看次数