本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
開始使用 AWS PrivateLink
本教學課程示範如何使用將私有子網路中的 EC2 執行個體傳送請求至 CloudWatch Amazon AWS PrivateLink。
下圖提供此情況如何運作的概觀。若要從電腦連線到私有子網路中的執行個體,您必須先連線到公有子網路中的堡壘主機。堡壘主機和執行個體都必須使用相同的金鑰對。由於私密金鑰的 .pem
檔案位於您的電腦,而不是堡壘主機上,因此您將使用 SSH 金鑰轉送。然後,您可以從堡壘主機連線至執行個體,而無需在 ssh 命令中指定 .pem
檔案。在您為其設定 VPC 端點之後 CloudWatch,來自目的地執行個體的流量會解析 CloudWatch 為端點網路介面,然後 CloudWatch 使用 VPC 端點傳送至。
針對測試目的,您可以使用單一可用區域。在生產環境中,建議您使用至少兩個可用區域以獲得低延遲和高可用性。
任務
步驟 1:建立包含子網路的 VPC
按照以下程序建立包含公有子網路和私有子網路的 VPC。
若要建立 VPC
-
前往 https://console.aws.amazon.com/vpc/
開啟 Amazon VPC 主控台。 -
選擇建立 VPC。
-
針對 Resources to create (建立資源),選擇 VPC and more (VPC 等)。
-
針對自動產生名稱標籤,輸入 VPC 的名稱。
-
若要設定子網路,請執行下列動作:
-
對於 Number of Availability Zones (可用區域數量),請根據您的需求選擇 1 或 2。
-
針對 Number of public subnets (公用子網路數量),請確定每個可用區域有一個公用子網路。
-
針對 Number of private subnets (私有子網路數量),請確定每個可用區域有一個私有子網路。
-
-
選擇建立 VPC。
步驟 2:啟動執行個體
使用您在上一個步驟中建立的 VPC,在公有子網路中啟動堡壘主機,並在私有子網路中啟動執行個體。
必要條件
使用 .pem 格式建立金鑰對。啟動堡壘主機和執行個體時,您必須選擇此金鑰對。
為堡壘主機建立安全群組,以允許來自您電腦 CIDR 區塊的傳入 SSH 流量。
為執行個體建立安全群組,以允許來自您堡壘主機安全群組的傳入 SSH 流量。
建立 IAM 執行個體設定檔並附加CloudWatchReadOnly存取政策。
啟動堡壘主機
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
選擇啟動執行個體。
-
針對 Name (名稱),輸入堡壘主機的名稱。
-
保留預設映像和執行個體類型。
-
針對 Key pair (金鑰對),選擇您的金鑰對。
-
針對 Network settings (網路設定),執行下列操作:
-
在 VPC 中,選擇您的 VPC。
-
針對 Subnet (子網路),選擇公有子網路。
-
在 Auto-assign public IP (自動指派公有 IP) 中,選擇 Enable (啟用)。
-
對於 Firewall (防火牆),請選擇 Select existing security group (選取現有的安全群組),然後選擇堡壘主機的安全群組。
-
-
選擇啟動執行個體。
啟動執行個體
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
選擇啟動執行個體。
-
對於 Name (名稱),請輸入執行個體名稱。
-
保留預設映像和執行個體類型。
-
針對 Key pair (金鑰對),選擇您的金鑰對。
-
針對 Network settings (網路設定),執行下列操作:
-
在 VPC 中,選擇您的 VPC。
-
針對 Subnet (子網路),選擇私有子網路。
-
針對 Auto-assign public IP (自動指派公有 IP) 中,選擇 Disable (停用)。
-
對於 Firewall (防火牆),請選擇 Select existing security group (選取現有的安全群組),然後選擇執行個體的安全群組。
-
-
展開 Advanced Details (進階詳細資訊)。在 IAM instance profile (IAM 執行個體設定檔) 中,選擇您的 IAM 執行個體設定檔。
-
選擇啟動執行個體。
步驟 3:測試 CloudWatch 存取
請使用下列程序來確認執行個體無法存取 CloudWatch。您將使用的唯讀 AWS CLI 命令來執行此操作 CloudWatch。
若要測試 CloudWatch 存取
-
從您的電腦中,使用下列命令將金鑰對新增至 SSH 代理程式,其中
key.pem
是 .pem 檔案的名稱。ssh-add ./
key.pem
如果您收到金鑰對權限過於開放的錯誤訊息,請執行下列命令,然後重試上一個命令。
chmod 400 ./
key.pem
-
從您的電腦連接至堡壘主機。您必須指定
-A
選項、執行個體使用者名稱 (例如ec2-user
) 和堡壘主機的公用 IP 地址。ssh -A
ec2-user
@bastion-public-ip-address
-
從堡壘主機連接至執行個體。您必須指定執行個體使用者名稱 (例如
ec2-user
) 和執行個體的私有 IP 地址。ssh
ec2-user
@instance-private-ip-address
-
在執行個 CloudWatch 體上執行清單公制指令,如下所示。針對
--region
選項,請指定您建立 VPC 的「區域」。aws cloudwatch list-metrics --namespace AWS/EC2 --region
us-east-1
-
命令會在幾分鐘後逾時。這表明您無法使用目前的 VPC 組態 CloudWatch 從執行個體存取。
Connect timeout on endpoint URL: https://monitoring.
us-east-1
.amazonaws.com/ -
與您的執行個體保持連線。建立 VPC 端點後,您將再次嘗試此 list-metrics 命令。
步驟 4:建立要存取的 VPC 端點 CloudWatch
使用下列程序建立連線到的 VPC 端點。 CloudWatch
先決條件
為允許流量傳輸的 VPC 端點建立安全群組。 CloudWatch例如,新增規則,允許來自 VPC CIDR 區塊的 HTTPS 流量。
若要為以下項目建立 VPC 端點 CloudWatch
在 https://console.aws.amazon.com/vpc/
開啟 Amazon VPC 主控台。 -
在導覽窗格中選擇 Endpoints (端點)。
-
選擇建立端點。
-
在 Name tag (名稱標籤) 中,輸入端點的名稱。
-
對於 Service category (服務類別),選擇 AWS 服務。
-
針對 Service (服務),請選取 com.amazonaws.
region
.monitoring。 -
針對 VPC,選取您的 VPC。
-
針對 Subnets (子網路),請選取可用區域,然後選取私有子網路。
-
針對 Security group (安全群組),請選取 VPC 端點的安全群組。
-
對於 Policy (政策),選取 Full access (完整存取),以允許 VPC 端點上所有資源的所有主體進行所有操作。
-
(選用) 若要新增標籤,請選擇 Add new tag (新增標籤),然後輸入標籤的鍵和值。
-
選擇建立端點。初始狀態為 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:清除
如果您不再需要針對此教學課程建立的堡壘主機和執行個體,則可以將其終止。
終止執行個體
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在導覽窗格中,選擇執行個體。
-
選取兩個測試執行個體,然後選取 Instance state (執行個體狀態)、Terminate instance (終止執行個體)。
-
出現確認提示時,請選擇終止。
如果您不再需要該 VPC 端點,可以將其刪除。
刪除 VPC 端點。
在 https://console.aws.amazon.com/vpc/
開啟 Amazon VPC 主控台。 -
在導覽窗格中選擇 Endpoints (端點)。
-
選取 VPC 端點。
-
選擇 Actions (動作)、Delete VPC endpoints (刪除 VPC 端點)。
-
出現確認提示時,請輸入
delete
,然後選擇 Delete (刪除)。