本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
为 Amazon SNS 创建 Amazon VPC 终端节点
要将消息从 Amazon VPC 发布到您的 Amazon SNS 主题,请创建一个接口 VPC 终端节点。然后,您可以将消息发布到主题,同时保留您利用该 VPC 管理的网络内的流量。
使用以下信息创建终端节点并测试 VPC 与 Amazon SNS 之间的连接。或者,有关可帮助您从头开始的演练,请参阅从 Amazon VPC 发布 Amazon SNS 消息。
创建终端节点
您可以使用 Amazon Web Services Management Console、、、软件开发工具包、亚马逊 SNS API 或在您的 VPC 中创建亚马逊 Amazon SNS 终端节点。 Amazon CLI Amazon CloudFormation
有关使用 Amazon VPC 控制台或 Amazon CLI创建和配置端点的信息,请参阅 Amazon VPC 用户指南中的创建接口端点。
重要
您只能将 Amazon Virtual Private Cloud 与 HTTPS Amazon SNS 端点一起使用。
在创建终端节点时,请将 Amazon SNS 指定为您希望 VPC 连接到的服务。在 Amazon VPC 控制台中,服务名称因区域而异。例如,如果您选择美国东部(弗吉尼亚北部),则服务名称为 com.amazonaws.us-east-1.sns。
当您将 Amazon SNS 配置为从 Amazon VPC 发送消息时,必须启用私有 DNS 并按格式 sns.
指定端点。us-east-2
.amazonaws.com
私有 DNS 不支持传统端点,例如 queue.amazonaws.com
或
。us-east-2
.queue.amazonaws.com
有关使用创建和配置终端节点的信息 Amazon CloudFormation,请参阅《Amazon CloudFormation 用户指南》中的AWS::EC2::VPCEndpoint
资源。
测试您的 VPC 和 Amazon SNS 之间的连接
在为 Amazon SNS 创建终端节点后,您可以将消息从您的 VPC 发布到 Amazon SNS 主题。要测试此连接,请执行以下操作:
-
连接到驻留在您的 VPC 中的亚马逊 EC2 实例。有关连接的信息,请参阅亚马逊 EC2 文档中的连接到您的 Linux 实例或连接到您的 Windows 实例。
例如,要使用 SSH 客户端连接到 Linux 实例,请从终端运行以下命令:
$
ssh -iec2-key-pair.pem
ec2-user@instance-hostname
其中:
-
ec2-key-pair.pem 是包含您在创建实例时亚马逊 EC2 提供的密钥对的文件。
-
instance-hostname 是实例的公有主机名。要在 Amazon EC2 控制台中获取主机名,请执行以下操作
:选择实例,选择您的实例,然后找到公有 DNS 的值 (IPv4)。
-
-
在您的实例中,将 Amazon SNS
publish
命令与 Amazon CLI结合使用。您可以使用以下命令将简单的消息发送到主题:$
aws sns publish --regionaws-region
--topic-arnsns-topic-arn
--message "Hello"其中:
-
aw s-region 是 Amazon 该主题所在的区域。
-
sns-topic-arn是该主题的亚马逊资源名称 (ARN)。从 Amazon SNS 控制台
获取该 ARN:选择 Topics(主题),查找您的主题,然后找到 ARN 列中对应的值。
如果 Amazon SNS 已成功收到消息,终端会打印一个消息 ID,如下所示:
{ "MessageId": "6c96dfff-0fdf-5b37-88d7-8cba910a8b64" }
-