Amazon Simple Notification Service
开发人员指南 (API 版本 2010-03-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

为 Amazon SNS 创建 Amazon VPC 终端节点

要将消息从 Amazon VPC 发布到您的 Amazon SNS 主题,请创建一个接口 VPC 终端节点。然后,您可以将消息发布到主题,同时保留您利用该 VPC 管理的网络内的流量。

使用以下信息创建终端节点并测试 VPC 与 Amazon SNS 之间的连接。或者,有关可帮助您从头开始的演练,请参阅教程:从 Amazon VPC 私下发布 Amazon SNS 消息

创建终端节点

要在您的 VPC 中创建 Amazon SNS 终端节点,请参阅创建接口终端节点 (位于 Amazon VPC 用户指南 中)。Amazon VPC 文档可帮助您通过使用 Amazon VPC 控制台或 AWS CLI 来创建和配置终端节点。

在创建终端节点时,请将 Amazon SNS 指定为您希望您的 VPC 连接到的服务。在 Amazon VPC 控制台中,服务名称因所选区域而异。例如,如果您选择了 美国东部(弗吉尼亚北部),则服务名称为 com.amazonaws.us-east-1.sns

测试您的 VPC 和 Amazon SNS 之间的连接

在为 Amazon SNS 创建终端节点后,您可以将消息从您的 VPC 发布到 Amazon SNS 主题。要测试此连接,请执行以下操作:

  1. 连接到位于您的 VPC 中的 Amazon EC2 instance 实例。有关连接的信息,请参阅 Amazon EC2 文档中的连接到您的 Linux 实例连接到您的 Windows 实例

    例如,要使用 SSH 客户端连接到 Linux 实例,请从终端运行以下命令:

    $ ssh -i ec2-key-pair.pem ec2-user@instance-hostname

    其中:

    • ec2-key-pair.pem 是包含 Amazon EC2 在您创建实例时提供的密钥对的文件。

    • instance-hostname 是实例的公有主机名。要在 Amazon EC2 控制台中获取该主机名:请选择 Instances (实例),选择您的实例,然后找到 Public DNS (IPv4) (公有 DNS (IPv4)) 的值。

  2. 在您的实例中,将 Amazon SNS publish 命令与 AWS CLI 结合使用。您可以使用以下命令将简单的消息发送到主题:

    $ aws sns publish --region aws-region --topic-arn sns-topic-arn --message "Hello"

    其中:

    • aws-region 是主题所在的 AWS 区域。

    • sns-topic-arn 是主题的 Amazon 资源名称 (ARN)。要从 Amazon SNS 控制台获取该 ARN:选择 Topics (主题),查找您的主题,然后找到 ARN 列中对应的值。

    如果 Amazon SNS 成功接收了消息,终端会打印一个消息 ID,如下所示:

    { "MessageId": "6c96dfff-0fdf-5b37-88d7-8cba910a8b64" }