AWS AppConfig とは。 - AWS AppConfig

英語の翻訳が提供されている場合で、内容が矛盾する場合には、英語版がオリジナルとして取り扱われます。翻訳は機械翻訳により提供されています。

AWS AppConfig とは。

使用 AWS AppConfig、 の機能 AWS Systems Managerアプリケーション構成を作成、管理、迅速に導入できます。 AWS AppConfig は、あらゆる規模のアプリケーションへの制御された展開をサポートしており、組み込みの検証チェックと監視が含まれています。AWS AppConfig は、EC2 インスタンス、AWS Lambda、コンテナ、モバイルアプリケーション、または IoT デバイスでホストされているアプリケーションで使用できます。

特にアプリケーション構成をデプロイする際のエラーを防ぐため、 単純な誤字がn 予期しない停止、 AWS AppConfig には、バリデータが含まれています。バリデータは構文チェックまたはセマンティックチェックを実施して、デプロイする設定が意図したとおりに動作することを確認します。アプリケーション設定データを検証するには、設定に対して実行するスキーマまたは Lambda 関数を指定します。設定データが有効である場合にのみ、設定のデプロイまたは更新を処理することができます。

設定のデプロイ中、AWS AppConfig はアプリケーションをモニタリングしてデプロイが正常に実施されたことを確認します。システムでエラーが発生した場合、AWS AppConfig は変更をロールバックして、アプリケーションユーザーへの影響を最小限に抑えます。速度、ベイク時間、監視するアラームなど、デプロイ基準を含むアプリケーションまたは環境ごとにデプロイ戦略を設定できます。エラーモニタリングと同様、デプロイメントがアラームをトリガーすると AWS AppConfig が自動的に以前のバージョンにロールバックされます。

AWS AppConfig は複数のユースケースをサポートしています。次に例を示します。

  • アプリケーションのチューニング: 使用 AWS AppConfig 本番トラフィックでのみテストできるアプリケーションへの変更を慎重に導入します。

  • 機能の切り替え: 使用 AWS AppConfig 製品の発売や発表など、タイムリーな展開が必要な新機能をオンにできます。

  • リストを許可: 使用 AWS AppConfig 有料コンテンツにプレミアム登録者がアクセスできるようにします。

  • 運用上の問題: 使用 AWS AppConfig 依存関係やその他の外部要因がシステムに影響を与える場合のアプリケーションへのストレスを軽減します。

AWS AppConfig はどのように組織にとってメリットになりますか?

AWS AppConfig には次のような利点があります。

  • 複数のターゲットにわたって迅速に変更をデプロイする

    AWS AppConfig では、設定の変更を一元的にデプロイすることで、大規模なアプリケーションの管理が簡素化されます。AWS AppConfig は、Systems Manager Parameter Store、Systems Manager (SSM) ドキュメント、および Amazon S3 に保存された設定をサポートします。AWS AppConfig は、EC2 インスタンス、AWS Lambda、コンテナ、モバイルアプリケーション、または IoT デバイスでホストされているアプリケーションで使用できます。

  • 設定変更のエラーを減らす

    AWS AppConfig を使用すると設定を検証するルールを作成できるため、アプリケーションのダウンタイムを短縮できます。有効でない設定はデプロイできません。AWS AppConfig には設定を検証するための 2 つのオプションがあります。

    • 構文検証には、JSON スキーマを使用することができます。AWS AppConfig は JSON スキーマを使用して設定を検証し、設定の変更がアプリケーションの要件に準拠していることを確認します。

    • セマンティック検証では、設定を実行する AWS Lambda 関数をデプロイする前に呼び出すことができます。

  • 中断することなくアプリケーションを更新する

    AWS AppConfig は、重いビルドプロセスを実行したりターゲットをサービスから外したりせずに、実行時にターゲットに設定変更をデプロイします。

  • アプリケーション全体で変更のデプロイを制御する

    構成変更をターゲットに展開する場合、AppConfig では、展開戦略を使用してリスクを最小限に抑えることができます。デプロイ戦略のレート制御を使用して、アプリケーションターゲットが構成変更を受信する速度を決定できます。

サポートされるターゲットのタイプは何ですか?

AWS AppConfig は、EC2 インスタンス、AWS Lambda、コンテナ、モバイルアプリケーション、または IoT デバイスでホストされているアプリケーションで使用できます。ターゲットは、他の Systems Manager 機能に必要な Systems Manager SSM Agent または AWS Identity and Access Management (IAM) インスタンスプロファイルを使用して設定する必要はありません。つまり、AWS AppConfig はアンマネージド型インスタンスで動作します。

AWS AppConfig の使用料金はかかりますか?

あり 詳細については、「AWS Systems Manager 料金表」を参照してください。

AWS AppConfig で動作するようにアプリケーションを変更する必要がありますか?

