Compute@Edge ログストリーミング: Amazon Kinesis Data Streams

Fastly の Compute@Edge サービスのリアルタイムログストリーミング機能では、ログファイルを Amazon Kinesis Data Streams に送信することができます。Amazon Kinesis Data Streams (KDS) は、さまざまなソースからのデータを継続的にキャプチャできるリアルタイムのデータストリーミングサービスです。

Fastly ログストリーミングと Amazon Kinesis Data Streaming の仕組み

Amazon KDS は、データレコードをストリームに送信します。各ストリームは、1以上のシャードによって構成されます。シャードは一定の処理能力を表し、ストリームの総処理能力は、シャード数の数によって決定されます。シャードの数は、ストリームの有効期間に渡って増加・減少させることが可能です。Fastly Kinesis のログエンドポイントはシャードの数を監視し、利用可能なシャードにおいてログデータの記録を一様に配信するため、シャード数の調整は重要です。ストリームのシャードの数が変更されると、Fastly Kinesis のログエンドポイントがそれに応じて自動的に調整されます。目標は、お客様に必要な設定のオーバーヘッドを最小限に抑えながら、ストリームのスループット能力を最大限に活用することです。

ログ量がストリームのスループット容量を超えた場合、Amazon KDS は Fastly にストリームがスロットルされていることを示すエラーを返し、一部のログが配信されない可能性があります。AWS CloudWatch は、Kinesis Data Streams のメトリクス (WriteProvisionedThroughputExceeded) を提供しており、これを用いてモニタリングすることで、必要に応じてストリーム容量の調整を行うことができます。

前提条件

Fastly Compute@Edge サービスのログエンドポイントとして Amazon KDS を追加する前に、AWS アカウントにて Fastly 専用の Identity and Access Management(IAM)認証情報を作成することをお勧めします。その際、一時的な認証情報を与えることができる、AWS IAM のロールを作成することをお勧めします。詳細については、Fastly ログ用 AWS IAM ロールの作成を参照してください。または IAM ユーザーを作成し、ユーザーにログストリームの kinesis:PutRecords および kinesis:ListShards 権限を与えることもできます。詳細については、Amazon の AWS の認証情報の解説・取得方法に関するガイドをご参照ください。

ログエンドポイントとしての Amazon Kinesis の追加

AWS のアカウントを作成し、Amazon Kinesis で IAM ユーザーを作成した後、以下の手順で Amazon KDS をログエンドポイントとして追加します。

  1. リモートログストリーミングの設定に関するガイドの情報をご参照ください。

  2. Amazon Kinesis Data Streams Create endpoint ボタンをクリックします。Create an Amazon Kinesis Data Streams endpoint ページが表示されます。
  3. Create an Amazon Kinesis Data Streams endpoint フィールドに以下のように入力します。
    • Name フィールドに、Compute@Edge コードに指定した名前を入力します。例えば、Rust コードの例では、名前は my_endpoint_name です。
    • Access method フィールドでは、User Credentials または IAM Role を選択します。
    • User Credentials を選択した場合、AWS アカウントで作成した Fastly 専用の IAM ユーザーに関連するアクセスキーとシークレットキーを入力します。詳細については、セキュリティの認証情報に関する Amazon ドキュメントをご参照ください。
    • IAM Role を選択した場合、KDS への Fastly のアクセスを許可する IAM の役割用の Amazon Resource Name (ARN) を入力します。詳細については、Fastly ログ専用 AWS IAM ロールの作成を参照してください。
    • Stream name フィールドに、ログデータの送信される Kinesis ストリームの名前を入力します。
    • Region メニューから、ログの送信先の地域を選択します。これは、Kinesis ストリームを作成した地域と一致する必要があります。
  4. Create ボタンをクリックすると、新しいログエンドポイントが作成されます。
  5. Activate ボタンをクリックして設定変更をデプロイします。
Back to Top