我想知道為什麼 AWS Systems Manager Session Manager 沒有將日誌傳送到 Amazon Simple Storage Service (Amazon S3) 或 Amazon CloudWatch。
簡短描述
以下是 Session Manager 未將日誌傳送至 Amazon S3 或 CloudWatch 的原因:
- Session Manager 記錄設定不正確
- S3 儲存貯體權限、AWS Identity and Access Management (IAM) 政策不正確
- Amazon Virtual Private Cloud (Amazon VPC) 端點可達性問題
- IAM 角色缺少 CloudWatch 記錄所需權限
先決條件:
解決方法
**注意:**如果您在執行 AWS CLI 命令時收到錯誤,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確認您使用的是最新的 AWS CLI 版本。
確認 Session Manager 記錄組態
若要啟用記錄工作階段資料,請確認您已為 Amazon S3 或 CloudWatch Logs 設定了 Session Manager。
設定 CloudWatch Logs 時,請使用下列最佳做法:
- 檢閱 Session Manager 偏好設定,以確認您是否已開啟 CloudWatch Logs。
- 確認您指定了有效的日誌群組名稱。
- 確定指定的日誌群組存在於 CloudWatch 中。
檢查 Amazon S3 儲存貯體權限和 IAM 政策
若要讓 Session Manager 將日誌上傳至 Amazon S3,您與該執行個體關聯的 IAM 角色必須具備所需的權限。
若要對 Amazon S3 中缺少日誌的問題進行疑難排解,請執行下列操作:
- 檢查您的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體設定檔角色是否具有正確的 S3 IAM 權限,並包含 S3 儲存貯體的 ARN。
- 檢查 S3 儲存貯體政策是否允許執行個體設定檔角色作為主體,並在 S3 儲存貯體上執行所需的 S3 動作。
確認 Amazon VPC 端點的可達性
如果您的 Amazon EC2 執行個體無法存取網際網路,則必須為 Session Manager 建立 Amazon VPC 端點以記錄至 Amazon S3 或 CloudWatch。
檢查您的端對端網路,並確認對以下端點的 HTTPS 流量已開放:
- HTTPS://ec2.region-code.amazonaws.com
- HTTPS://ec2messages.region-code.amazonaws.com
- HTTPS://ssm.region-code.amazonaws.com
- HTTPS://ssmmessages.region-code.amazonaws.com
- HTTPS://s3.region-code.amazonaws.com
- HTTPS://monitoring.region-code.amazonaws.com
若要建立端點,請參閱以服務使用者身分連線到端點服務。
設定 CloudWatch 記錄的 IAM 政策
如果 CloudWatch 日誌群組中缺少工作階段或串流日誌,則執行個體設定檔角色沒有正確的 IAM 權限。
若要建立日誌串流並將日誌事件放入 CloudWatch 中,Session Manager 必須在 IAM 政策中具有下列權限:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"logs:CreateLogStream",
"logs:DescribeLogStreams",
"logs:PutLogEvents"
],
"Resource": [
"arn:aws:logs:REGION:ACCOUNT-ID:log-group:LOG-GROUP-NAME:*"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": "logs:DescribeLogGroups",
"Resource": "*"
}
]
}
注意:
- 在上述政策中,將 REGION、ACCOUNT-ID 和 LOG-GROUP-NAME 替換為您的 AWS 區域、AWS 帳戶 ID 和日誌群組名稱。
- 如果您使用 AWS Key Management Service (KMS) 客戶自管金鑰加密 CloudWatch 日誌群組,請授與執行個體設定檔角色使用該金鑰的權限。AWS KMS key 政策必須允許角色存取金鑰。
"Resource": "arn:aws:logs:us-east-1:123456789012:log-group:/aws/ssm/my-log-group:*"
其他疑難排解
若要對 CloudWatch Logs 問題進行疑難排解,請根據動作和時間戳記查看 AWS CloudTrail 事件歷史記錄。如需詳細資訊,請參閱 AWS CloudTrail 中記錄 CloudWatch Logs API 和主控台作業。
相關資訊
如何解決 AWS Systems Manager Session Manager 的問題?