聯繫我們

課程簡介

虛擬化詳細內容

  1. 作業系統概念概覽:CPU、記憶體、網路、儲存
  2. Hypervisor
    1. supervisory 的監督者
    2. 「主機」機器與「客戶機」作業系統
    3. Type-1 Hypervisor 與 Type-2 Hypervisor
    4. Citrix XEN、VMware ESX/ESXi、MS Hyper-V、IBM LPAR。
  3. 網路虛擬化
    1. 7層 OSI 模型簡介
    2. 聚焦於網路層
    3. TCP/IP 模型或網際網路協定
  4. 聚焦單一垂直領域
    1. 應用層:SSL
    2. 網路層:TCP
    3. 網際網路層:IPv4/IPv6
    4. 鏈結層:Ethernet(乙太網)
  5. 封包結構
    1. 位址編碼:IP 位址與域名
    2. 防火牆、負載平衡器、路由器、介面卡
    3. 虛擬化網路
    4. 更高階的抽象概念:子網域、區域。
  6. 實作練習:
    1. 熟悉 ESXi 叢集與 vSphere 用戶端。
    2. 在 ESXi 叢集中建立/更新網路,從 VMDK 套件部署客戶機,並在 ESXi 叢集內啟用客戶機之間的互連。
    3. 對正在執行的 VM 實例進行修改並擷取快照(snapshot)。
    4. 使用 vSphere 用戶端更新 ESXi 中的防火牆規則。

2. 雲端運算:範式轉移

  1. 快速且低廉的跑道,使產品/解決方案能面向全世界
  2. 資源共享
    1. 虛擬化環境的虛擬化
  3. 關鍵益處:
    1. 按需資源彈性
      1. 構思-> 編碼-> 部署,無需基礎設施。
      2. 快速 CI/CD 管線
    2. 環境隔離與垂直自治
    3. 透過分層實現的安全性
    4. 費用優化
  4. 內部資料中心雲端與雲端服務提供商
  5. 雲端作為分散式運算的有效概念抽象

3. 雲端解決方案分層介紹:

  1. IaaS(基礎設施即服務)
    1. AWS、Azure、Google
    2. 選擇一個提供商以繼續後續課程。建議使用 AWS。
      1. AWS VPC、AWS EC2 等介紹。
  2. PaaS(平台即服務)
    1. AWS、Azure、Google、CloudFoundry、Heroku
    2. AWS DynamoDB、AWS Kinesis 等介紹。
  3. SaaS(軟體即服務)
    1. 簡要概覽
    2. Microsoft Office、Confluence、SalesForce、Slack
  4. SaaS 建立在 PaaS 之上,PaaS 建立在 IaaS 之上,IaaS 建立在虛擬化之上。

4. IaaS 雲端實作專案

  1. 本專案使用 AWS 作為 IaaS 雲端提供商。
  2. 使用 CentOS/RHEL 作為其餘練習的操作系統。
    1. 亦可使用 Ubuntu,但優先推薦 RHEL/CentOS。
  3. 從您的雲端管理員那裡取得個別的 AWS IAM 帳號。
  4. 每位學員必須獨立完成這些步驟。
    1. 能夠按需建立您自己的完整基礎設施,是展示雲端運算力量的最佳證明。
    2. 使用 AWS Wizard(嚮導)-- AWS 線上控制台 -- 來完成這些任務,除非另有說明。
  5. 在 us-east-1 區域建立公有 VPC。
    1. 在兩個不同的可用區(Availability Zones)中包含兩個子網域(Subnet-1 和 Subnet-2)。
      1. 請參考 https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Scenarios.html。
    2. 建立三個獨立的安全群組(Security Groups)。
      1. SG-Internet
        1. 允許來自網際網路的 https 443 和 http 80 incoming traffic。
        2. 不允許其他任何 incoming connections。
      2. SG-Service
        1. 僅允許來自安全群組 SG-Internet 的 https 443 和 http 80 incoming traffic。
        2. 僅允許來自 SG-Internet 的 ICMP。
        3. 不允許其他任何 incoming connections。
      3. SG-SSH:
        1. 僅允許來自單一 IP 的 SSH:22 incoming connection,該 IP 必須與學員實驗室機器的公有 IP 匹配。如果實驗室機器位於代理伺服器後方,則為代理伺服器的公有 IP。
  6. 部署一個屬於您選擇之作業系統的 AMI 實例 -- preferably 使用 AMIs 中可用的最新 RHEL/CentOS 版本 -- 並將其實例託管在 Subnet-1 上。將該實例附加至 SG-Service 和 SG-SSH 安全群組。
  7. 從您的實驗室機器使用 SSH 存取該實例。
  8. 在該實例上安裝 NGINX 伺服器。
  9. 放置您選擇的靜態內容 -- html 頁面、圖片 -- 由 NGINX 提供服務(透過 HTTP 的 80 端口),並為它們定義 URL。
  10. 從該機器本身測試 URL。
  11. 由此正在執行的實例建立 AMI 映像。
  12. 部署該新的 AMI,並將其實例託管在 Subnet-2 上。將該實例附加至 SG-Service 和 SG-SSH 安全群組。
  13. 執行 NGINX 伺服器,並驗證步驟 (i) 中建立的靜態內容存取 URL 是否運作正常。
  14. 建立新的「經典」彈性負載平衡器(Elastic Load Balancer),並將其實例附加至 SG-Internet。
    1. 注意與應用型負載平衡器(Application Load Balancer)及網路型負載平衡器(Network Load Balancer)的差異。
  15. 建立路由規則,將所有 http 80 和 https 443 traffic 轉發至由上述兩個實例組成的實例群組。
  16. 使用任何憑證管理工具 -- 例如 java keytool -- 建立金鑰對與自行簽署的憑證,並將憑證匯入 AWS Certificate Manager (ACM)。

5. 雲端監控:介紹與實作專案

  1. AWS CloudWatch 指標
  2. 前往對應實例的 AWS CloudWatch 儀表板。
    1. 擷取相關指標,並解釋其隨時間的變異性。
      1. https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html
  3. 前往對應 ELB 的 AWS CloudWatch 儀表板。
    1. 觀察 ELB 指標,並解釋其隨時間的變異性。
    2. https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-cloudwatch-metrics.html

6. 進一步學習的高階概念

  1. 混合雲端 -- 內部資料中心與公有雲端。
  2. 遷移:從內部資料中心至公有雲端。
    1. 應用程式程式碼遷移。
    2. 資料庫遷移。
  3. DevOps
    1. 基礎設施即代碼(Infrastructure as Code)。
    2. AWS Cloud Formation 模板。
  4. 自動擴展
    1. 使用 AWS CloudWatch 指標來判斷健康狀況。

最低要求

參加本課程無需特定前提條件。

適用對象

具備演算法基礎知識,並熟悉至少一種程式或腳本語言,但缺乏雲端運算實務經驗的軟體工程師/電腦科學家。

 21 小時

人數


每位參與者的報價

客戶評論 (1)

即將到來的課程

課程分類