AWS IoT Greengrass 和介面 VPC 端點 (AWS PrivateLink) - AWS IoT Greengrass

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

AWS IoT Greengrass 和介面 VPC 端點 (AWS PrivateLink)

您可以建立介面 VPC 端點,在 VPC 和AWS IoT Greengrass控制平之間建立私有連線。您可以使用此端點來管理AWS IoT Greengrass服務中的元件、部署和核心裝置。介面端點採用這項技術 AWS PrivateLink,可讓您在沒有網際網路閘道、NAT 裝置、VPN 連線或AWS直 Connect 連線的情況下私密存取 AWS IoT Greengrass API。VPC 中的執行個體不需要公有 IP 地址,即能與 AWS IoT Greengrass API 通訊。​ 您的 VPC 與 AWS IoT Greengrass 之間的網路流量都會在 Amazon 網路的範圍內。

每個介面端點都是由您子網路中的一或多個彈性網路介面表示。

如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的介面 VPC 端點 (AWS PrivateLink)

AWS IoT Greengrass VPC 端點的考量事項

在為其設定介面 VPC 端點之前AWS IoT Greengrass,請先參閱 Amazon VPC 使用者指南中的界面端點屬性和限制。此外,請注意下列考量事項:

建立用於AWS IoT Greengrass控制平面作業的介面 VPC 端點

您可以使用 Amazon VPC 主AWS IoT Greengrass控台或 AWS Command Line Interface (AWS CLI) 為控制平面建立 VPC 端點。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的建立介面端點

使用下列服務名稱建立 AWS IoT Greengrass 的 VPC 端點:

  • com.amazonaws.region.greengrass

如果您為該端點啟用私有 DNS,您可以使用其區域的預設 DNS 名稱 (例如 greengrass.us-east-1.amazonaws.com),向 AWS IoT Greengrass 發出 API 請求。預設為啟用私有 DNS。

如需詳細資訊,請參閱 Amazon VPC 使用者指南中的透過介面端點存取服務

為 AWS IoT Greengrass 建立 VPC 端點政策

您可以將端點策略附加到 VPC 端點,以AWS IoT Greengrass控制對控制平面操作的存取。此政策會指定下列資訊:

  • 可執行動作的主體。

  • 委託人可以執行的動作。

  • 主參與者可對其執行動作的資源。

如需詳細資訊,請參閱 Amazon VPC 使用者指南中的使用 VPC 端點控制對服務的存取

範例:AWS IoT Greengrass 動作的 VPC 端點政策

以下是 AWS IoT Greengrass 端點政策的範例。附加至端點後,此政策會針對所有資源上的所有主體,授予列出的 AWS IoT Greengrass 動作的存取權限。

{ "Statement": [ { "Principal": "*", "Effect": "Allow", "Action": [ "greengrass:CreateDeployment", "greengrass:ListEffectiveDeployments" ], "Resource": "*" } ] }

在 VPC 中操作AWS IoT Greengrass核心設備

您可以操作 Greengrass 核心設備並在沒有公共互聯網訪問的情況下在 VPC 中執行部署。您至少必須使用對應的 DNS 別名來設定下列 VPC 端點。有關如何建立和使用 VPC 端點的詳細資訊,請參閱 Amazon VPC 使用者指南中的建立 VPC 端點

注意

自動建立 DNS 記錄的 VPC 功能已停用AWS IoT data和AWS IoT認證。若要連線這些端點,您必須手動建立私人 DNS 記錄。如需詳細資訊,請參閱介面端點的私有 DNS。如需 AWS IoT Core VPC 限制的詳細資訊,請參閱 VPC 端點的限制

必要條件

限制

  • 在 VPC 中操作 Greengrass 核心設備在中國地區和. AWS GovCloud (US) Regions

  • 如需有關AWS IoT認證提供者 VPC 端點限制的AWS IoT data詳細資訊,請參閱限制

