写点什么

通过 IP 地址在 AWS 和本地资源间实现应用程序负载均衡

  • 2019-11-11
  • 本文字数:1448 字

    阅读完需:约 5 分钟

通过 IP 地址在 AWS 和本地资源间实现应用程序负载均衡

去年,我介绍了有关新型 AWS 应用程序负载均衡器的信息,并展示了如何针对 EC2 实例以及在容器中运行的微服务,用它进行第 7 层 (应用程序) 路由。


在向 AWS 迁移的这个漫长过程中,有些客户会构建混合应用程序。这些客户告诉我们,他们希望使用单个应用程序负载均衡器,在现有本地资源以及 AWS 云中运行的新资源组合中分配流量。其他客户则希望将流量分配到分散在两个或多个 Virtual Private Cloud (VPC) 中的 Web 或数据库服务器中,在同一实例上托管 IP 地址不同但端口号相同的多项服务,并为不支持服务器名称指示 (SNI) 的客户端提供基于 IP 的虚拟托管支持。还有一些客户则希望在同一实例上 (或许是在容器内) 托管某项服务的多个实例,同时使用多个界面和安全组来实施精细访问控制。


这些情况会出现在各种混合、迁移、灾难恢复和本地使用情形及场景中。


路由到 IP 地址


应用程序负载均衡器现在可以将流量直接路由到 IP 地址,以满足这些使用情形。这些地址可以与 ALB 位于同一 VPC 中、位于同一区域中的对等 VPC 中、位于与 VPC 连接的 EC2 实例上 (通过 ClassicLink),或者位于 VPN 连接或 AWS Direct Connect 连接另一端的本地资源上。


应用程序负载均衡器已将目标分成了目标组。在今天发布的版本中,每个目标组现在都有一个目标类型属性:



instance – 和以前一样,目标通过 EC2 实例 ID 进行注册。


ip – 将目标注册为 IP 地址。您可以对负载均衡器 VPC 内的目标使用来自负载均衡器 VPC CIDR 的任何 IPv4 地址,对负载均衡器 VPC 之外的目标 (包括对等 VPC、EC2-Classic,和可通过 Direct Connect 或 VPN 访问的本地目标) 使用 RFC 1918 范围 (10.0.0.0/8、172.16.0.0/12 和 192.168.0.0/16) 或 RFC 6598 范围 (100.64.0.0/10) 内的任何 IPv4 地址。


每个目标组都有负载均衡器和运行状况检查配置,并一如既往地将指标发布到 CloudWatch。


假设您正处于将应用程序迁移到 AWS 的过渡阶段,或者希望使用 AWS 通过 EC2 实例来扩充本地资源,并需要将应用程序流量分配到 AWS 和本地资源中,则可以将所有资源 (AWS 和本地) 注册到同一个目标组并将该目标组与负载均衡器相关联。或者,您也可以使用两个负载均衡器在 AWS 和本地资源中实现基于 DNS 的加权负载均衡,即一个负载均衡器用于 AWS,另一个负载均衡器用于本地资源。如果应用程序 A 的后端位于 VPC 中,而应用程序 B 的后端位于本地,在这种情况下您就可以将每个应用程序的后端放在不同的目标组中,并使用基于内容的路由将流量路由到每个目标组。


创建目标组


接下来,我将介绍如何在创建应用程序负载均衡器的过程中创建目标组,从而将流量发送到一些 IP 地址。输入一个名称 (ip-target-1),并将 ip 选为目标类型:



然后输入 IP 地址目标。此类地址可以来自托管负载均衡器的 VPC:



也可以是上述某个私有范围 (适用于位于托管负载均衡器的 VPC 之外的目标) 内的其他私有 IP 地址:



检查设置并创建负载均衡器之后,只要指定的 IP 地址通过运行状况检查,系统便会向其发送流量。每个负载均衡器最多可以包含 1000 个目标。


我可以随时检查目标组并编辑目标集:



如您所见,在我抓取这个屏幕截图时其中一个目标的运行状况不佳 (这是故意设计的)。每个目标组的指标都会发布到 CloudWatch;我可以在控制台中查看这些指标,还可以创建 CloudWatch 警报:



现已推出


此功能现已在所有 AWS 区域推出,您可以立即开始使用。


本文转载自 AWS 技术博客。


原文链接:


https://amazonaws-china.com/cn/blogs/china/new-application-load-balancing-via-ip-address-to-aws-on-premises-resources/


2019-11-11 08:00713

评论

发布
暂无评论
发现更多内容

为什么花大本钱培训后,研发团队的表现还是很差?

高山

培训 CMMI 培训效果

如何备份 WordPress 数据库

海拥(haiyong.site)

WordPress 5月月更

Spring Boot MyBatis配置Druid多数据源

爱好编程进阶

Java 程序员 后端开发

【深度】阿里巴巴万级规模 K8s 集群全局高可用体系之美

爱好编程进阶

程序员 后端开发

CDH5部署三部曲之二:部署和设置

爱好编程进阶

Java 程序员 后端开发

Java市场饱和了?为什么都这么说?

爱好编程进阶

Java 程序员 后端开发

SpringMVC快速入门(3)默认组件加载

爱好编程进阶

Java 程序员 后端开发

“三高”程序员谈:Mysql的“三高”集群架

爱好编程进阶

程序员 后端开发

【并发编程】

爱好编程进阶

Java 程序员 后端开发

Java stream流用法总结

爱好编程进阶

Java 程序员 后端开发

Java String类型和BigDecimal类型之间的转化及BigDecimal类型的介绍

爱好编程进阶

Java 程序员 后端开发

JAVA生成二维码图片和解析二维码图片内容代码实例

爱好编程进阶

Java 程序员 后端开发

AuthTalk | 全面拆解多租户解决方案

Authing

SaaS 多租户 Idaas

《英雄联盟》首部成人动画全球爆火

爱好编程进阶

程序员 后端开发

反向代理 413 Request Entity Too Large 问题

HoneyMoose

【刷题第八天】11. 盛最多水的容器

白日梦

5月月更

CRMEB 知识付费模版消息修改教程

CRMEB

基于SVN的CICD调研方案 _

ZuccRoger

5月月更

Java对内存空间的分配与回收机制

爱好编程进阶

Java 程序员 后端开发

数据库连接池 -Druid 源码学习(四)

wjchenge

Druid 数据库连接池

Docker下的OpenResty三部曲之三:OpenResty加Tomcat的服务

程序员欣宸

Kubernetes openresty 5月月更

在Flutter中使用WillPopScope

坚果

5月月更

JSP标签

爱好编程进阶

Java 程序员 后端开发

【SpringBoot】6、自动配置原理【狂神篇

爱好编程进阶

Java 程序员 后端开发

【C 语言】指针 Two 之[定义指针变量、有效声明指针、使用指针、指针变量初始化]

謓泽

5月月更

2021-12-15【Codeforces Round #760 (Div

爱好编程进阶

Java 程序员 后端开发

一个${}引发的惨案

爱好编程进阶

Java 程序员 后端开发

FLV封装格式

Loken

音视频 5月月更

网站开发进阶(六十三)详解CSS3中的calc()

No Silver Bullet

css3 5月月更 calc()

Graylog 中文手册 常用功能和问题整理

爱好编程进阶

Java 程序员 后端开发

Tomcat与JDK版本对应关系,Tomcat各版本特性

爱好编程进阶

Java 程序员 后端开发

通过 IP 地址在 AWS 和本地资源间实现应用程序负载均衡_语言 & 开发_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章