标签: aws-application-load-balancer

如何在 Istio 中设置 AWS ALB 而不是 ELB?

我正在尝试在 Kubernetes AWS 中设置 ALB 负载均衡器而不是默认的 ELB 负载均衡器。负载均衡器必须连接到 istio ingressgateway。我寻找了解决方案,但只找到了一个。但是提到的istio版本是V1,现在istio的变化太多了。我尝试将图表中的服务类型更改为nodeport(根据博客)但该服务仍然作为负载均衡器出现。

有人可以提到如何为 istio ingressgateway 配置 ALB 的步骤吗?

谢谢阅读

kubernetes devops istio kubernetes-ingress aws-application-load-balancer

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

Terraform、AWS 和导入现有 SSL 证书

我正在从事一个项目,但我遇到了无法成功之路的情况。

事实上,我正在通过管道运行 terraform 代码,该代码依赖于通过 AWS Web 控制台添加的一堆证书,因此我拥有证书、私钥和证书链文件。

(我删除它们并尝试通过terraform导入)

谷歌搜索一下我得到了这些:

resource "aws_acm_certificate" "tch-cert" {
  private_key=file("private.key")
  certificate_body = file("actual_cert.cer")
  certificate_chain=file("inter.cer")
  }
Run Code Online (Sandbox Code Playgroud)

使用 terraform 上传 ssl 证书

我添加了代码,提交它并在 terraform plan 命令中收到如下错误

“解析错误... 2:15 未知令牌:IDENT 文件” “解析错误...2:17 未知令牌:IDENT 文件”

任何应该如何完成这些工作的建议或示例将非常感激。我也阅读了 terraform 文档,但它对我不起作用。

https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/acm_certificate

ssl terraform aws-certificate-manager terraform-provider-aws aws-application-load-balancer

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

使用 AWS Loadbalancer 进行 HTTPS 和 SSH

我计划在 AWS 上托管一个 GitLab 实例。我唯一的问题是前端负载平衡器。

对于 git 工作,我们需要 HTTPS 和 SSH,两者都使用相同的主机名。

  • 应用程序负载均衡器 (ALB) 支持使用 ACM 证书(我们需要)的 HTTPS 终止,但不支持 SSH 的 TCP 转发。
  • 网络负载均衡器 (NLB) 支持 TCP 转发,但对于 HTTPS 来说不是一个好的选择。
  • 可以选择使用 Classic Load Balancer,因为它支持 HTTP、HTTPS 和 TCP 侦听器,但我真的应该在 2021 年使用它吗?而且它也不支持 HTTP/2(如果有的话那就太好了)

我还考虑过在 NLB 后面级联一个 ALB:网络负载均衡器侦听 TCP 22、80 和 443,将 22 转发到 GitLab,将另外两个转发到执行 HTTPS 终止(以及 HTTP 到 HTTPS 重定向)的 ALB。需要使用 Lambda 进行复杂的设置来更新 NLB 目标组中的 ALB IP,如下所述:https: //aws.amazon.com/blogs/networking-and-content-delivery/using-static-ip-addresses-适用于应用程序负载均衡器/

有一个优雅的解决方案还是我必须使用经典负载均衡器?

amazon-web-services amazon-elb gitlab aws-application-load-balancer

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

调用 webhook“vingress.elbv2.k8s.aws”失败

我在新的 EKS 集群(版本 v1.21.5-eks-bc4871b)​​上安装了 aws-load-balancer-controller。

我按照本指南安装了https://kubernetes-sigs.github.io/aws-load-balancer-controller/v2.3/deploy/installation/一步一步,但是当我尝试部署入口对象时,我得到了我在标题中提到的错误。我尝试做像这里这样的 github issues 问题https://github.com/kubernetes-sigs/aws-load-balancer-controller/issues/2039但没有找到任何答案。

我还能做什么来检查这个?

amazon-web-services kubernetes kubernetes-ingress amazon-eks aws-application-load-balancer

7
推荐指数
2
解决办法
2万
查看次数

配置 ECS 在不使用时缩放为零

我正在使用 Fargate 在 AWS ECS 中运行 Superset。Superset 的此实例仅供内部使用。我希望能够将 ECS 配置为在不使用时将任务扩展到零。我知道恢复需要时间(可能是几分钟),该应用程序的最终用户只需等待几分钟即可。

情况:

  • 使用 Fargate 部署的 AWS ECS
  • 自动缩放设置为最大值 2 和最小值 0
  • 希望在不使用时(例如一小时后)缩放到 0

amazon-ecs aws-fargate aws-application-load-balancer

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

将 AWS Application Load Balancer 的可见性更改为内部负载均衡器

我创建了一个 Application Load Balancer 并将其设置为公共。我已经分叉了某些东西,并希望将其转换为内部负载均衡器,以便它仅暴露给 VPC 资源。但是,当我将可见性选项从“公共”更改为“内部”时,出现此错误 -

