步驟 1:設定 AWS 服務 - Microsoft Windows 的 Amazon Kinesis Kinesis 代理程式

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 1:設定 AWS 服務

遵循這些步驟,準備您的環境,使用 Amazon Simple Storage Service (Amazon S3)。如需詳細資訊和事前準備,請參閱教學課程:使用適用於視窗的 Kinesis 代理程式將 JSON 日誌檔串流到 Amazon S3

使用 AWS 管理主控台配置 AWS Identity and Access Management (IAM)、Amazon S3、Kinesis Data Firehose 管和 Amazon Elastic Compute Cloud (Amazon EC2),以準備從 EC2 執行個體到 Amazon S3 的串流日誌資料。

設定 IAM 政策及角色

建立以下政策,授權 Windows 版 Kinesis Agent 將記錄串流至特定 Kinesis Data Firehose 交付串流:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor1", "Effect": "Allow", "Action": [ "firehose:PutRecord", "firehose:PutRecordBatch" ], "Resource": "arn:aws:firehose:region:account-id:deliverystream/log-delivery-stream" } ] }

Replaceregion,並包含將建立 Kinesis Data Firehose 交付串流的 AWS 區域名稱 (us-east-1,例如)。將 account-id 替換成將建立交付串流 AWS 帳戶的 12 位數帳戶 ID。

在導覽列中,選擇支援,然後Support 中心。您目前登入的 12 位數帳戶號碼 (ID) 會顯示在Support 中心導覽窗格。

使用以下程序建立政策。將政策命名為 log-delivery-stream-access-policy

使用 JSON 政策編輯器建立政策
  1. 登入 AWS 管理主控台,然後前往 https://console.aws.amazon.com/iam/ 開啟 IAM 主控台。

  2. 在左側的導覽窗格中,選擇 Policies (政策)

    如果這是您第一次選擇 Policies (政策),將會顯示 Welcome to Managed Policies (歡迎使用受管政策) 頁面。選擇 Get Started (開始使用)

  3. 在頁面頂端,選擇 Create policy (建立政策)

  4. 請選擇 JSON 索引標籤。

  5. 輸入 JSON 政策文件。如需 IAM 政策語言的詳細資料,請參閱IAM JSON 政策參考中的IAM 使用者指南

  6. 完成時,選擇 Review policy (檢閱政策)。Policy Validator (政策檢查工具) 會回報任何語法錯誤。

    注意

    您可以隨時切換 Visual editor (視覺化編輯器)JSON 標籤。但是,如果您進行變更或選擇檢閱政策中的Visual editor (視覺化編輯器)索引標籤,IAM 可能會調整您的政策結構以針對視覺化編輯器進行最佳化。如需詳細資訊,請參閱「」調整政策結構中的IAM 使用者指南

  7. Review policy (檢閱政策) 頁面上,為您正在建立的政策輸入 Name (名稱)Description (描述) (選用)。檢閱政策 Summary (摘要) 來查看您的政策所授予的許可。然後選擇 Create policy (建立政策) 來儲存您的工作。

螢幕擷取畫面,示範如何針對 Kinesis Data Firehose 建立 IAM 政策。
建立 Kinesis Data Firehose 存取 S3 儲存貯體的角色
  1. 使用先前的程序,建立名為 firehose-s3-access-policy 的政策,使用以下 JSON 定義:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:AbortMultipartUpload", "s3:GetBucketLocation", "s3:GetObject", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:PutObject" ], "Resource": [ "arn:aws:s3:::bucket-name", "arn:aws:s3:::bucket-name/*" ] }, { "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region:account-id:log-group:firehose-error-log-group:log-stream:firehose-error-log-stream" ] } ] }

    bucket-name 替換成存放日誌的唯一儲存貯體名稱。Replaceregion,並使用將建立 CloudWatch Logs 群組和日誌串流的 AWS 區域。這些是用來記錄透過 Kinesis Data Firehose 將資料串流至 Amazon S3 期間所發生的任何錯誤。將 account-id 替換成將建立日誌群組及日誌串流帳戶的 12 位數帳戶 ID。

    螢幕擷取畫面,示範如何建立 IAM 政策,允許 Amazon S3 存取 Amazon S3。
  2. 在 IAM 主控台的導覽窗格中,選擇 Roles (角色),然後選擇 Create role (建立角色)。

  3. 選擇AWS 服務角色類型,然後選擇Kinesis服務。

  4. 選擇Kinesis Data Firehose針對使用案例,然後選擇下一頁: 許可。

  5. 在搜尋方塊中,輸入firehose-s3-access-policy、選擇政策,然後選擇下一頁: 檢閱

  6. Role name (角色名稱) 方塊中,輸入 firehose-s3-access-role

  7. 選擇 Create Role (建立角色)。