設置您的核心設備以在 VPC 中運行

  1. 取得您的AWS IoT端點AWS 帳戶,並儲存以供稍後使用。您的裝置會使用這些端點連線至AWS IoT。請執行下列操作:

    1. 取得適AWS IoT用於您的AWS 帳戶.

      aws iot describe-endpoint --endpoint-type iot:Data-ATS

      如果要求成功,回應看起來類似下列範例。

      { "endpointAddress": "device-data-prefix-ats.iot.us-west-2.amazonaws.com" }
    2. 取AWS IoT得您的AWS 帳戶.

      aws iot describe-endpoint --endpoint-type iot:CredentialProvider

      如果要求成功,回應看起來類似下列範例。

      { "endpointAddress": "device-credentials-prefix.credentials.iot.us-west-2.amazonaws.com" }
  2. 為AWS IoT data和AWS IoT登入資料端點建立 Amazon VPC 界面:

    1. 瀏覽至 VPC Endpoint 主控台,在左側功能表的「虛擬私有雲」下,選擇「點」,然後選擇「建立」。

    2. 在「建立端點」頁面中,指定下列資訊。

      • 選擇服務類別AWS 服務

      • 針對 Service Name (服務名稱),輸入關鍵字 iot 進行搜尋。在顯示的iot服務清單中,選擇端點。

        如果您為AWS IoT Core資料平面建立 VPC 端點,請為您的區域選擇AWS IoT Core資料平面 API 端點。端點的格式為 com.amazonaws.region.iot.data

        如果您為AWS IoT Core認證提供者建立 VPC 端點,請為您的區域選擇AWS IoT Core認證提供者端點。端點的格式為 com.amazonaws.region.iot.credentials

        注意

        中國地區資AWS IoT Core料平面的服務名稱格式為cn.com.amazonaws.region.iot.data。中國地區不支援為AWS IoT Core憑證提供者建立 VPC 端點。

      • 針對 VPCSubnets (子網路),選擇要在其中建立端點的 VPC,以及要在其中建立端點網路的可用區域 (AZ)。

      • 針對 Enable DNS name (啟用 DNS 名稱),確定未選取 Enable for this endpoint (為此端點啟用)。AWS IoT Core資料平面和AWS IoT Core憑證提供者都不支援私有 DNS 名稱。

      • 針對 Security group (安全群組),選擇要與端點網路介面建立關聯的安全群組。

      • 您可以選擇性地新增或移除標籤。標籤是您用來與端點建立關聯的名稱值對。

    3. 若要建立 VPC 端點,請選擇 Create endpoint (建立端點)。

  3. 建立端點後,在AWS PrivateLink端點的 [詳細資料] 索引標籤中,您會看到 DNS 名稱清單。您可以使用您在本節中建立的其中一個 DNS 名稱來設定您的私有託管區域

  4. 創建一個 Amazon S3 端點。如需詳細資訊,請參閱為 Amazon S3 建立 VPC 人雲端端點

  5. 如果您使用的是AWS提供的 Greengrass 元件,則可能需要其他端點和組態。若要檢視端點需求,請從AWS提供的元件清單中選取元件,然後查看「需求」區段。例如,記錄管理員元件需求建議此元件必須能夠對端點執行輸出要求logs.region.amazonaws.com

    如果您使用自己的元件,您可能需要檢閱相依性並執行其他測試,以判斷是否需要任何其他端點。

  6. 在 Greengrass 核配置中,greengrassDataPlaneEndpoint必須設置為。iotdata如需詳細資訊,請參閱 Greengrass 核組態。

  7. 如果您在us-east-1區域中,請在 Greengrass 核組態REGIONALs3EndpointType將組態參數設定為。此功能適用於 Greengrass 2.11.3 或更新版本。

範例:零組件組態
{ "aws.greengrass.Nucleus": { "configuration": { "awsRegion": "us-east-1", "iotCredEndpoint": "xxxxxx.credentials.iot.region.amazonaws.com", "iotDataEndpoint": "xxxxxx-ats.iot.region.amazonaws.com", "greengrassDataPlaneEndpoint": "iotdata", "s3EndpointType": "REGIONAL" ... } } }

下表提供對應自訂私人 DNS 別名的相關資訊。

服務 VPC 端點服務名稱 VPC 端點類型 自訂私人 DNS 別名 備註

AWS IoT data

com.amazonaws.region.iot.data

界面

prefix-ats.iot.region.amazonaws.com

私人 DNS 記錄應與您帳戶的AWS IoT data端點相符:aws iot describe–endpoint ––endpoint–type iot:Data-ATS

AWS IoT 憑證

com.amazonaws.region.iot.credentials

界面

prefix.credentials.iot.region.amazonaws.com

私人 DNS 記錄應與您的帳戶AWS IoT認證端點相符:aws iot describe–endpoint ––endpoint–type iot:CredentialProvider

Amazon S3

com.amazonaws.region.s3

界面

系統會自動建立 DNS 記錄。