翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
とは AWS AppConfig
AWS AppConfig 機能フラグと動的設定により、ソフトウェアビルダーは完全なコードデプロイなしで本番環境のアプリケーション動作を迅速かつ安全に調整できます。 AWS AppConfig はソフトウェアリリース頻度を高速化し、アプリケーションの耐障害性を向上させ、緊急の問題をより迅速に対処できます。
機能フラグを使用すると、新しい機能をすべてのユーザーに完全にデプロイする前に、徐々にユーザーにリリースし、それらの変更の影響を測定できます。運用フラグと動的設定を使用すると、ブロックリスト、許可リスト、スロットリング制限、ロギングの冗長性を更新したり、その他の運用上の調整を行うことで、実稼働環境の問題に迅速に対応できます。
Get started with AWS AppConfig
次の動画は、 の機能を理解するのに役立ちます AWS AppConfig。
動画: の概要 AWS AppConfig
AWS AppConfig 機能の概要を動画でご覧ください。
アマゾン ウェブ サービス YouTube チャンネル
AWS AppConfig ユースケース
AWS AppConfig は、幅広いユースケースをサポートしています。
-
機能フラグとトグル — 管理された環境で、新しい機能を安全に顧客にリリースできます。問題が発生した場合は、変更を即座にロールバックできます。
-
アプリケーションのチューニング — アプリケーションの変更を慎重に導入し、その変更による影響を本番環境のユーザーにテストします。
-
許可リストまたは禁止リスト — 新しいコードをデプロイしなくても、プレミアム機能へのアクセスを制御したり、特定のユーザーを即座にブロックできます。
-
一元化された設定ストレージ — すべてのワークロードにわたって設定データを整理し、一貫性のある状態に保ちます。を使用して AWS AppConfig 、 AWS AppConfig ホストされた設定ストア、、 AWS Secrets Manager Systems Manager パラメータストア、または Amazon S3 に保存されている設定データをデプロイできます。
利点の概要
以下の簡単な概要では、 を使用する利点の概要を説明します AWS AppConfig。
- 効率を高め、変更をより早くリリースできます
-
機能フラグを新機能とともに使用すると、変更内容を本番環境にリリースするプロセスがスピードアップします。機能フラグを使用すると、リリース前に複雑なマージを必要とする長期にわたる開発ブランチに頼る代わりに、トランクベースの開発を使用してソフトウェアを作成できます。機能フラグを使用すると、ユーザーには見えない CI/CD パイプラインでリリース前のコードを安全にロールアウトできます。変更をリリースする準備ができたら、新しいコードをデプロイしなくても機能フラグを更新できます。リリースが完了した後も、フラグはコードのデプロイをロールバックしなくても新しい機能や無効にするブロックスイッチとして機能します。
- 組み込みの安全機能により、意図しない変更や障害を回避できます
-
AWS AppConfig には、機能フラグを有効にしたり、アプリケーション障害を引き起こす可能性のある設定データを更新したりしないように、次の安全機能が用意されています。
-
バリデーター: バリデーターが、本番環境にデプロイする前に、構文的にもセマンティック的にも正しいことを確認します。
-
デプロイ戦略: この戦略を使うと、数分または数時間かけて変更を製品環境にゆっくりとリリースできます。
-
モニタリングと自動ロールバック: Amazon CloudWatchは AWS AppConfig と統合して、アプリケーションの変更を監視します。不適切な設定変更が原因でアプリケーションが異常になり、その変更によって CloudWatch でアラームがトリガーされた場合、 は変更 AWS AppConfig を自動的にロールバックして、アプリケーションユーザーへの影響を最小限に抑えます。
-
- 安全でスケーラブルな機能フラグのデプロイ
-
AWS AppConfig は AWS Identity and Access Management (IAM) と統合され、サービスへのきめ細かなロールベースのアクセスを提供します。 AWS AppConfig また、 は暗号化と AWS CloudTrail 監査のために AWS Key Management Service (AWS KMS) とも統合されます。外部顧客にリリースされる前に、すべての AWS AppConfig 安全管理は、最初に を使用して開発され、大規模なサービスを使用する内部顧客によって検証されました。
の AWS AppConfig 仕組み
このセクションでは、 AWS AppConfig の仕組みの概要を説明します。
- 1. で管理するコードの設定値を特定する AWS AppConfig
-
で設定プロファイルを作成する前に AWS AppConfig、 を使用して動的に管理するコード内の設定データを特定することをお勧めします AWS AppConfig。良い例としては、機能フラグやトグル、許可リストと禁止リスト、ロギングの冗長性、サービス制限、スロットリングルールなどがあります。これらのタイプの設定は頻繁に変更され、正しくない場合は問題が発生する可能性があります。
Parameter Store や Amazon S3 など、設定データがクラウドに既に存在する場合は、 AWS AppConfig 検証、デプロイ、拡張機能を活用して、設定データ管理をさらに効率化できます。
- 2. で設定プロファイルを作成する AWS AppConfig
-
設定プロファイルには、特に、 がその保存場所とプロファイルタイプで設定データを見つける AWS AppConfig ことができる URI が含まれます。 AWS AppConfig は、機能フラグとフリーフォーム設定の 2 つの設定プロファイルタイプをサポートしています。どちらのタイプでも、コードデプロイから機能リリースを切り離すことで、ソフトウェア開発とデプロイのリスクと複雑さを軽減できます。また、ステージングされたロールアウトを通じて継続的な配信とリスクの軽減を可能にします。さらに、機能フラグにより実際のユーザーによる本番環境でのテストが可能になり、フリーフォーム設定により他の AWS サービスから設定データを取得できます。どちらのプロファイルタイプでも、ソフトウェアのライフサイクルの反復、実験、パーソナライゼーション、効率的な管理を高速化できます。設定プロファイルの作成の詳細については、「」を参照してくださいAWS AppConfigで設定プロファイルを作成します。。
設定プロファイルには、設定データが構文的および意味的に正しいことを確認するためのオプションのバリデータを含めることもできます。 は、デプロイの開始時にバリデータを使用してチェック AWS AppConfig を実行します。エラーが検出されると、デプロイは前の設定データにロールバックします。
設定プロファイルを作成するときは、 でアプリケーションも作成します AWS AppConfig。アプリケーションは、単に名前空間またはフォルダのような組織構造です。
- 3. 設定データをデプロイします
-
デプロイを開始すると、 は次のタスク AWS AppConfig を実行します。
-
設定プロファイルの場所パス名を使用して、基盤となるデータストアから設定データを取得します。
-
設定プロファイルに作成したときに指定したバリデータを使用して、設定データが構文的にも意味論的にも正しいことを確認します。
-
アプリケーションが読み取るためにデータのコピーを AWS AppConfig エージェントに送信します。このコピーはデプロイされたデータと呼ばれます。
設定のデプロイの詳細については、「」を参照してくださいAWS AppConfigへの機能フラグと設定データのデプロイ。
-
- 4. 設定を取得します。
-
データを取得するために、アプリケーションは AWS AppConfig 、エージェントがデプロイされた設定データのローカルコピーをキャッシュしたローカルホストサーバーに HTTP 呼び出しを行います。データの取得は計測イベントです。 AWS AppConfig Agent は、「」で説明されているように、いくつかのユースケースをサポートしていますAWS AppConfig エージェントを使用して設定データを取得する方法。
AWS AppConfig エージェント がユースケースでサポートされていない場合は、StartConfigurationSession および GetLatestConfiguration API アクションを直接呼び出すことで、 AWS AppConfig 設定の更新をポーリングするようにアプリケーションを設定できます。
設定の取得の詳細については、「」を参照してくださいAWS AppConfigで機能フラグと設定データを取得します。。
の料金 AWS AppConfig
の料金は、設定データと機能フラグの取得に基づくpay-as-you-go AWS AppConfig です。エージェントを使用してコスト AWS AppConfig を最適化することをお勧めします。詳細については、「AWS Systems Manager 料金