傳統系統架構與 AWS 服務
傳統系統架構與 AWS 服務
如何得到得到一個AWS的賬號,如果是社會人士比較適合免費套餐;如果是在校學生或是新手老師則可以從AWS Educate入手;而如果是打算建立雲中心的高等教育機構,則是可以考慮匯入AWS Academy。有了賬號後,接下來就是了解AWS雲端計算的內容,本系列以架構(Architech)為主,所以先決條件是希望讀者先有架構的基本概念,以下是一張傳統的網路架構圖。
圖 1 、傳統的系統架構圖
使用 Active Directory/LDAP 來管理使用者賬號,或是 SSO (Sigle Sign-On) 的機制,而在應用程式部分採用三層式體系結構,把介面、商用邏輯以及資料管理分開:負載均衡器來對網路流量進行分流,而 Web 伺服器負責提供應用程式程式設計介面;在由下一層的負載均衡器進行分流,分配給後端的應用程式伺服器,而考慮硬碟效能、管理及可靠度的情況下,使用 SAN (Storage Area Network) 來做為硬碟存取,而有些需要共同取用的資料夾,則統一放在 NAS (Network-Attached Storage),供所有應用程式伺服器存取;最後資料則儲存在資料庫中,考慮可用性及可靠性,所以使用Master/Slave架構增加冗餘可用的機制,還有磁帶備份作為災難復原之用。
這是一個很基本的應用系統架構,下一張圖讓我們瞭解一下要如何把這個架構搬到AWS的雲端服務中,從這張圖,大家就可以看到傳統服務與AWS服務之間的對應。
圖 2 、AWS雲端的系統架構圖
服務的替換如下
- 將伺服器替換為 EC2,其實ECS(Elastic Container Service)也可以,更輕量
- 將 LDAP 伺服器替換為 AWS Directory Service
- 將基於軟體的負載均衡器替換為 Elastic Load Balancing (ELB)
- 將 SAN 解決方案替換為 Amazon EBS
- 將 NAS 檔案伺服器替換為 Amazon EFS
- 將資料庫替換為 Amazon RDS
- 磁帶備份會換成標準S3或是Glacier
從以上兩張圖,讀者應該就比較理解傳統系統架構與AWS服務之間的對應關係,在這裡在補充兩個AWS的基礎服務,在圖 1 應該會有但沒有畫出來,一個是網路架構,也就是所有的伺服器應該都是透過因特網串聯起來,所以應該要有一個網路支援系統,在AWS裡這個服務就是 Amazon Virtual Private Cloud (VPC),允許使用者在 AWS 雲端布建一個在邏輯上隔離的部分,並在自己定義的虛擬網路中啟動 AWS 資源;另一個資源管理賬號,就是 Identity and Access Management (IAM),圖 1 中的 LDAP 伺服器是用來管理整個應用系統的許可權,而IAM則是用來管理整個系統的資源許可權,舉例來說管理資料庫的內容許可權是由 LDAP 伺服器來負責,但假如我們需要升級資料庫的硬裝置,如加裝記憶體、升級主機等的許可權則是由AWS內的IAM來負責授權,簡單來說就是系統硬體許可權部分是由IAM來負責,系統軟體/內容許可權部分則由 LDAP 伺服器來負責