写点什么

通过 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:00693

评论

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

九章云极DataCanvas公司获评36氪「最受投资人关注的硬核科技企业」

九章云极DataCanvas

人工智能 投资人 36氪 九章云极DataCanvas 硬科技

Linux的小知识-curl命令

技术小生

Linux curl 7月月更

客户案例|华律网,通过观测云大幅缩短故障定位时间

观测云

tauri+vue开发跨操作系统的桌面应用

字母哥哥

rust Vue tauri

kafka批量发送数据源码解析

字母哥哥

kafka 消息队列 源码解读

C++中的STL库函数之万能图——map

KEY.L

7月月更

浅尝不辄止系列之试试腾讯云的TUIRoom(上)

为自己带盐

7月月更 TUIRoom

小程序多种开发方式对比-跨端?低代码?原生?还是云开发?

字母哥哥

小程序

第四期SFO销毁,Starfish OS如何对SFO价值赋能?

BlockChain先知

让这个 CRMEB 单商户微信商城系统火起来,太好用了!

CRMEB

【刷题记录】3. 无重复字符的最长子串

WangNing

7月月更

Http响应头处理

急需上岸的小谢

7月月更

AIRIOT助力城市管廊工程,智慧物联守护城市生命线

AIRIOT

低代码 物联网 低代码,项目开发

Java 9 缩小字符串( Compact String)

HoneyMoose

聊聊 Dart 的空安全 (null safety) 特性

岛上码农

flutter ios 安卓 跨平台开发 7月月更

每日一题——PAT乙级1002题

武师叔

7月月更

Meta Force原力元宇宙系统开发佛萨奇模式

薇電13242772558

智能合约

LinkedBlockingQueue源码分析-新增和删除

zarmnosaj

7月月更

Java多线程案例之任务定时执行器

未见花闻

7月月更

九章云极DataCanvas公司摘获「第五届数字金融创新大赛」最高荣誉!

九章云极DataCanvas

创新 数字金融 九章云极DataCanvas

应用实践 | 数仓体系效率全面提升!同程数科基于 Apache Doris 的数据仓库建设

SelectDB

数据库 数据仓库 架构演进 Doris

消息队列与快递柜之间妙不可言的关系

字母哥哥

消息队列

docker镜像分层原理及容器写时复制

字母哥哥

Docker 镜像

java Reactive Streams响应式流式编程

字母哥哥

Java 响应式编程

2022如何评估与选择低代码开发平台?

优秀

低代码 低代码平台

使用高斯Redis实现二级索引

华为云开发者联盟

数据库 后端

开源重器!九章云极DataCanvas公司YLearn因果学习开源项目即将发布!

九章云极DataCanvas

人工智能 开源项目 #Github 因果学习 #工具包

Java 代码中数字中间带下划线是几个意思

HoneyMoose

Java 6 压缩字符串(Compressed String)

HoneyMoose

大话云原生之灰度发布篇-从步行到坐缆车的自动化服务升级

字母哥哥

灰度发布 #Kubernetes#

redis你到底懂不懂之list

zxhtom

7月月更

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