開始使用 AWS PrivateLink - Amazon Virtual Private Cloud

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

開始使用 AWS PrivateLink

本教學課程示範如何使用 將請求從私有子網路中的EC2執行個體傳送至 Amazon CloudWatch AWS PrivateLink。

下圖提供此情況如何運作的概觀。若要從電腦連線到私有子網路中的執行個體,您必須先連線到公有子網路中的堡壘主機。堡壘主機和執行個體都必須使用相同的金鑰對。由於私有金鑰.pem的檔案位於您的電腦上,而不是堡壘主機,因此您將使用SSH金鑰轉送。然後,您可以從堡壘主機連線至執行個體,而無需在 ssh 命令中指定 .pem 檔案。設定VPC端點之後 CloudWatch,來自目的地為 之執行個體的流量 CloudWatch 會解析至端點網路介面,然後使用VPC端點傳送至 CloudWatch 。

CloudWatch 使用VPC端點存取私有子網路中的執行個體。

針對測試目的,您可以使用單一可用區域。在生產環境中,建議您使用至少兩個可用區域以獲得低延遲和高可用性。

步驟 1:建立VPC具有子網路的

使用下列程序建立VPC具有公有子網路和私有子網路的 。

建立 VPC
  1. 在 開啟 Amazon VPC主控台https://console.aws.amazon.com/vpc/

  2. 選擇 Create VPC (建立 OpsItem)。

  3. 若要建立資源,請選擇 VPC 等

  4. 針對名稱標籤自動產生,輸入 的名稱VPC。

  5. 若要設定子網路,請執行下列動作:

    1. 對於 Number of Availability Zones (可用區域數量),請根據您的需求選擇 12

    2. 針對 Number of public subnets (公用子網路數量),請確定每個可用區域有一個公用子網路。

    3. 針對 Number of private subnets (私有子網路數量),請確定每個可用區域有一個私有子網路。

  6. 選擇 Create VPC (建立 OpsItem)。

步驟 2:啟動執行個體

使用您在上一個步驟中建立VPC的 ,在公有子網路中啟動堡壘主機,並在私有子網路中啟動執行個體。

必要條件
  • 使用 .pem 格式建立金鑰對。啟動堡壘主機和執行個體時,您必須選擇此金鑰對。

  • 為堡壘主機建立安全群組,允許來自您電腦CIDR區塊的傳入SSH流量。

  • 為執行個體建立安全群組,允許來自堡壘主機安全群組的傳入SSH流量。

  • 建立IAM執行個體設定檔並連接CloudWatchReadOnlyAccess政策。

啟動堡壘主機
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  2. 選擇啟動執行個體

  3. 針對 Name (名稱),輸入堡壘主機的名稱。

  4. 保留預設映像和執行個體類型。

  5. 針對 Key pair (金鑰對),選擇您的金鑰對。

  6. 針對 Network settings (網路設定),執行下列操作:

    1. 針對 VPC,選擇您的 VPC。

    2. 針對 Subnet (子網路),選擇公有子網路。

    3. Auto-assign public IP (自動指派公有 IP) 中,選擇 Enable (啟用)。

    4. 對於 Firewall (防火牆),請選擇 Select existing security group (選取現有的安全群組),然後選擇堡壘主機的安全群組。

  7. 選擇啟動執行個體

啟動執行個體
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  2. 選擇啟動執行個體

  3. 對於 Name (名稱),請輸入執行個體名稱。

  4. 保留預設映像和執行個體類型。

  5. 針對 Key pair (金鑰對),選擇您的金鑰對。

  6. 針對 Network settings (網路設定),執行下列操作:

    1. 針對 VPC,選擇您的 VPC。

    2. 針對 Subnet (子網路),選擇私有子網路。

    3. 針對 Auto-assign public IP (自動指派公有 IP) 中,選擇 Disable (停用)。

    4. 對於 Firewall (防火牆),請選擇 Select existing security group (選取現有的安全群組),然後選擇執行個體的安全群組。

  7. 展開 Advanced Details (進階詳細資訊)。針對IAM執行個體描述檔,選擇您的IAM執行個體描述檔。

  8. 選擇啟動執行個體

步驟 3:測試 CloudWatch 存取

使用下列程序來確認執行個體無法存取 CloudWatch。您將使用 的唯讀 AWS CLI 命令來執行此操作 CloudWatch。