建立角色,以與將執行 Windows S3 執行個體的執行個體描述檔建立關聯
  1. 在 IAM 主控台的導覽窗格中,選擇 Roles (角色),然後選擇 Create role (建立角色)。

  2. 選擇AWS 服務角色類型,然後選擇EC2

  3. 選擇下一頁: 許可。

  4. 在搜尋方塊中,輸入 log-delivery-stream-access-policy

  5. 選擇政策,然後選擇下一頁: 檢閱

  6. Role name (角色名稱) 方塊中,輸入 kinesis-agent-instance-role

  7. 選擇 Create Role (建立角色)。

建立 Amazon S3 儲存貯體

建立 Kinesis Data Firehose 串流日誌的 S3 儲存貯體。

建立用於存放日誌的 S3 儲存貯體
  1. 前往 https://console.aws.amazon.com/s3/ 開啟 Amazon S3 主控台。

  2. 選擇 Create bucket (建立儲存貯體)

  3. Bucket name (儲存貯體名稱) 方塊中,輸入您在設定 IAM 政策及角色中所選擇的唯一 S3 儲存貯體名稱。

  4. 選擇應建立儲存貯體的區域。這通常是和您意圖建立 Kinesis Data Firehose 交付串流和 Amazon S3 執行個體區域相同的區域。

  5. 選擇 Create (建立)。

建立 Kinesis Data Firehose 交付串流

建立 Kinesis Data Firehose 交付串流,將串流記錄存放在 Amazon S3 的 Kinesis Data Firehose 交付串流。

建立 Kinesis Data Firehose 交付串流
  1. 開啟 Kinesis Data Firehose 主控台,網址為https://console.aws.amazon.com/firehose/

  2. 選擇 Create Delivery Stream (建立交付串流)

  3. Delivery stream name (交付串流名稱) 方塊,輸入 log-delivery-stream

  4. 針對 Source (來源),選擇 Direct PUT or other sources (直接 PUT 或其他來源)

    螢幕擷取畫面,示範如何在建立 Kinesis Data Firehose 交付串流時指定來源。
  5. 選擇下一步

  6. 再次選擇 Next (下一步)

  7. 針對目標,選擇Amazon S3

  8. 針對 S3 bucket (S3 儲存貯體),選擇您在建立 Amazon S3 儲存貯體中建立的儲存貯體名稱。

    螢幕擷取畫面,示範如何在建立 Kinesis Data Firehose 交付串流時指定目標。
  9. 選擇下一步

  10. Buffer interval (緩衝間隔) 方塊中,輸入 60

  11. IAM role (IAM 角色) 下方,選擇 Create new or choose (建立新項目或選擇)

  12. 針對 IAM role (IAM 角色),選擇 firehose-s3-access-role

  13. 選擇 Allow (允許)。

    螢幕擷取畫面,示範如何在建立 Kinesis Data Firehose 交付串流時設定選項和安全。
  14. 選擇下一步

  15. 選擇 Create Delivery Stream (建立交付串流)

建立 Amazon EC2 執行個體以執行適用於視窗的 Kinesis 代理程式

建立 EC2 執行個體,使用 Windows 版本 Kinesis Agent,透過 Kinesis Data Firehose 串流日誌記錄。

建立 EC2 執行個體
  1. https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 遵循 Amazon EC2 Windows 執行個體入門中的說明,使用下列額外步驟:

    • 針對執行個體的 IAM role (IAM 角色),選擇 kinesis-agent-instance-role

    • 如果您尚未擁有公用網際網路連線的虛擬私有雲端 (VPC),請遵循使用 Amazon EC2 進行設定中的Amazon EC2 執行個體使用者指南

    • 建立或使用安全群組,限制對執行個體的存取只能來自您的電腦,或是您組織的電腦。如需詳細資訊,請參閱「」使用 Amazon EC2 進行設定中的Amazon EC2 執行個體使用者指南

    • 若您指定現有的金鑰對,請確認您有權存取金鑰對的私有金鑰。或者,建立新的金鑰對並將私有金鑰儲存在安全的位置。

    • 在繼續之前,請等待執行個體進入執行中狀態,並完成全部兩項運作狀態檢查。

    • 您的執行個體需要一個公有 IP 地址。如果尚未配置,請依照彈性 IP 地址中的Amazon EC2 執行個體使用者指南

後續步驟

步驟 2:安裝、設定及執行適用於視窗的 Kinesis 代理程式