首頁

AWS SAA-C03 口袋筆記 - 應用程式部署&管理

AWS Elastic BeanstalkAWS App RunnerAWS Amplify 都是 AWS 提供的不同雲端應用程式部署與管理服務,它們各自有不同的特點和用途。下面是它們之間的主要區別:

1. AWS Elastic Beanstalk

主要特點:

  • 全託管的應用程式部署服務:Elastic Beanstalk 是一個可以幫助開發者快速部署和管理應用程式的服務,無需關心底層基礎設施(如 EC2、負載均衡、監控等)。它會自動處理這些工作。
  • 多語言和平台支持:支持多種開發語言,如 Java、.NET、Node.js、Python、Ruby、PHP、Go 以及 Docker 等容器化應用。
  • 自動擴展和管理:根據流量和需求自動擴展,並且提供監控和日誌功能。
  • 高靈活性:開發者可以選擇對環境進行自定義配置,擁有更多的控制權。

適用場景:

  • 對基礎設施有一定要求,需要較高的靈活性來進行自定義配置的情況。
  • 適合傳統的 Web 應用程式或微服務架構的部署。

2. AWS App Runner

主要特點:

  • 專為容器化應用程式設計:App Runner 主要針對現代的容器化應用程式(例如使用 Docker 部署的應用)進行簡化部署與管理。它支持自動從 Git 存儲庫(如 GitHub 或 CodeCommit)或容器映像庫(如 Amazon ECR)拉取應用程式代碼,並直接進行部署。
  • 簡化的開發流程:App Runner 旨在簡化應用程式從開發到生產的部署流程,不需要開發者處理基礎設施的細節或配置。
  • 內建的自動擴展:與 Elastic Beanstalk 類似,App Runner 也會根據流量自動擴展容器應用程式。
  • 無需管理 EC2 實例:開發者無需直接管理 EC2 實例或設置負載均衡,App Runner 完全自動化這些工作。

適用場景:

  • 如果你的應用程式是基於容器(如 Docker)並希望快速部署並簡化基礎設施管理,App Runner 是一個不錯的選擇。
  • 開發者希望專注於應用程式本身,並希望避免配置和管理底層基礎設施。

3. AWS Amplify

主要特點:

  • 針對前端和全棧應用開發:Amplify 是一個針對前端開發者(尤其是 React、Vue、Angular 等 JavaScript 框架)和全棧應用程式開發的全託管平台。它不僅僅是部署服務,還包含了豐富的開發工具和服務。
  • 簡化的全棧開發和部署:Amplify 不僅支持前端應用程式(如 Web 和移動端應用程式),還可以與後端(如 GraphQL、REST API 和數據庫)進行無縫集成。
  • 強大的開發工具集:Amplify 提供了豐富的開發工具,支持本地開發、CI/CD(持續集成/持續部署)、身份認證、數據存儲和文件儲存等功能。
  • 與 AWS 服務緊密集成:Amplify 可以輕鬆與 AWS 的其他服務集成(例如 Amazon Cognito、AWS Lambda、S3、DynamoDB 等),使開發者能夠快速構建和擴展應用。

適用場景:

  • 如果你的應用程式是前端為主的 Web 或移動應用,並需要與後端服務(例如認證、數據庫、API 等)進行集成,Amplify 是一個非常適合的選擇。
  • 開發者希望以快速開發和部署為重點,並且希望簡化整個開發生命周期。

主要區別總結:

特點Elastic BeanstalkApp RunnerAmplify
目標用戶想要簡化雲端基礎設施管理的應用開發者需要簡化容器應用部署的開發者主要面向前端開發者和全棧應用開發者
支持的應用程式類型Web 應用、微服務、傳統應用程式容器化應用程式(如 Docker)Web 應用、移動應用、全棧應用
主要特色高度靈活,支持多種語言和框架,適合傳統應用自動部署容器,簡化基礎設施管理前端開發工具,與後端服務無縫集成
擴展性自動擴展,手動調整配置自動擴展容器應用自動擴展,基於前端和後端需求擴展
設置難度需要一定的配置和設置極為簡化,主要是容器應用的部署非常簡單,尤其對前端開發者友好

