CloudWatchエージェントのインストール(メモリ、スワップ、ディスク監視)
作業概要
前回、CPU、EBSボリューム、トラフィックをダッシュボードで見れるようにしました。
ただ、CloudWatchエージェントをインストールしなければ監視できないものがまだなので今回やっていきます。
作業記録
AWSドキュメントに従って設定していきます。
・ロール作成 ----- ロール名 CloudWatchAgentServerRole ロールの説明 Allows EC2 instances to call AWS services on your behalf. 信頼されたエンティティ AWS のサービス: ec2.amazonaws.com ポリシー CloudWatchAgentServerPolicy, AmazonSSMManagedInstanceCore アクセス権限の境界 アクセス権限の境界が設定されていません ----- 参考:https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/create-iam-roles-for-cloudwatch-agent.html ・EC2にロールアタッチ 略 ・CloudWatchエージェントのインストール cd /usr/local/src wget https://s3.amazonaws.com/amazoncloudwatch-agent/centos/amd64/latest/amazon-cloudwatch-agent.rpm sudo rpm -U ./amazon-cloudwatch-agent.rpm 参考:https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-commandline-fleet.html ・collectdのインストール yum install epel-release yum install collectd --enablerepo=epel 参考:https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-custom-metrics-collectd.html ・CloudWatchエージェント設定ファイル作成 vi /opt/aws/amazon-cloudwatch-agent/bin/config.json ----- { "agent": { "metrics_collection_interval": 60, "run_as_user": "root" }, "metrics": { "append_dimensions": { "AutoScalingGroupName": "${aws:AutoScalingGroupName}", "ImageId": "${aws:ImageId}", "InstanceId": "${aws:InstanceId}", "InstanceType": "${aws:InstanceType}" }, "metrics_collected": { "collectd": { "metrics_aggregation_interval": 60 }, "disk": { "measurement": [ "used_percent" ], "metrics_collection_interval": 60, "resources": [ "*" ] }, "mem": { "measurement": [ "mem_used_percent" ], "metrics_collection_interval": 60 }, "swap": { "measurement": [ "swap_used_percent" ], "metrics_collection_interval": 60 } } } } ----- 参考:https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html ・コマンドラインでCloudWatchエージェントを開始する sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json 参考:https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/monitoring/install-CloudWatch-Agent-on-EC2-Instance-fleet.html #スワップ領域2G dd if=/dev/zero of=/swapfile1 bs=1M count=2048 chmod 600 /swapfile1 mkswap /swapfile1 swapon /swapfile1 CloudWatchのウィジェット追加から、"カスタム名前空間"にメトリクスが追加されていることを確認できればOK。
宿題
アラート設定
パラメータストアからエージェントのコンフィグを読み込むようにする