2015年2月9日月曜日

ZABBIXサーバでswap領域を作ってしまおう

今回はトリガーとアクションを追加して、前回まで出ている警告を対処する解説です。
概要としては、「swap領域が無かったら、swapファイルを作成してswap領域としてマウントする」になります。

Template_OS_LinuxにはすでにアイテムとしてTotal swap spaceというアイテムがあります。
swapの総容量を確認するアイテムです。



このアイテムに対して0だったらというトリガーを作ります。
Template_OS_Linuxの行のトリガーの文字をクリックします。



右上にあるトリガーの作成を押します。







名前を適当に入力します。(例: Trigger_No_Swap)







条件式の右にある追加を押します。







アイテムの右にある選択を押します。




右上のホストでTemplate_OS_Linuxを選びます。







一覧からTotal swap spaceを選びます。









関数には「前回の値=N」を選びます。
Nは0のままとします。







障害イベントを継続して生成にチェックを付けます。











深刻度に警告を選び、追加を押します。














以上で、追加を押します。

トリガーの一覧画面にTrigger_No_Swapが追加されました。


しばらくするとダッシュボードにTrigger_No_Swapに対しての警告が現れます。
Total swap spaceの監視間隔が3600秒になっているため、最大で1時間待つことになります。







続いてアクションを追加します。
設定メニューのアクションを押します。






右上にあるアクションの作成を押します。








名前を適当に入力します。(例: Action_No_Swap)

アクションの実行条件を押します。
新規条件でトリガー名となっている箇所をトリガーに変更します。








新規条件の右の選択の文字をクリックします。





右上のホストをTemplate_OS_Linuxにします。






Trigger_No_Swapの文字をクリックします。








新規条件の枠内にある追加の文字をクリックします。









アクションの実行内容を押します。






アクションの実行内容の枠内にある新規の文字をクリックします。














実行内容のタイプをリモートコマンドに変更します。
















ターゲットリストの枠内にある新規の文字をクリックします。
















ターゲットが現在のホストになっている状態で、枠内にある追加の文字をクリックします。
















コマンドに次のように入力します。
[ ! -f /swapfile ] && sudo dd if=/dev/zero of=/swapfile bs=1M count=512;
sudo chmod 600 /swapfile;
sudo mkswap /swapfile;
sudo swapon /swapfile;
















実行内容の詳細の枠内にある追加の文字をクリックします。






最後に追加を押します。
アクションが追加されました。




しばらくするとAction_No_Swapが実行され、swap領域が作成されます。
それにより警告が解消します。
Total swap spaceの監視間隔が3600秒になっているため、最大で1時間待つことになります。



















swap領域が作成され、警告が解消されました。
今後作成したサーバにTemplate_OS_Linuxを適用するだけで、swapの総容量が確認され、もし0byteだった場合には、swap領域が自動で作られ、警告が無くなります。
とても便利だと思います。

今回はここまでです。

0 件のコメント:

コメントを投稿