總結:

  • Elastic Beanstalk 更適合那些需要更多自定義和靈活性來管理傳統 Web 應用程式或微服務架構的開發者。
  • App Runner 主要面向需要部署容器化應用程式的開發者,並且不需要管理底層基礎設施。
  • Amplify 則是針對現代全棧應用開發的服務,特別是面向前端開發者,簡化了從前端到後端的開發、部署和擴展。

Reference: ChatGPT

AWS SAA-C03 口袋筆記 - Machine Learning

Amazon Rekognition 分析&辨識圖片或影片裡面的物件、人像、文字、場景的服務

Amazon Transcribe 將語音轉換為文字服務

Amazon Polly 將文字轉換為語音的服務

Amazon Translate 語音翻譯的服務

Amazon Lex 可辨識理解語音跟文字,提供聊天機器人互動的介面

Amazon Connect 虛擬聯絡中心,可與客服語音系統串接,提供人工智慧答錄

Amazon Comprehend 自然語言處理(Natural Language Process, NLP)的服務

  • Amazon Medical Comprehend 專門針對醫學的NLP
Amazon SageMaker 提供機器學習、模型訓練的平台

Amazon Forecast 提供歷史資料跟模型,預測商業結果

Amazon Kendra 智慧搜尋文件的服務

Amazon Personalize 個人化推薦的服務

Amazon Textract 從任何文件將文字擷取出來的服務


Reference

  • https://www.udemy.com/course/aws-certified-solutions-architect-associate-saa-c03

AWS SAA-C03 口袋筆記 - Identity & Access Management

 AWS Organization

  • 全球的服務, 允許同時管理多個AWS Accounts
  • 有分主要的management account, 和其他組織底下的member account
  • member account只能屬於一個organization底下
  • 集中帳戶、安全政策套用管理,單一帳單管理,享受集中管理帶來的價錢優惠。 
  • Organizational Units (OUs) 讓多個帳號分組在一個組織單位,以便用單一單位進行管理。把這個想像為IAM user group一樣, 只是後者管的IAM user.
    • OU可以是以環境去分配的(e.g. Dev, Prod...), 可以是以部門去分配的(e.g. RD, BD...), 可以是以專案去分配的(e.g. Proj1, Proj2...)
    • Service Control Policy (SCP) 用來管理組織底下的權限。IAM policies apply to OUs or Accounts, 進而去限制account底下的users / roles。
      • 不會套用在management account. 
      • 跟IAM一樣, 政策權限預設都是deny, 要特別allow才有。 

AWS Control Tower

  • 主要還是透過AWS Organization去建立、管理帳號,但這裡提供一個更簡單方便的地方,可以更快速、最佳實踐的方式建立多個環境、帳號、權限管理。
  • Guardrails 幫你持續治理所有帳號是否有符合最佳實踐的設定
    • Proactive controls: 透過AWS個服務本身管控 (e.g. CloudFormation)
    • Preventive controls: 透過SCP去管控
    • Detective controls: 透過AWS Config去監控

AWS IAM Identity Center (aka AWS Single Sign On)

  • 單一登入就能存取其他組織下的所有帳號。




Reference

  • https://www.udemy.com/course/aws-certified-solutions-architect-associate-saa-c03

AWS SAA-C03 口袋筆記 - Disaster Recovery & Migrations

AWS Database Migration Service (DMS)

  • 主要用來搬遷各種資料來源到另一個資料目的地
  • 資料來源跟目的地不一定要相同,例如Microsoft SQL Server -> Aurora
    • 須透過Schema Conversion Tool (SCT)
  • 資料來源跟目的地一樣就不需要用SCT,例如本地PostgreSQL -> RDS PostgreSQL
  • 會需要開EC2來跑DMS
  • vs DataSync, DataSync是用來搬移本地storage到AWS storage service。
  • 可以是一次性的搬遷或是持續性(透過Change Data Capture, CDC)




 

Reference

  • https://www.udemy.com/course/aws-certified-solutions-architect-associate-saa-c03