LINUXでCLOUDWATCHのカスタムメトリクス導入

AWSのCloudwatchは標準で以下のものが見れます。 あ、CloudwatchってAWSモニタリングサービスです。

CPU使用率 ・ディスクI/O量・回数 ・ネットワーク情報量 ・状態 ってことで、デフォルトにはディスク使用率やメモリがないんですね。 なので手動で設定する必要があります。

以下が、設定方法です。

 

Amazon Linux にログインして、以下のコマンドを発行。

sudo yum install perl-DateTime perl-Sys-Syslog perl-LWP-Protocol-https

だだだっと流れた後に以下が出ればOKです!

Complete!

次に以下のコマンドでAmazon CloudWatch モニタリングスクリプトをダウンロードします。

wget http://aws-cloudwatch.s3.amazonaws.com/downloads/CloudWatchMonitoringScripts-1.2.1.zip

 

これを解凍すると、ディレクトリが作成されるので、配置する場所で実施すれば良いです。

unzip CloudWatchMonitoringScripts-1.2.1.zip
rm CloudWatchMonitoringScripts-1.2.1.zip
cd aws-scripts-mon

以下のコマンドを発行してみましょう。--verifyついていると、お試し実行です。

./mon-put-instance-data.pl --disk-space-util --disk-path=/ <span style="color: #ff0000;">--verify</span> --verbose

これとか

Successfully reported metrics to CloudWatch. Reference Id: ~~~

とかでたならOK!

Verification completed successfully. No actual metrics sent to CloudWatch.

こうなるのはエラーです。

ちなみに、CentOSとかだと出たように記憶しています。

Digest/SHAがないよと怒られています。

 

Can't locate Digest/SHA.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 . .) at AwsSignatureV4.pm line 23.
BEGIN failed--compilation aborted at AwsSignatureV4.pm line 23.
Compilation failed in require at CloudWatchClient.pm line 21.
BEGIN failed--compilation aborted at CloudWatchClient.pm line 21.
Compilation failed in require at ./mon-put-instance-data.pl line 86.
BEGIN failed--compilation aborted at ./mon-put-instance-data.pl line 86.

その時はこれ

sudo yum install -y perl-Digest-SHA

カスタムメトリクスは定期的にコマンド発行して、データをAWS上に格納していく必要があります。

クーロンを設定してみます。

crontab -e

以下を追加

*/5 * * * * /home/ec2-user/aws-scripts-mon/mon-put-instance-data.pl --disk-space-util --disk-path=/ --verbose
*/5 * * * * /home/centos/aws-scripts-mon/mon-put-instance-data.pl --mem-util --disk-space-util --disk-path=/

うん、いい感じ!

アフェリエイトもちょっと始めてみました(笑) オフィシャルでちょくちょくお世話になっていますが、ここのクーポンはお得(^_^)

クラウドソーシング「ランサーズ」