翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
とは AWS AppConfig
AWS AppConfig 機能フラグと動的設定により、ソフトウェアビルダーは完全なコードデプロイを行わずに本番環境のアプリケーション動作を迅速かつ安全に調整できます。 AWS AppConfig はソフトウェアリリース頻度を高速化し、アプリケーションの耐障害性を向上させ、緊急の問題をより迅速に対処できます。機能フラグを使用すると、新しい機能をすべてのユーザーに完全にデプロイする前に、徐々にユーザーにリリースし、それらの変更の影響を測定できます。運用フラグと動的設定を使用すると、ブロックリスト、許可リスト、スロットリング制限、ロギングの冗長性を更新したり、その他の運用上の調整を行うことで、実稼働環境の問題に迅速に対応できます。
注記
AWS AppConfig は の一機能です AWS Systems Manager。
効率を高め、変更をより早くリリースできます
機能フラグを新機能とともに使用すると、変更内容を本番環境にリリースするプロセスがスピードアップします。機能フラグを使用すると、リリース前に複雑なマージを必要とする長期にわたる開発ブランチに頼る代わりに、トランクベースの開発を使用してソフトウェアを作成できます。機能フラグを使用すると、ユーザーには見えない CI/CD パイプラインでリリース前のコードを安全にロールアウトできます。変更をリリースする準備ができたら、新しいコードをデプロイしなくても機能フラグを更新できます。リリースが完了した後も、フラグはコードのデプロイをロールバックしなくても新しい機能や無効にするブロックスイッチとして機能します。
組み込みの安全機能により、意図しない変更や障害を回避できます
AWS AppConfig には、機能フラグを有効にしたり、アプリケーション障害を引き起こす可能性のある設定データを更新したりしないように、次の安全機能が用意されています。
-
バリデーター: バリデーターが、本番環境にデプロイする前に、構文的にもセマンティック的にも正しいことを確認します。
-
デプロイ戦略: この戦略を使うと、数分または数時間かけて変更を製品環境にゆっくりとリリースできます。
-
モニタリングと自動ロールバック: は Amazon と AWS AppConfig 統合され 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 、 AWS AppConfig ホストされた設定ストア、、 AWS Secrets Manager Systems Manager パラメータストア、または Amazon S3 に保存されている設定データをデプロイできます。
を使用する利点 AWS AppConfig
AWS AppConfig は、組織に次の利点を提供します。
-
顧客の予期しないダウンタイムを削減します
AWS AppConfig は、設定を検証するためのルールを作成できるようにすることで、アプリケーションのダウンタイムを軽減します。有効でない設定はデプロイできません。 は、設定を検証するために次の 2 つのオプション AWS AppConfig を提供します。
-
構文検証では、JSONschema を使用できます。JSONスキーマを使用して設定 AWS AppConfig を検証し、設定変更がアプリケーション要件に準拠していることを確認します。
-
セマンティック検証 AWS AppConfig では、 が所有している AWS Lambda 関数を呼び出して、設定内のデータを検証できます。
-
-
一連ののターゲットにわたって迅速に変更をデプロイします
AWS AppConfig は、中央の場所から設定変更をデプロイすることで、大規模なアプリケーションの管理を簡素化します。 は、 AWS AppConfig ホストされた設定ストア、Systems Manager パラメータストア、Systems Manager (SSM) ドキュメント、および Amazon S3 に保存されている設定 AWS AppConfig をサポートします。は AWS AppConfig 、EC2インスタンス、コンテナ AWS Lambda、モバイルアプリケーション、または IoT デバイスでホストされているアプリケーションで使用できます。
ターゲットは、Systems Manager SSM エージェントまたは他の Systems Manager 機能に必要なIAMインスタンスプロファイルで設定する必要はありません。つまり、 はアンマネージドインスタンスで AWS AppConfig 動作します。
-
中断することなくアプリケーションを更新する
AWS AppConfig は、重いビルドプロセスやターゲットのサービス停止を行わずに、実行時にターゲットに設定変更をデプロイします。
-
アプリケーション全体で変更のデプロイを制御する
設定変更をターゲットにデプロイする場合、 AWS AppConfig ではデプロイ戦略を使用してリスクを最小限に抑えることができます。デプロイメント戦略により、設定の変更を徐々にフリートに展開できます。デプロイ中に問題が発生した場合は、設定変更が大半のホストに届く前にロールバックできます。
AWS AppConfig の仕組み
このセクションでは、 AWS AppConfig の仕組みと開始方法の概要を説明します。
- 1. クラウドで管理したいコード内の設定値を特定します。
-
AWS AppConfig アーティファクトの作成を開始する前に、 を使用して動的に管理するコード内の設定データを特定することをお勧めします AWS AppConfig。良い例としては、機能フラグやトグル、許可リストと禁止リスト、ロギングの冗長性、サービス制限、スロットリングルールなどがあります。
設定データがすでにクラウドに存在する場合は、 AWS AppConfig 検証、デプロイ、拡張機能を活用して、設定データ管理をさらに効率化できます。
- 2. アプリケーションの名前空間を作成する
-
名前空間を作成するには、アプリケーションと呼ばれる AWS AppConfig アーティファクトを作成します。アプリケーションはフォルダのようなシンプルな組織構造です。
- 3. 環境の作成
-
AWS AppConfig アプリケーションごとに、1 つ以上の環境を定義します。環境は、
Beta
またはProduction
環境のアプリケーション、 AWS Lambda 関数、コンテナなどのターゲットの論理グループです。Web
、Mobile
、およびBack-end
など、アプリケーションのサブコンポーネントの環境を定義することもできます。環境ごとに Amazon CloudWatch アラームを設定できます。システムは、設定のデプロイ中にアラームをモニタリングします。アラームがトリガーされると、システムは設定をロールバックします。
- 4. 設定プロファイルの作成
-
設定プロファイルには、 URIが保存場所とプロファイルタイプで設定データを検索 AWS AppConfig できるようにする が含まれます。 AWS AppConfig は、機能フラグとフリーフォーム設定の 2 つの設定プロファイルタイプをサポートします。機能フラグ設定プロファイルは、 AWS AppConfig ホストされた設定ストアにデータを保存し、 URIは単に です
hosted
。フリーフォーム設定プロファイルの場合、「」で説明されているように AWS AppConfig、 AWS AppConfig ホストされた設定ストアまたは と統合されている任意の AWS サービスにデータを保存できますでのフリーフォーム設定プロファイルの作成 AWS AppConfig。設定プロファイルには、設定データが構文的および意味的に正しいことを確認するためのオプションのバリデータを含めることもできます。 は、デプロイの開始時にバリデータを使用して AWS AppConfig チェックを実行します。エラーが検出されると、デプロイは前の設定データにロールバックします。
- 5. 設定データをデプロイします
-
新しいデプロイを作成する際には、以下を指定できます。
-
アプリケーション ID
-
設定プロファイル ID
-
設定バージョン。
-
設定データをデプロイする環境 ID
-
変更をどのくらいの速さで反映させたいかを定義するデプロイ戦略 ID
StartDeployment API アクションを呼び出すと、 は次のタスク AWS AppConfig を実行します。
-
設定プロファイルの場所を使用して、基盤となるデータストアからURI設定データを取得します。
-
設定プロファイルに作成したときに指定したバリデータを使用して、設定データが構文的にも意味論的にも正しいことを確認します。
-
データのコピーをキャッシュして、アプリケーションがすぐに取り出せるようにします。このキャッシュされたコピーはデプロイされたデータと呼ばれます。
-
- 6. 設定を取得します。
-
AWS AppConfig エージェントをローカルホストとして設定し、エージェントに設定の更新 AWS AppConfig をポーリングさせることができます。エージェントは StartConfigurationSessionおよび GetLatestConfigurationAPIアクションを呼び出し、設定データをローカルにキャッシュします。データを取得するために、アプリケーションは localhost サーバーをHTTP呼び出します。 AWS AppConfig Agent は、「」で説明されているように、いくつかのユースケースをサポートしていますAWS AppConfig エージェントを使用して設定データを取得する方法。
AWS AppConfig エージェント がユースケースでサポートされていない場合は、 StartConfigurationSessionおよび GetLatestConfigurationAPIアクションを直接呼び出すことで、 AWS AppConfig 設定の更新をポーリングするようにアプリケーションを設定できます。
AWS AppConfigの使用を開始
以下のリソースは、 を直接操作するのに役立ちます AWS AppConfig。
動画: AWS AppConfig 機能フラグの概要
AWS AppConfig 機能フラグ機能の概要の動画をご覧ください。
アマゾン ウェブ サービス YouTube チャネル
次のブログは、 AWS AppConfig とその機能の詳細を理解するのに役立ちます。
SDKs
AWS AppConfig 言語固有の についてはSDKs、以下のリソースを参照してください。
の料金 AWS AppConfig
の料金は AWS AppConfig 、設定データと機能フラグの取得 pay-as-you-go に基づいています。エージェントを使用してコスト AWS AppConfig を最適化することをお勧めします。詳細については、「AWS Systems Manager 料金
AWS AppConfig クォータ
AWS AppConfig エンドポイントとサービスクォータ、および他の Systems Manager クォータに関する情報は、「」に記載されていますAmazon Web Services 全般のリファレンス。
注記
AWS AppConfig 設定を保存するサービスのクォータについては、「」を参照してください設定ストアのクォータと制限について。