joppot

コピペで絶対動く。説明を妥協しない

サーバ

ec2のメモリ状態をwatchとfreeで監視する

投稿日:2017年3月13日 更新日:

Pocket


概要

みなさんこんにちはcandleです。今回はec2のメモリをリアルタイムで監視する方法を紹介します。
ec2サーバはt2.microだとメモリが1GBしかなく、その上でcomposerやrails、mysqlを動かすとメモリーがカツカツになることがあります。

そんな時、メモリを監視して、サーバをチューニングできれば便利です。


前提

適当なEC2サーバがある

SPONSORED LINK


メモリを監視するfreeコマンド

現在のメモリの状態を表示するコマンドは「free」です。
試しに、実行してみましょう。

free

tatalで1GBあり、300MBほど使われているのが分かります。
freeコマンドだけでは、常に状態を監視し続けることはできません。

watchコマンドとの組み合わせ

そこで、watchコマンドと組み合わせて、表示してみましょう。
watchコマンドは一般に以下のように使います。

watch -n 間隔 繰り返したいコマンド

例えば、1秒ごとに freeを実行したい場合は以下のようにします。

watch -n 1 free

しばらく見ていると、usedやfreeの値が変わります。
終了したい時はctrl + cで終わります。

変更された箇所に色をつける -d フラグも便利です。

watch -n 1 -d free



関数にしておく

よく使う場合は関数にしておくと便利です。
.bash_profileを開いて、以下を記述します。
lfはloop freeの略です。

function lf(){
  watch -n 1 -d free
}

保存したら、.bash_profileを読み込み

source ~/.bash_profile

lfコマンドを実行すると、メモリの監視ができます。

lf



まとめ

サーバの様々な場面で使用できるでしょう。

スポンサードリンク

「為になったなぁ」と思ったら、シェアお願いします。

-サーバ
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

wordpressのカテゴリーを削除する

概要 みなさんこんにちはcandleです。卒論が忙しくて、ブログの更新ができませんでした。まだ、全て終わったわけじゃありませんが、ちょくちょく更新していきます。 今回はwordpressのカテゴリー削 …

td-agentでRails 4のproduction.logを取得する

English 日本語 概要 みなさんこんにちはcandleです。今回はrails 4のproduction ログをtd-agentで取得してみたいと思います。 数年前にも同じ記事を書いたのですが、説 …

vagrantで取得したlet’s encryptのssl証明書をec2のnginxで使用する

概要 みなさんこんにちはcandleです。今回は取得したvagrantのubuntuで取得したlet’s encryptを実際に使用してみます。 もしも、まだ取得してない人は前回の記事を確 …

CentOSのfluentdでapacheのaccess logとerror logを取得する

概要 みなさんこんにちはcandleです。今回はapacheのアクセスログとエラーログをfluentdを使って取得して見たいと思います。 前提 一台のサーバ上にapacheサーバとfluentdサーバ …

fluentdのs3 pluginを使用して日付区切りでログデータをS3に送信する

概要 みなさんこんにちはcandleです。今回はfluentdのs3プラグインを使用して、railsなどのログを日単位でS3に投げる方法を紹介します。もちろん、応用して年単位とか月単位、時間単位で区切 …

プロフィール


ベンチャー企業のCTOをやってます。大学時代にプログラミングを始め、javaから入門し、C++へて、PHPへと進み、会社ではRailsを使用。自動化が大好きなプログラマー

twitter

スポンサードリンク

アーカイブ