あり GetConfiguration API アクションを使用して、新しい設定更新をポーリングするようにアプリケーションを設定する必要があります。新規または更新された設定が準備できたら、AWS AppConfig は設定ファイルをデプロイ戦略の各ターゲットにデプロイします。

AWS AppConfig の仕組みを教えてください。

おおまかに言うと、AWS AppConfig を操作するプロセスは 3 つあります。

  1. アプリケーションで動作するように AWS AppConfig を設定します。

  2. アプリケーションコードを有効にして、定期的に AWS AppConfig を確認して設定データを受信します。

  3. 新規または更新された構成をデプロイする

アプリケーションで動作するように AWS AppConfig を設定します。

アプリケーションで動作するように AWS AppConfig を設定するには、3 つのタイプのリソースをセットアップします。

Resource 詳細

Application

AWS AppConfig のアプリケーションは、顧客に機能を提供するコードの論理単位です。たとえば、アプリケーションには、EC2 インスタンスで実行されるマイクロサービス、ユーザーによりインストールされたモバイルアプリケーション、および Amazon API Gateway や AWS Lambda を使用するサーバーレスアプリケーション、または他のユーザーに代わって実行する任意のシステムなどがあります。

: 環境

アプリケーションごとに、1 つ以上の環境を定義します。環境は、Beta または Production 環境内のアプリケーションなど、AWS AppConfig アプリケーションの論理的なデプロイメントグループです。アプリケーションの WebMobile、および Back-end といったコンポーネントを含む、アプリケーションのサブコンポーネントの環境を定義することもできます。環境ごとに Amazon CloudWatch アラームを設定できます。システムは、設定のデプロイ中にアラームをモニタリングします。アラームがトリガーされると、システムは設定をロールバックします。

設定プロファイル

A 構成プロファイル 有効 AWS AppConfig 保存場所の設定にアクセスします。設定を保存できる形式と場所は次のとおりです。

  • AWS AppConfig でホストされた設定ストア内の YAML、JSON、またはテキストドキュメント

  • Amazon Simple Storage Service (Amazon S3) バケット内のオブジェクト

  • Systems Manager ドキュメントストアのドキュメント

  • Parameter Storeのパラメータ

設定プロファイルにオプションのバリデータを含めて、設定データが構文的にもセマンティック的にも正しいことを確認することもできます。AWS AppConfig は、デプロイの開始時にバリデータを使用してチェックを実行します。エラーが検出されると、設定のターゲットに変更が加えられる前にデプロイが停止します。

アプリケーションコードを有効にして、定期的に AWS AppConfig を確認して設定データを受信する

GetConfiguration API アクションを使用すると、AWS AppConfig は制御された方法で動的な設定更新を実行できます。この API アクションを定期的に呼び出すように、アプリケーションコードを設定する必要があります。呼び出されると、コードは次の情報を送信します。

  • AWS AppConfig アプリケーション、環境、設定プロファイルの ID。

  • クライアント ID と呼ばれる一意のアプリケーションインスタンス識別子。

  • アプリケーションコードで認識されている最新の設定バージョン。

新しい設定がデプロイされる (つまり、構成の新しいバージョンが存在する) と、AWS AppConfig は GetConfiguration リクエストに応答し、新しい設定データを返します。

新規または更新された構成をデプロイする

AWS AppConfig を使用すると、アプリケーションのユースケースに最適な方法で設定をデプロイできます。変更を数秒でデプロイすることも、時間をかけてデプロイして変更の影響を評価することもできます。デプロイの制御に役立つ AWS AppConfig リソースを、デプロイ戦略と呼びます。展開戦略には、次の情報が含まれます。

  • デプロイにかかる合計時間。(DeploymentDurationInMinutes)。

  • 各間隔でデプロイされた設定を受信するターゲットの割合。(GrowthFactor)。

  • デプロイが完了し、自動ロールバックの対象とならないとみなすまで、アラームのために AWS AppConfig が監視する時間の合計。(FinalBakeTimeInMinutes)。

一般的なシナリオをカバーする組み込みのデプロイ戦略を使用することも、独自のデプロイ戦略を作成することもできます。デプロイ戦略を作成または選択したら、デプロイを開始します。デプロイを開始すると、StartDeployment API アクションが呼び出されます。呼び出しには、デプロイするアプリケーション、環境、設定プロファイル、および設定データバージョン(オプション)の ID が含まれます。この呼び出しには、使用するデプロイ戦略の ID も含まれます。ID は、設定データのデプロイ方法を決定します。

AWS AppConfig のサービスクォータとは何ですか?

Resource Quota

AWS AppConfig アプリケーション

100

デプロイ戦略

20

AWS AppConfig アプリケーションごとの環境

20

AWS AppConfig アプリケーションごとの設定プロファイル

100

注記

AWS AppConfig 設定を格納するサービスのクォータについては、「設定ストアのクォータと制限について」を参照してください。