建立一個可用的網站,至少需要伺服器(EC2)、檔案儲存(S3)、權限控管(IAM)與流量分配(ELB)。這些服務組合後,就形成了基本的可用架構:
EC2 (Elastic Compute Cloud)提供彈性運算資源:
EC2 = 雲端店面(你的伺服器) 🏠
想像你要蓋網站,就像開一家餐廳,你需要一棟「店面」,EC2 就是你的「雲端店面」,你可以決定要多大空間(CPU、RAM)、要放什麼設備(OS、套件),例如:我要開 WordPress,就在 EC2 裡裝 Apache + PHP。
EBS (Elastic Block Store)可附加到 EC2 實例的持久性區塊級儲存卷 :
EBS = 雲端店面的儲物區(EC2的硬碟) 💾
就像您購買了一台電腦的硬碟,您需要將它連接到主機板(EC2 實例)上,然後再安裝作業系統和應用程式。
它像一個實體硬碟 (HDD) 或固態硬碟 (SSD),可以被作業系統格式化、掛載和用作檔案系統,一次只能單獨連接到一個 EC2 實例,根據數據在的可用區,可以創建快照 (Snapshots),供未來提供「災難復原」的樣板。
S3 (Simple Storage Service)負責靜態檔案儲存與備份:
S3 = 雲端倉庫(網站的圖片、頁面都在這) 📦
S3就像一個無限大的雲端網盤,您可以隨意丟入照片、文件、影片等任何格式的檔案,並可以透過 URL 進行存取,它會幫你分類、上鎖,S3 適合放:圖片、檔案、備份、靜態網頁、作為資料湖 (Data Lake)或搭配CloudFront CDN服務來做內容分發等。
IAM 確保安全的資源存取:
IAM = 雲端門禁/安全中心(控管誰能進來) 🔑
網站不是大家都能亂動的!IAM 就像門禁系統,幫每個人發工作證,決定能進哪個房間(服務)、誰可以做哪些事(授權),例如:你可以給設計師「S3 存取權」,但不給「刪除 EC2」的權限。
VPC設計專用網段,區隔網路環境:
VPC = 你的專屬雲端辦公室 🏢🔒
VPC(Virtual Private Cloud,虛擬私有雲)就像你在 AWS 雲端中,擁有一個完全屬於你自己的、獨立的網路空間。你可以想像它是一個有門禁、有隔間的辦公室,讓你能夠安全地放置你的網站伺服器、資料庫和各種應用程式。
你可以完全掌控這個辦公室的內部配置,例如:
ELB 平衡流量,提升可用性:
ELB = 雲端店面前的路徑(分流你的顧客) 🚦
你的網站爆紅了,一堆民眾排隊進來搶票,如果只有一台 EC2,大家會卡住,導致罵聲一片,ELB 就像一個自動導流的的智能「道岔」,會把客人自動導到目前流量較少的「分店」(其他 EC2),確保網站不會當掉。
Route 53 高可用/高擴展的雲端網域名稱系統(DNS)Web服務:
Route53 = 雲端導遊(告訴用戶你的店面在哪) 🗺️
就像開餐廳要有地址,Route53 幫你把網站 URL 轉成 IP,用戶輸入 ducky.com
,Route53 就告訴他正確的「門牌號碼」,讓你可以找到他的位置在哪。
CloudFront 內容分發網路(CDN)服務:
CloudFront = 雲端速遞員(讓資料傳得更快) 🚀
如果客戶在日本,而伺服器在美國,那下載檔案、資料的速度就會很慢,CloudFront(CDN)就像一個全球快遞公司,它在世界各地設立了倉庫(資料中心),當有訂單時,可以直接從最近的倉庫發貨,而不是每次都從總部發貨,可以加速取貨速度、提高客戶體驗。
RDS (Relational Database Service)託管型的關聯式資料庫
RDS = 雲端外部資料倉庫(伺服器的資料庫系統) 💽:
就像您租用了一個已經安裝好作業系統和資料庫軟體的伺服器,您只需要使用資料庫帳號和密碼來存取資料,無需操心底層的硬體維護。
它結合了計算、儲存和資料庫軟體本身,方便、快速,讓你不用自己架設一台Database的Server,且支援多可用區 (Multi-AZ) 部署,可以自動容錯移轉,且提供自動備份、Point-in-Time Recovery 等功能,連線方式是透過標準的資料庫連線協議(如 JDBC/ODBC),從應用程式連線到資料庫的端點 (Endpoint)。
DynamoDB 託管型的NoSQL資料庫
DynamoDB = 雲端外部百科中心(快速提取資料、NoSQL DB) 🗒️
就像一個極速且無限大的檔案櫃,您可以用一個簡單的索引(鍵值)來快速存取任何文件,而不需要像傳統資料庫那樣去定義複雜的表格結構。
適合存「非結構化資料」,例如:使用者活動紀錄、聊天訊息,不需要定義欄位,靈活且速度快。
進入「EC2」服務頁面。
點選「啟動執行個體」按鈕,創建一台新的虛擬機。
可以依照你的需求,啟用一台虛擬機。
今天介紹的是最最最基礎的雲端服務 —— 虛擬機(EC2)跟其他的基礎服務,這雖然跟我們本次的架構無關(因為Serverless架構並不需要自己創建虛擬機來作為Server主機),但如果想要入門雲端(Cloud),那創建一台屬於自己的雲端電腦EC2必定是不可少的技能。
下一章,我們會再介紹進階工具組,然後,將於Day5開始做我們的Serverless網站架構唷~ 敬請期待🎉