AWS AppConfig とは - AWS AppConfig

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS AppConfig とは

を使用するAWS AppConfigの機能であるAWS Systems Managerを使用して、アプリケーション設定を作成、管理し、迅速にデプロイします。次を使用できます。AWS AppConfigAmazon Elastic Compute Cloud (Amazon EC2) インスタンスでホストされているアプリケーションと、AWS Lambda、コンテナ、モバイルアプリケーション、または IoT デバイス。

タスクを簡略化AWS AppConfig

AWS AppConfigは、次のタスクを簡素化するのに役立ちます。

  • 設定

    Amazon Simple Storage Service (Amazon S3) から、設定をソースします。AWS AppConfigホスト設定、パラメータストア、Systems Manager ドキュメントストア。を使用するAWS CodePipeline統合を使用して、Bitbucket パイプライン、GitHub、およびAWS CodeCommit。

  • 検証

    アプリケーション設定のデプロイ中に、単純なタイプミスにより予期しない停止が起こりうる可能性があります。本番システムでのエラーを防止AWS AppConfigバリデータです。AWS AppConfigバリデータは、JSON スキーマを使用した構文チェックや、AWS Lambda関数を使用して、構成が意図したとおりに展開されるようにします。設定データが有効である場合にのみ、設定デプロイを処理します。

  • デプロイとモニタリング

    デプロイメント基準とレート制御を定義して、ターゲットが新しい構成を受信する方法を決定します。を使用するAWS AppConfigデプロイメント戦略を使用して、デプロイ速度、デプロイ時間、ベイク時間を設定できます。各デプロイメントを監視し、AWS AppConfigAmazon CloudWatch Events もしAWS AppConfigエラーが発生した場合、システムはデプロイをロールバックして、アプリケーションユーザーへの影響を最小限に抑えます。

AWS AppConfig ユースケース

AWS AppConfigは、以下のユースケースに役立ちます。

  • アプリケーションのチューニング— アプリケーションに変更を注意深く導入します。この変更は、本番トラフィックでテストできます。

  • 機能の切り替え:製品の発売や発表など、適切なタイミングでのデプロイが必要となる新機能をオンにします。

  • 許可リスト— プレミアム加入者が有料コンテンツにアクセスできるようにします。

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

AWS AppConfig を使用する利点

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

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

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

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

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

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

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

    ターゲットは、Systems Manager SSM Agent またはAWS Identity and Access Management(IAM) インスタンスプロファイルです。つまり、AWS AppConfig はアンマネージド型インスタンスで動作します。

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

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

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

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

の開始方法 AWS AppConfig

以下のリソースは、AWS AppConfig を直接使用する場合に役立ちます。

動画:AWS AppConfigの概要

の概要のビデオAWS AppConfig。(所要時間:9:12)

もっと見るAWSの動画は、Amazon Web Services YouTube チャンネル

以下のブログは、AWS AppConfigとその機能:

AWS AppConfig の仕組み

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

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

  2. Enable (Gems の有効化)アプリケーションコードを使用して、定期的にを確認して設定データを受信するAWS AppConfig。

  3. デプロイ新規または更新された設定。

以降のセクションでは、各ステップについて説明します。

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

を設定するにはAWS AppConfigアプリケーションで動作するように、3 つのタイプのリソースを設定します。これらを次の表に示します。

リソース 詳細

アプリケーション

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

環境

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

設定プロファイル

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

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

  • Amazon S3 バケット内のオブジェクト

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

  • パラメータストアのパラメータ

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

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

定期的にを確認して設定更新を受信するように、アプリケーションを設定する必要があります。GetConfigurationAPI アクション。新規または更新された設定が準備できたら、AWS AppConfig は設定ファイルをデプロイ戦略の各ターゲットにデプロイします。

呼び出されると、コードは次の情報を送信します。

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

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

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

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

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

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

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

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

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

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

注記

の詳細については、[AWS AppConfig言語固有の SDK の詳細については、「」を参照してください。AWS AppConfigSDK

AWS AppConfig の料金

AWS AppConfig 使用には料金が発生します。詳細については、AWS Systems Manager 料金を参照してください。

AWS AppConfig のクォータ

についての情報AWS AppConfigエンドポイントとサービスクォータと他の Systems Manager のクォータは、Amazon Web Services 全般のリファレンス

注記

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