測試 CloudWatch 存取
  1. 從您的電腦中,使用下列命令將金鑰對新增至SSH代理程式,其中 key.pem是您的 .pem 檔案的名稱。

    ssh-add ./key.pem

    如果您收到金鑰對權限過於開放的錯誤訊息,請執行下列命令,然後重試上一個命令。

    chmod 400 ./key.pem
  2. 從您的電腦連接至堡壘主機。您必須指定 -A 選項、執行個體使用者名稱 (例如 ec2-user) 和堡壘主機的公用 IP 地址。

    ssh -A ec2-user@bastion-public-ip-address
  3. 從堡壘主機連接至執行個體。您必須指定執行個體使用者名稱 (例如 ec2-user) 和執行個體的私有 IP 地址。

    ssh ec2-user@instance-private-ip-address
  4. 在執行個體上執行 the CloudWatch list-metrics 命令,如下所示。針對 --region選項,指定您建立 的區域VPC。

    aws cloudwatch list-metrics --namespace AWS/EC2 --region us-east-1
  5. 命令會在幾分鐘後逾時。這表示您無法 CloudWatch 從具有目前VPC組態的執行個體存取 。

    Connect timeout on endpoint URL: https://monitoring.us-east-1.amazonaws.com/
  6. 與您的執行個體保持連線。建立VPC端點後,您將再次嘗試此list-metrics命令。

步驟 4:建立VPC端點以存取 CloudWatch

使用下列程序來建立連線至 的VPC端點 CloudWatch。

先決條件

為允許流量的VPC端點建立安全群組 CloudWatch。例如,新增允許來自 VPCCIDR區塊HTTPS流量的規則。

為 建立VPC端點 CloudWatch
  1. 在 開啟 Amazon VPC主控台https://console.aws.amazon.com/vpc/

  2. 在導覽窗格中選擇端點

  3. 選擇建立端點

  4. Name tag (名稱標籤) 中,輸入端點的名稱。

  5. 對於 Service category (服務類別),選擇 AWS 服務

  6. 針對服務,選取 com.amazonaws.region.monitoring

  7. 針對 VPC,選取您的 VPC。

  8. 針對 Subnets (子網路),請選取可用區域,然後選取私有子網路。

  9. 針對安全群組,選取VPC端點的安全群組。

  10. 針對政策,選取完整存取,以允許VPC端點上所有資源上的所有主體進行所有操作。

  11. (選用) 若要新增標籤,請選擇 Add new tag (新增標籤),然後輸入標籤的鍵和值。

  12. 選擇建立端點。初始狀態為 Pending (等待中)。在進行下一個步驟之前,請先等待狀態變為 Available (可用)。這可能需要幾分鐘的時間。

步驟 5:測試VPC端點

確認VPC端點正在從您的執行個體傳送請求至 CloudWatch。

測試VPC端點

在執行個體上執行以下 命令。針對 --region選項,指定您建立VPC端點的區域。

aws cloudwatch list-metrics --namespace AWS/EC2 --region us-east-1

如果您收到回應,甚至是結果為空的回應,則會使用 連線至 CloudWatch AWS PrivateLink。

如果您收到UnauthorizedOperation錯誤,請確定執行個體具有允許存取 IAM的角色 CloudWatch。

如果請求逾時,請確認下列事項:

  • 端點的安全群組允許流量傳入 CloudWatch。

  • --region 選項指定您建立VPC端點的區域。

步驟 6:清除

如果您不再需要針對此教學課程建立的堡壘主機和執行個體,則可以將其終止。

終止執行個體
  1. 在 開啟 Amazon EC2主控台https://console.aws.amazon.com/ec2/

  2. 在導覽窗格中,選擇 Instances (執行個體)。

  3. 選取兩個測試執行個體,然後選取 Instance state (執行個體狀態)、Terminate instance (終止執行個體)。

  4. 出現確認提示時,請選擇終止

如果您不再需要VPC端點,可以將其刪除。

刪除VPC端點
  1. 在 開啟 Amazon VPC主控台https://console.aws.amazon.com/vpc/

  2. 在導覽窗格中選擇端點

  3. 選取VPC端點。

  4. 選擇動作刪除VPC端點

  5. 出現確認提示時,請輸入 delete,然後選擇 Delete (刪除)。