Updating Load Balancer listener named: 
arn:aws:elasticloadbalancing:ap-south-1:xxxxxxxxx:listener/app/awseb-AWSEB-xxxxxxxxxxxxxx/xxxxxxxxxxxxxx/xxxxxxxxxxxxxx failed Reason: 
The following target groups cannot be associated with more than one load balancer:
 arn:aws:elasticloadbalancing:ap-south-1:xxxxxxxxxxxxxx:targetgroup/awseb-AWSEB-xxxxxxxxxxxxxx/xxxxxxxxxxxxxx 
(Service: AmazonElasticLoadBalancingV2; Status Code: 400; Error Code: TargetGroupAssociationLimit)
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-elastic-beanstalk aws-application-load-balancer

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

运行状况检查失败,代码如下:[502]

我想提一下,我不是一个经验丰富的技术人员,但我一直在尝试通过在线课程学习 AWS,但我陷入了一个特定的点:

我创建了两个目标组,每个目标组由两个 EC2 Linux 实例组成,并创建了一些简单的代码作为每个实例的用户数据的一部分。

#/bin/bash
yum update -y
yum install httpd -y
systemctl start httpd
systemctl enable httpd
cd /var/www/html
echo "This is an INSTANCE" > index.html
Run Code Online (Sandbox Code Playgroud)

然后,我创建了一个带有 HTTP 侦听器(端口 80)的应用程序负载均衡器。ALB 已与使用绝对具有公共访问权限的安全组的子网关联(我已将相同的安全组用于具有公共访问权限的其他练习)

但每次,两个目标组都会显示“运行状况检查因这些代码失败:[502]”的描述
。我已经尝试了我能想到的一切,甚至尝试做一些研究,但无法弄清楚。

在有人生气之前,我以前没有使用过堆栈溢出,所以如果这是一个重复的线程,我很抱歉,但在我看到的其他线程中,还有其他更复杂的情况。

有人有什么想法吗?

amazon-ec2 amazon-web-services aws-application-load-balancer

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

将 AWS ALB 流量从一个账户发送到另一个账户

我正在尝试在 AWS 上建立一个多账户组织,其中根账户充当登陆区域,其他账户则在我们的部署环境(暂存/生产)之间分配。

我面临的挑战之一是我们在根帐户中注册了 SSL,为了简单起见,我想将其保留在那里。因此,我的根帐户中有一个 ALB,它具有注册的 ACM 证书。从这里开始,我的目标是通过共享 VPC 将所有流量转发到两个子账户之一,其中有另一个 ALB,其目标组中有 ECS 集群。

这是架构图。我面临的问题是,没有明显的方法将根帐户 ALB 连接到暂存帐户 ALB,因为它们公开了内部 DNS 条目,而不是我可以从根 ALB 定位的私有 IPv4。

有没有另一种方法可以实现这一目标,我是否可能使事情变得过于复杂?

AWS 拱门。 图表

infrastructure amazon-web-services amazon-vpc aws-application-load-balancer

6
推荐指数
0
解决办法
7680
查看次数

应用程序负载均衡器会话 cookie 的过期时间非常高

这听起来像是一个非常微不足道的疑问,但我在这里需要一些帮助。

我已经使用 OIDC 身份验证设置了应用程序负载平衡器。登录我的应用程序后,我使用 chrome 开发人员工具查看了客户端应用程序 cookie。发现 AWSELBAuthSessionCookie-0 和 AWSELBAuthSessionCookie-1 的到期时间为 2070-10-04T05:02:12.122Z,距现在将近 50 年。由于 ALB 没有将此 cookie 转发到我位于 ALB 后面的应用程序 (EC2),因此我无法重置 cookie 的过期时间。我正在使用 Flask 读取标题。任何减少 AWSELBAuthSessionCookie 到期时间的线索都会有所帮助。

cookies amazon-web-services session-cookies flask aws-application-load-balancer

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

Windows 身份验证在 AWS Application Load Balancer 后面不起作用

我有一个使用 Windows 身份验证的 ASP .NET WCF 服务 Web。将 Web 服务部署到服务器 (Windows Server 2012) 并在 IIS 上启用 Windows 身份验证后,我使用 localhost 直接访问服务器的页面。它提示输入凭据,我提供一次 AD 用户名/密码,它就可以工作。

现在,如果我在 AWS 应用程序负载均衡器后面有相同的服务器,并且我访问了映射到应用程序负载均衡器的 Web 服务的 DNS,那么就会注意到这里存在问题。

将弹出用于输入 Windows 凭据的窗口。但是当我输入正确的凭据时,它不会接受它们。反复提示输入用户名/密码?发生了什么?ALB 不支持 IIS 的 AD 集成身份验证?

有任何想法吗?

windows-authentication amazon-web-services iis-7.5 aws-alb aws-application-load-balancer

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