前言
Amazon Elastic Compute Cloud (Amazon EC2) 是 AWS 提供的可擴展運算服務,讓您可以在雲端中啟動虛擬伺服器(稱為執行個體)。EC2 提供了彈性的運算容量,讓您可以根據需求快速擴展或縮減資源,只需為實際使用的資源付費。
本文將帶您了解如何建立、連線和管理 EC2 執行個體,這是使用 AWS 雲端服務的基礎技能。
EC2 簡介
什麼是 EC2?
EC2 (Elastic Compute Cloud) 是 AWS 最核心的服務之一,提供可調整大小的虛擬伺服器。您可以將它想像成一台在雲端的電腦,可以隨時啟動、停止或終止。
EC2 的主要特點
- 彈性擴展:可以根據流量或工作負載自動或手動調整執行個體數量
- 多種執行個體類型:從小型開發測試到大型企業應用,有數百種執行個體類型可選擇
- 按需付費:只需為實際使用的運算時間付費
- 全球部署:可在全球多個區域 (Region) 和可用區域 (Availability Zone) 部署
- 整合 AWS 生態系統:可與其他 AWS 服務無縫整合
常見執行個體類型
| 類型 | 用途 | 範例 |
|---|---|---|
| t2/t3 | 一般用途,可突增效能 | 網站伺服器、小型資料庫 |
| m5/m6i | 一般用途,平衡運算 | 應用程式伺服器 |
| c5/c6i | 運算優化 | 批次處理、遊戲伺服器 |
| r5/r6i | 記憶體優化 | 記憶體快取、大型資料庫 |
| g4/p4 | GPU 執行個體 | 機器學習、影像處理 |
建立執行個體步驟
步驟 1:登入 AWS 管理主控台
- 前往 AWS 管理主控台
- 使用您的 AWS 帳戶登入
- 在服務搜尋列中輸入「EC2」並選擇它
步驟 2:啟動執行個體
- 在 EC2 儀表板中,點擊「啟動執行個體」(Launch Instance) 按鈕
- 為您的執行個體命名(例如:
my-web-server)
步驟 3:選擇 Amazon Machine Image (AMI)
AMI 是包含作業系統和預先安裝軟體的映像檔。常見選擇包括:
- Amazon Linux 2023:AWS 優化的 Linux 發行版
- Ubuntu Server:廣受歡迎的 Linux 發行版
- Windows Server:Microsoft Windows 作業系統
- Red Hat Enterprise Linux:企業級 Linux
建議初學者選擇 Amazon Linux 2023 或 Ubuntu Server 22.04 LTS。
步驟 4:選擇執行個體類型
對於學習和測試用途,建議選擇 t2.micro 或 t3.micro,這些類型符合 AWS 免費方案資格(每月 750 小時)。
步驟 5:建立金鑰對
金鑰對用於安全地連線到您的執行個體:
- 在「金鑰對(登入)」區段,點擊「建立新的金鑰對」
- 輸入金鑰對名稱(例如:
my-key-pair) - 選擇金鑰對類型:
- RSA:相容性最佳
- ED25519:較新且安全的選項
- 選擇私密金鑰檔案格式:
- .pem:適用於 Linux/macOS 的 OpenSSH
- .ppk:適用於 Windows 的 PuTTY
- 點擊「建立金鑰對」並妥善保存下載的私密金鑰檔案
重要:私密金鑰檔案只能下載一次,請妥善保管並避免分享給他人。
步驟 6:設定網路
- 選擇或建立 VPC(虛擬私有雲)
- 選擇子網路
- 啟用「自動指派公有 IP」以便從網際網路存取
步驟 7:設定儲存空間
預設為 8 GB 的 EBS (Elastic Block Store) 磁碟區。您可以:
- 調整磁碟區大小
- 選擇磁碟區類型(gp3 為推薦的通用型)
- 新增額外的磁碟區
步驟 8:檢閱並啟動
- 檢閱所有設定
- 點擊「啟動執行個體」
- 等待執行個體狀態變為「執行中」
連線方式 (SSH)
使用 SSH 連線(Linux/macOS)
- 開啟終端機
- 設定私密金鑰檔案的權限:
| |
- 使用 SSH 連線到執行個體:
| |
注意:預設使用者名稱因 AMI 而異:
- Amazon Linux:
ec2-user- Ubuntu:
ubuntu- Debian:
admin- RHEL:
ec2-user或root
使用 PuTTY 連線(Windows)
- 下載並安裝 PuTTY
- 使用 PuTTYgen 將 .pem 檔案轉換為 .ppk 格式:
- 開啟 PuTTYgen
- 點擊「Load」載入 .pem 檔案
- 點擊「Save private key」儲存為 .ppk 檔案
- 在 PuTTY 中設定連線:
- Host Name:
ec2-user@<公有 IP 位址> - Port:22
- Connection > SSH > Auth > Credentials:選擇 .ppk 檔案
- Host Name:
- 點擊「Open」建立連線
使用 EC2 Instance Connect
AWS 也提供瀏覽器內建的連線方式:
- 在 EC2 主控台選擇您的執行個體
- 點擊「連線」
- 選擇「EC2 Instance Connect」標籤
- 點擊「連線」
這種方式不需要管理 SSH 金鑰,非常適合快速存取。
安全群組設定
安全群組是 EC2 執行個體的虛擬防火牆,用於控制進出流量。
了解安全群組規則
- 傳入規則 (Inbound):控制允許進入執行個體的流量
- 傳出規則 (Outbound):控制允許離開執行個體的流量
常見的傳入規則設定
| 用途 | 類型 | 協定 | 連接埠 | 來源 |
|---|---|---|---|---|
| SSH 存取 | SSH | TCP | 22 | 您的 IP |
| HTTP 網站 | HTTP | TCP | 80 | 0.0.0.0/0 |
| HTTPS 網站 | HTTPS | TCP | 443 | 0.0.0.0/0 |
| 自訂應用程式 | Custom TCP | TCP | 自訂 | 視需求 |
安全性最佳實務
- 最小權限原則:只開放必要的連接埠
- 限制 SSH 來源:將 SSH (連接埠 22) 限制為您的 IP 位址,而非 0.0.0.0/0
- 使用安全群組參照:允許來自其他安全群組的流量,而非 IP 範圍
- 定期審查規則:移除不再需要的規則
修改安全群組
- 在 EC2 主控台的左側選單中,選擇「安全群組」
- 選擇要修改的安全群組
- 在「傳入規則」標籤中,點擊「編輯傳入規則」
- 新增、修改或刪除規則
- 點擊「儲存規則」
常用管理操作
執行個體狀態管理
| 操作 | 說明 | 計費影響 |
|---|---|---|
| 啟動 | 開啟執行個體 | 開始計費 |
| 停止 | 關閉執行個體,保留 EBS 資料 | 停止運算計費,EBS 仍計費 |
| 重新啟動 | 重新開機 | 持續計費 |
| 終止 | 永久刪除執行個體 | 停止計費 |
使用 AWS CLI 管理執行個體
首先安裝並設定 AWS CLI:
| |
常用指令:
| |
監控執行個體
CloudWatch 指標:
- CPU 使用率
- 網路輸入/輸出
- 磁碟讀寫操作
系統狀態檢查:
- 執行個體狀態檢查
- 系統狀態檢查
設定警示:
- 在 CloudWatch 中建立警示
- 當指標超過閾值時收到通知
建立 AMI(備份)
建立執行個體的映像檔以便日後重複使用:
- 選擇執行個體
- 點擊「動作」>「映像和範本」>「建立映像」
- 輸入名稱和描述
- 點擊「建立映像」
Elastic IP 位址
預設的公有 IP 在執行個體停止後會變更。使用 Elastic IP 可獲得固定 IP:
- 在 EC2 主控台選擇「彈性 IP」
- 點擊「配置彈性 IP 位址」
- 點擊「配置」
- 選擇新配置的 IP,點擊「動作」>「建立關聯」
- 選擇要關聯的執行個體
注意:未關聯的 Elastic IP 會產生費用,請確保在不使用時釋放。
成本優化建議
- 選擇正確的執行個體大小:避免過度配置
- 使用預留執行個體:長期工作負載可節省最多 72%
- 使用 Spot 執行個體:可容忍中斷的工作負載可節省最多 90%
- 設定自動排程:開發環境可在非工作時間自動停止
- 監控未使用的資源:定期檢查並清理未使用的 EBS 磁碟區、快照和 Elastic IP
總結
本文介紹了 AWS EC2 執行個體的基礎建立與管理,包括:
- EC2 的基本概念和執行個體類型
- 建立執行個體的完整步驟
- 使用 SSH 和其他方式連線到執行個體
- 安全群組的設定和最佳實務
- 常用的管理操作和監控方式
EC2 是 AWS 最基礎也最重要的服務之一,掌握這些知識將為您進一步學習 AWS 雲端架構打下堅實的基礎。