EC2を簡単に監視できるmist.ioというSaaSを試してみた

mistiologo2

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

大阪オフィス周辺の中華料理屋を制覇したい市田です。
今回は、mist.ioというEC2インスタンスを簡単に監視できるサービスを紹介したいと思います。

mist.ioとは?

監視のSaasです。
サーバの監視などでよくあるのが、「ZabbixやNagiosといった監視専用のサーバは詳しくないけど、監視は必要なので簡単に監視できるものがあると嬉しい」という場面です。
今回のmist.ioは基本的にブラウザ上で全て完結できるので、設定に監視サーバの専門的な知識は必要ありません。

Mist.io gives you total visibility and control of your hybrid infrastructure

無料プラン

気になる料金ですが、mist.ioは無料プランが存在します。
無料プランの場合、登録可能なサーバは5台までのようですが、小規模な環境であれば意外と使えるサービスだと思います。

有料プラン

料金体系は以下の通りです。

プラン名 月額費用 利用可能台数
SMALL $150 50
MEDIUM $400 150
LARGE $750 300
ENTERPRISE Custtom 300以上

料金に関する詳細は下記のページになります。

Mist.io Pricing

mist.io登録

利用するにはアカウントを登録する必要があります。mist.ioのページから「GET STARTED」をクリックして行います。

Mist.io gives you total visibility and control of your hybrid infrastructure

mist.io TOP

登録なので「SIGN UP」をクリックします。

mist.io TOP

登録に使うアカウント種別を選択します。 今回は、EMAILで登録しました。

mist.io TOP

メールで登録すると確認用のメールを受信するので、本文中のリンクをクリックします。クリックすると下記のようにパスワードの設定画面になります。

mist.io TOP

パスワード設定が完了するとWelcome画面になりますので、そのままOKをクリックします。

mist.io TOP

クラウド設定

次にクラウドの登録を行います。
mist.ioはAWSの他にも様々なクラウドに対応しているので、AWS用の登録を行います。

mist.io TOP

EC2を選択します。

mist.io TOP

リージョンやEC2操作に必要なキー情報を登録します。
リージョンはまだムンバイリージョンには未対応でした。キー情報は予めEC2操作の権限をもったIAMを用意しておきます。

mist.io TOP

ここまでできると管理画面にアクセスできます。

mist.io TOP

先ほどの画面で「MACHINES」をクリックすると、該当アカウントのEC2インスタンスの一覧が表示されます。
マネジメントコンソールで表示されるものと同じです。

mist.io TOP

一覧のインスタンスをクリックすると、詳細情報が見られます。

mist.io TOP

監視の有効化

先ほどの詳細画面で「ENABLE MONITORING」をクリックすると対象インスタンスの各種情報を取得してグラフ表示と監視を開始することができます。

Web Console

確認のポップアップはYesをクリックします。

no ssh

先ほどの「ENABLE MONITORING」をクリックするとmist.ioからSSHアクセス経由でエージェントがインストールされるようです。

ただし、SSH鍵の登録をしていない場合は、mist.ioからSSHできないので、次のようなポップアップが出てきます。
ポップアップに記載されているコマンドを直接サーバ側で実行すれば監視エージェントがインストールできます。この場合、SSH鍵の登録は必要有りません。

no ssh

エージェントのインストールが完了すると、グラフが表示されるようになります。
10秒間隔で自動更新されるようです。

上側の「LAST 10 MINS」の箇所は範囲を1時間毎や1日毎、1ヶ月毎に変更可能です。さらに任意の範囲にすることも可能です。

no ssh

グラフ上にマウスを載せると、詳細な情報が表示できます。

no ssh

グラフの追加

デフォルトの他にグラフを追加することができます。
グラフの一番下にある「ADD GRAPH」クリックします。

no ssh

プルダウンから追加したいカテゴリを選択します。

no ssh

メモリーの場合だと、さらに次のグラフを取得できます。

no ssh

試しに「buffered_percent」を選んでみました。

no ssh

メール通知してみる

先ほどのグラフ追加の項目の下にある「ADD RULE」を追加します。

no ssh

次のような設定が出てくるので、それぞれの四角になっている箇所を希望に合わせて変更します。

no ssh

「alert」になっている四角をクリックすると、実行したいアクションを選択できます。
ここではメール通知の「ALERT」を選択してみます。

action

下記の内容で登録してみました。
これは、「5分以内のRAMの値が20%を超えたら、登録したアドレスにメール通知」という内容になります。

action

実際に下記のようなメールを受信しました。

action

他の選択肢にある「REBOOT」「DESTROY」は文字の通りです。
「COMMAND」は任意のコマンドを実行できるものですが、SSH鍵がmist.ioに登録されていないとエラーになります。

カスタムルールの繰り返し実行

手元で確認した限りでは、一度メール通知が実行されると、次の監視タイミングが来ても同様のメールは送信されてきませんでした。
これは、おそらく同じアラームが何度も飛ぶのを抑止する為と思われます。その為、再度保存しなおしてやれば、このルールが再びアクティブになります。

その他のインスタンス管理機能

各インスタンスの管理画面からも、対象インスタンスを操作することができます。
画面下部の「ACTIONS」をクリックします。

action

SSH鍵の登録がない状態だとRENAMESHUTDOWNREBOOTDESTROYが選択可能です。
RENAMEはNameタグの内容を変更することができます。AWSマネジメントコンソールでできることと変わらないですね。

action

オープンソース版

実は、mist.ioにはオープンソース版もあります。

Open Source Mist.io

これはmist.ioのサーバを自分のサーバ上に構築できるものですが、残念ながら監視機能がありません。
その為、できることは管理画面からインスタンスを再起動したりする程度です。これならマネジメントコンソールで対応できてしまいます。

しかし、「mist.ioの中の人」に質問してみたところ、モニタリング機能も今後数ヶ月のうちに、オープンソース版にも実装していく予定があるとのことです。

これは非常に楽しみですね。

最後に

mist.ioはエージェントをインストールする作業はありますが、監視サーバに関する専門的な知識がなくても、簡単な監視サービスは実現できそう、という印象のサービスです。

SSH鍵を登録するとできることがさらに増えるようですので、次回詳しく紹介したいと思います。

以上です。