Virtual private cloud (VPC) 目的地 - AWS IoT Core

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Virtual private cloud (VPC) 目的地

Apache Kafka 規則動作將資料路由至 Amazon Virtual Private Cloud (Amazon VPC) 中的 Apache Kafka 叢集。在為規則動作指定 VPC 目的地時,系統會自動啟用 Apache Kafka 規則動作所使用的 VPC 組態。

VPC 目的地包含一份 VPC 內的子網路清單。規則引擎會在您於此清單中指定的每個子網路中建立彈性網路介面。如需有關網路介面的詳細資訊,請參閱《Amazon EC2 使用者指南》中的彈性網路介面

需求和考量事項

  • 如果您使用的是將由公有端點透過網際網路存取的自我管理 Apache Kafka 叢集:

    • 為子網路中的執行個體建立 NAT 閘道。NAT 閘道具有可連接到網際網路的公有 IP 地址,允許規則引擎將您的訊息轉發到公有 Kafka 叢集。

    • 透過 VPC 目的地建立的彈性網絡介面 (ENI) 分配彈性 IP 地址。您使用的安全群組必須配置為封鎖傳入流量。

      注意

      如果 VPC 目的地停用後重新啟用,必須將彈性 IP 與新的 ENI 重新關聯。

  • 若 VPC 主題規則目的地連續 30 天未收到任何流量,該目的地將遭到停用。

  • 如果 VPC 目的地使用的任何資源發生變更,則目的地會遭到停用且無法使用。

  • 可停用 VPC 目的地的一些變更包括:刪除 VPC、子網路、安全群組或使用的角色;修改角色,使其不再具有必要許可;以及停用目的地。

定價

基於定價目的,除了資源位於您 VPC 中時將訊息傳送至資源之外,還會計量 VPC 規則動作。如需定價資訊,請參閱 AWS IoT Core 定價

建立 Virtual Private Cloud (VPC) 主題規則目的地

您可以使用 CreateTopicRuleDestinationAPI 或 AWS IoT Core 主控台建立虛擬私有雲 (VPC) 目的地。

建立 VPC 目的地時,請務必指定下列資訊:

vpcId

VPC 目的地的唯一 ID。

subnetIds

規則引擎在其中建立彈性網路介面的子網路清單。規則引擎會為清單中的每個子網路配置一個單一網路介面。

securityGroups (選用)

套用至網路介面的安全性群組清單。

roleArn

有權代您建立網路介面的角色的 Amazon 資源名稱 (ARN)

此 ARN 應連接至一個看似於下列範例的政策。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DeleteNetworkInterface", "ec2:DescribeSubnets", "ec2:DescribeVpcAttribute", "ec2:DescribeSecurityGroups" ], "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:CreateNetworkInterfacePermission", "Resource": "*", "Condition": { "StringEquals": { "ec2:ResourceTag/VPCDestinationENI": "true" } } }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateNetworkInterface", "aws:RequestTag/VPCDestinationENI": "true" } } } ] }

使用建立 VPC 目的地 AWS CLI

下列範例會顯示如何使用 AWS CLI建立 VPC 目的地。

aws --region regions iot create-topic-rule-destination --destination-configuration 'vpcConfiguration={subnetIds=["subnet-123456789101230456"],securityGroups=[],vpcId="vpc-123456789101230456",roleArn="arn:aws:iam::123456789012:role/role-name"}'

執行此命令後,VPC 目的地狀態為 IN_PROGRESS。幾分鐘後,其狀態會變更為 ERROR (若命令不成功) 或 ENABLED。目的地狀態為 ENABLED 時,即可使用。

您可使用下列命令來取得 VPC 目的地的狀態。

aws --region region iot get-topic-rule-destination --arn "VPCDestinationARN"

使用主控台建立 VPC 目的 AWS IoT Core 地

下列步驟說明如何使用 AWS IoT Core 主控台建立 VPC 目的地。

  1. 導覽至主 AWS IoT Core 控台。在左窗格的動作索引標籤上,選擇目的地

  2. 請輸入下列欄位的值。

    • VPC ID

    • 子網路 ID

    • 安全群組

  3. 選取具有建立網路介面所需許可的角色。上述範例政策包含這些許可。

VPC 目的地狀態為 ENABLED 時,即可使用。