CloudWatchにログを転送するために、CloudWatchエージェントをインストールしました
CloudWatch Logsエージェントからの移行です
(CloudWatchエージェントは、ログストリームの集約可能なため)
OS は AmazonLinux2 64bitです
Linux ip-172-18-6-62.ap-northeast-1.compute.internal 4.14.77-81.59.amzn2.x86_64 #1 SMP Mon Nov 12 21:32:48 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
このあたりを参考にしました
CloudWatch エージェントのインストール
モジュールを持ってくる
wget https://s3.amazonaws.com/amazoncloudwatch-agent/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm
rpmをインストール
rpm -U ./amazon-cloudwatch-agent.rpm
エージェントインストール
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-config-wizard
ウィザードになり、取得する値の設定をできます
CloudWatch Logs Agentからの移行もできます!!!!嬉しい
# サービス起動(設定ファイル:/opt/aws/amazon-cloudwatch-agent/bin/config.json)
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json -s
サービス起動確認
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a status
ここまで来ると、CloudWatchLogsに出力されているのを確認できます
サービス停止
停止は以下
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -m ec2 -a stop
停止して設定ファイルを編集して、起動もできます
# 編集
vi /opt/aws/amazon-cloudwatch-agent/bin/config.json
# 起動
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json -s
設定ファイルの書き方は下記に
CloudWatch エージェント設定ファイルを手動で作成または編集する
その他
プライベートサブネットにNATゲートウェイを持っていない環境のため、
CloudWatchのエンドポイントにアクセスする用途で、VPCエンドポイントを使用しました
メトリクス用とログ用で異なるエンドポイントのため、少しハマりました笑
メトリクス用のエンドポイント名(東京リージョン)
com.amazonaws.ap-northeast-1.monitoring
CloudWatchLogs用のエンドポイント名(東京リージョン)
com.amazonaws.ap-northeast-1.logs
それでは、良いCloudWatchエージェントライフを