什麼是 AWS AppConfig? - AWS AppConfig

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

什麼是 AWS AppConfig?

AWS AppConfig 功能旗標和動態組態可協助軟體建置器快速且安全地調整生產環境中的應用程式行為,而無需部署完整程式碼。 AWS AppConfig 可加快軟體發行頻率、改善應用程式彈性,並協助您更快速地解決緊急問題。

使用功能旗標,可以逐步向使用者發布新功能,並衡量這些變更的影響,然後再將新功能完全部署到所有使用者。透過操作旗標和動態組態,可以更新封鎖清單、允許清單、限流限制、日誌記錄詳細程度,以及執行其他操作調校,以快速回應生產環境中的問題。

開始使用 AWS AppConfig

下列影片可協助您了解 的功能 AWS AppConfig。

影片:簡介 AWS AppConfig

檢視 AWS AppConfig 功能的影片簡介。

Amazon Web Services YouTube 頻道上檢視更多 AWS 影片。

AWS AppConfig 使用案例

AWS AppConfig 支援廣泛的使用案例:

  • 功能旗標和切換 – 在受控環境中安全地將新功能發佈給客戶。如果您遇到問題,請立即轉返變更。

  • 應用程式調校 – 仔細引入應用程式變更,同時測試這些變更對生產環境中使用者的影響。

  • 允許清單或封鎖清單 – 控制對進階功能的存取,或立即封鎖特定使用者,而無需部署新的程式碼。

  • 集中式組態儲存 – 在所有工作負載中保持組態資料井然有序且一致。您可以使用 AWS AppConfig 部署存放在 AWS AppConfig 託管組態存放區、 AWS Secrets Manager、Systems Manager 參數存放區或 Amazon S3 中的組態資料。

優點概觀

下列簡短概觀概述使用 的好處 AWS AppConfig。

提高效率並更快速地發佈變更

搭配新功能使用功能旗標可加快發佈生產環境變更的程序。功能旗標可讓您使用幹線型開發撰寫軟體,而不是依賴需要在發行之前複雜合併的長時間開發分支。功能旗標可讓您安全地在使用者隱藏的 CI/CD 管道中推出發行前程式碼。當您準備好發佈變更時,您可以更新功能旗標,而無需部署新的程式碼。啟動完成後,旗標仍然可以做為區塊切換來停用新功能,而不需要轉返程式碼部署。

使用內建的安全功能,避免意外的變更或失敗

AWS AppConfig 提供下列安全功能,協助您避免啟用功能旗標或更新可能導致應用程式失敗的組態資料。

  • 驗證器:驗證器可確保在將變更部署至生產環境之前,您的組態資料在語法和語義上正確。

  • 部署策略:部署策略可讓您在幾分鐘或數小時內緩慢地將變更發佈至生產環境。

  • 監控和自動復原: AWS AppConfig 與 Amazon CloudWatch 整合,以監控應用程式的變更。如果您的應用程式因為組態變更錯誤而運作狀態不佳,且該變更在 CloudWatch 中觸發警示, AWS AppConfig 會自動復原變更,以將對應用程式使用者的影響降至最低。

安全且可擴展的功能旗標部署

AWS AppConfig 與 AWS Identity and Access Management (IAM) 整合,以提供精細的角色型存取服務。 AWS AppConfig 也與 AWS Key Management Service (AWS KMS) 整合,以進行加密和 AWS CloudTrail 稽核。在發佈給外部客戶之前,所有 AWS AppConfig 安全控制最初都是使用大規模使用服務的內部客戶進行開發和驗證。

AWS AppConfig 運作方式

本節提供如何 AWS AppConfig 運作的高階說明。

如何 AWS AppConfig 運作的圖表
1. 在您要管理的程式碼中識別組態值 AWS AppConfig

在 中建立組態設定檔之前 AWS AppConfig,我們建議您在程式碼中識別您要動態管理的組態資料 AWS AppConfig。良好的範例包括功能旗標或切換、允許和封鎖清單、記錄詳細資訊、服務限制和限流規則等。這些類型的組態經常變更,如果不正確,可能會導致問題。

如果您的組態資料已存在於雲端,例如參數存放區或 Amazon S3,您可以利用 AWS AppConfig 驗證、部署和延伸功能,進一步簡化組態資料管理。

2. 在 中建立組態設定檔 AWS AppConfig

組態描述檔包含一個 URI,可讓 AWS AppConfig 將組態資料定位在其儲存的位置和描述檔類型。 AWS AppConfig 支援兩種組態描述檔類型:功能旗標和自由格式組態。這兩種類型都可以透過從程式碼部署解耦功能版本,來降低軟體開發和部署的風險和複雜性。它們還透過階段推展實現持續交付和風險緩解。此外,功能旗標可讓實際使用者在生產環境中進行測試,而自由格式組態可讓您從其他 AWS 服務擷取組態資料。這兩種設定檔類型都允許更快速的反覆運算、實驗、個人化和軟體生命週期的有效管理。如需建立組態設定檔的詳細資訊,請參閱 在 中建立組態設定檔 AWS AppConfig

組態描述檔也可以包含選用的驗證程式,以確保您的組態資料在語法和語義上正確。當您啟動部署時, 會使用驗證程式 AWS AppConfig 執行檢查。如果偵測到任何錯誤,部署會回復到先前的組態資料。

建立組態設定檔時,您也可以在 中建立應用程式 AWS AppConfig。應用程式只是命名空間或組織建構,例如資料夾。

3. 部署組態資料

當您啟動部署時, 會 AWS AppConfig 執行下列任務:

  1. 使用組態設定檔中的位置路徑名稱,從基礎資料存放區擷取組態資料。

  2. 使用您在建立組態描述檔時指定的驗證器,以語法和語義方式驗證組態資料是否正確。

  3. 將資料副本傳送至 AWS AppConfig 代理程式,以供您的應用程式讀取。此副本稱為部署的資料

如需部署組態的詳細資訊,請參閱 在 中部署功能旗標和組態資料 AWS AppConfig

4. 擷取組態

若要擷取資料,您的應用程式會對 AWS AppConfig 代理程式快取已部署組態資料的本機副本的 localhost 伺服器進行 HTTP 呼叫。擷取資料是計量事件。 AWS AppConfig Agent 支援數個使用案例,如 中所述如何使用 AWS AppConfig 代理程式擷取組態資料

如果您的使用案例不支援 AWS AppConfig 代理程式,您可以直接呼叫 StartConfigurationSessionGetLatestConfiguration API 動作,將應用程式設定為輪詢 AWS AppConfig 組態更新。

如需擷取組態的詳細資訊,請參閱 在 中擷取功能旗標和組態資料 AWS AppConfig

的定價 AWS AppConfig

根據組態資料和特徵標記擷取, 的定價 AWS AppConfig 是pay-as-you-go。我們建議您使用 AWS AppConfig 代理程式來協助最佳化成本。如需詳細資訊,請參閱AWS Systems Manager 定價