场景描述

在现有架构下,Region1 中的服务通过公网跨区域访问位于 Region2 的 SQS,将产生 NAT 网关费用及跨区域出网费用,整体成本较高。若通过建立 VPC 对等连接并在 Region2 创建 SQS 接口终端节点,则访问路径可转为内网通信,从而显著降低跨区域访问费用。

以访问总流量 100GB 为例:

  • 公网方式(NAT 网关 + 跨区域出网)总费用约为:$8.5
  • VPC 对等连接方式总费用约为:$2

通过对比可见,使用 VPC 对等连接与终端节点的成本约为公网访问方式的 1/4,在大流量场景下具有明显的成本优势,同时还具备更高的安全性与链路稳定性。

方案概述:

满足用户需求,我们将执行以下步骤:

  1. 配置VPC,将两个不同区域的网络互通
  2. 配置两个区域的路由表
  3. 创建终端节点
  4. 测试通过终端节点访问测试

操作流程

环境信息

俄亥俄州

vpc
SQS

弗吉尼亚

vpc
ec2

创建VPC对等连接

创建对等连接

俄亥俄州
弗吉尼亚

修改路由表

俄亥俄州

弗吉尼亚

创建终端网关--俄亥俄州

配置安全组允许目标对等连接访问–俄亥俄州

测试使用弗吉尼亚ec2访问俄亥俄州SQS终端网络

测试是否可以进行公网访问

测试访问俄亥俄州SQS终端节点

测试消息发送

下载消息发送模板至你的window服务器用于上传至cloudformation
https://github.com/aws-samples/amazon-sqs-samples/blob/master/templates/SQS-VPCE-Tutorial-CloudFormation.yaml
配置cloudformation–俄亥俄州

创建测试数据

aws sqs send-message --region us-east-2 --endpoint-url https://vpce-01ff6a9c618ae0acb-tmpedcsw.sqs.us-east-2.vpce.amazonaws.com --queue-url https://sqs.us-east-2.amazonaws.com/893420598334/zyt-test-sqs --message-body "Hello  Amazon SQS."

接口调用地址参考

AWS Java SDK调用

https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/client/builder/AwsClientBuilder.html

官网调用方式

https://docs.aws.amazon.com/zh_cn/AWSSimpleQueueService/latest/SQSDeveloperGuide/example_sqs_Hello_section.html

总结

通过实施 VPC 对等连接并在 Region2 创建终端节点,用户能够有效优化跨区域流量,降低 SQS 访问的费用,同时确保系统的高效稳定运行。这一方案将显著提升网络架构的成本效益和资源利用率。