AWS - AppConfig


前言

許多架構師或是 DevOps 工程師在「安全地管理應用設定」會使用到 AppConfig 我們來介紹一下 AppConfig

AWS AppConfig 是 AWS System Manager(SSM) 的一部分,用來安全、可控地管理應用程式組態變更,支援**即時更新、版本控制、驗證與漸進式部署(Progressive Rollout)**。


為什麼需要 AppConfig

在傳統情況下

  • 應用設定(如 API URL、Feature Toggle、門檻值)都常常寫在程式碼當中或是環境變數裡面。
  • 更改設定通常需要重新啟動服務,重新部署
  • 若設定錯誤,可能導致大規模故障

AppConfig 解決了以上問題

  1. 把設定與程式碼分開
  2. 改設定不需要重啟應用
  3. 可設定「逐步發布(Canary/Linear)」,避免一次性錯誤影響所有使用者
  4. 可驗證設定正確性(JSON Schema/Lambda Validator)

架構概念

AppConfig 核心組成

元件說明
Application代表你的應用程式
Environment不同的部署環境
Configuration Profile設定來源與驗證方式(如從 S3、SSM Parameter Store,AppConfig Hosted)
Validator驗證設定內容是否正確(JSON Schema/Lambda Validator)
Deployment Strategy設定如何部署 (AllAtOne、Linear、Canary/Custom
Hosted Configuration/S3/Secrets Manager/Parameter Store設定的實際儲存位置