DevOps Engineering on AWS 教授如何結合使用工具、實務和 DevOps 的文化哲學,來改善組織在 AWS 上快速開發、交付和維護應用程式和服務的能力。本課程涵蓋持續整合 (CI)、持續交付 (CD)、微型服務、基礎設施即程式碼、監控和日誌記錄,以及通訊和協作等內容。
課程目標
在本課程中,您會了解如何執行以下事項:
- 列出小型 DevOps 團隊的優勢
- 列出一般小型 DevOps 團隊成員的角色和職責
- 利用 AWS Cloud9,編寫、執行程式碼和偵錯,並與開發團隊共用雲端型 IDE
- 建置持續整合/持續交付 (CI/CD) 管道,包括測試與安全性
- 針對各種環境開發 Git 分支策略並與 CI/CD 管道整合
- 使用 AWS CloudFormation,為軟體開發專案部署開發、測試和生產環境
- 在 AWS 上設計並實作可支援 DevOps 開發專案的基礎設施
- 建置適用於 AWS CloudFormation 範本的 CI/CD 管道
- 結合開發和營運的工作流程與職責,建立協同合作
- 使用 AWS CodeCommit 託管安全、可高度擴展的私有 Git 儲存庫
- 利用 Amazon Elastic Container Registry (Amazon ECR) 安全地存放 Docker 容器映像,並與 AWS CodeBuild 和 Amazon Elastic Container Service (Amazon ECS) 整合
- 使用 AWS CodeBuild 自動化程式碼建置、測試和封裝
- 將安全性整合到 CI/CD 管道工具和服務
- 實作常見的部署策略,例如「一次全部」、「滾動」和「藍/綠」部署
- 使用 AWS CodeDeploy,自動將軟體部署到 Amazon Elastic Compute Cloud (Amazon EC2)、內部部署運算、AWS ECS (Amazon EC2 / AWS Fargate) 及 AWS Lambda
- 使用 AWS CodePipeline 自動化發行管道 (建置、測試、部署)
- 使用 AWS 工具和技術監控應用程式和環境
目標對象
本課程適用於:
- 開發人員
- DevOps 工程師
- SysOps 工程師
- DevOps 架構師
- 系統管理員
先決條件
我們建議學員必須符合以下條件:
- 之前曾參加 System Operations on AWS 或 Developing on AWS 課程
- 一或多種高階程式設計語言的工作經驗,像是 C#、Java、PHP、Ruby、Python
- Linux 或 Windows 系統命令列層級的中級管理知識
- 具備兩年以上佈建、操作和管理 AWS 環境的經驗
課程大綱
- 模組 1 - DevOps 簡介
- 模組 2 - 基礎設施自動化
- 模組 3 - AWS 工具組
- 實驗室 1:使用 AWS CloudFormation 佈建和管理基本基礎設施
- 模組 4 - 使用開發工具的持續整合/持續交付 (CI/CD)
- 實驗室 2:使用 AWS CodeDeploy 將應用程式部署到 EC2 機群
- 實驗室 3:使用 AWS CodePipeline 將程式碼部署自動化
- 模組 5 - 微型服務簡介
- 模組 6 - DevOps 和容器
- 模組 7 - DevOps 和無伺服器運算
- 實驗室 4:使用 AWS Serverless Application Model (AWS SAM) 和 CI/CD 管道部署無伺服器應用程式
- 模組 8 - 部署策略
- 模組 9 - 自動化測試
- 模組 10 - 安全自動化
- 模組 11 - 組態管理
- 實驗室 5:使用 CI/CD 管道和 Amazon Elastic Container Service 執行藍/綠部署
- 模組 12 - 可觀測性
- 實驗室 6:將 AWS DevOps 工具用於 CI/CD 管道自動化
- 模組 13 - 參考架構
- 課程歸納
- 課程資源