仕事でAWSを触る機会があり、記事にしてみます。
AWS いわゆるクラウドサービスですね。amazonが持っているインフラ基盤を借りて、そこにサーバーOSをインストールしてエンドユーザーにサービスを提供する、みたいな。
私も先日AWS上にサーバー立ててみました。
立てたのはいいですが、
「あー、テストしないとなー」
と思っていて、
「ん?クラウド上のサーバーに対して非機能テスト(どのぐらいの処理速度あんの?ってなテスト)ってどうやんだろ?」
当然天下のamazon様なんで「Cloud Watch」ってサーバーのパフォーマンスが見れるツール準備してました。
ただこのCloud Watch、CPUの使用率は見れるのですが一部デフォルトの状態だと確認できないものがあります。
- 「メモリ使用率」
- 「ディスク使用率」
これ確認したかったのにどうしようかな、、、と思い色んなサイト確認したのですが上手くいく手順もあったのですが、どうも私のやりたいことが完璧に載っているサイトがなかったので、結局自分で書いてみました。
ちなみにサーバーOSは「Red Hat Enterprise」です。
こんな感じでコマンド叩いてみました
#■AWS(cloud watch)のメモリ使用率等設定
#perlのインストール
sudo yum -y install perl-CPAN gcc perl-libwww-perl libyaml-devel openssl-devel
$ perl -MCPAN -e shell
#yes のあとエンター2回
cpan> o conf prerequisites_policy follow
cpan> o conf commit
cpan> install Bundle::LWP6 LWP
cpan> install YAML
cpan> install Crypt::SSLeay
#必要なパッケージをインストール
sudo yum -y install perl-DateTime perl-Sys-Syslog perl-LWP-Protocol-https
#スクリプト用ディレクトリの用意
sudo mkdir /usr/local/cloudwatch
cd /usr/local/cloudwatch
#upzipインストール
sudo yum install unzip
#スクリプトのダウンロード・解凍
sudo wget http://aws-cloudwatch.s3.amazonaws.com/downloads/CloudWatchMonitoringScripts-1.2.1.zip
sudo unzip CloudWatchMonitoringScripts-1.2.1.zip
sudo rm CloudWatchMonitoringScripts-1.2.1.zip
#設定ファイルの作成
cd aws-scripts-mon
sudo cp awscreds.template awscreds.conf
sudo vi awscreds.conf
#AWSアカウントのアクセスキーIDとシークレットキーを記入
AWSAccessKeyId=[アクセスキーID]
AWSSecretKey=[シークレットキー]
#cronにメモリ利用率を送信する設定を行う
sudo crontab -e
*/1 * * * * /usr/local/cloudwatch/aws-scripts-mon/mon-put-instance-data.pl –mem-util –mem-used –mem-avail –swap-util –disk-space-util –disk-path=/ –from-cron –aws-credential-file=/usr/local/cloudwatch/aws-scripts-mon/awscreds.conf
#テストラン(sudo いるかも)
./mon-put-instance-data.pl –mem-util –verify –verbose
#問題無ければsuccessfullyと返ってくる
#CloudWatch への送信確認(sudo いるかも)
./mon-put-instance-data.pl –mem-util –mem-used –mem-avail –swap-util
./mon-put-instance-data.pl –disk-space-util –disk-path=/ –aws-credential-file=/usr/local/cloudwatch/aws-scripts-mon/awscreds.conf
多分これでいけると思います。
最初perlのインストールするのを忘れてて、まったく機能せず焦りました。
cronの設定でメモリやら見たい項目を入れてます(mem-used とか)
何かの参考にしてみて下さい。
コメント