【Hinemos】Hinemos HAオプションのフェイルオーバーを試してみる

前回、Hinemos 5.0にHAオプションをインストールするところまでご紹介しました。今回は、監視やジョブを実行している最中にMasterサーバの物理障害を擬似的に発生させ、監視やジョブがどう動くかを検証してみたいと思います。

Continue reading ‘【Hinemos】Hinemos HAオプションのフェイルオーバーを試してみる’ »

【Hinemos】Hinemos 5.0にHAオプションをインストールする

Hinemos HAオプションは、2台のHinemosマネージャをクラスタ化し、Hinemosの可用性を高めるためのオプション製品です。仮に、運用中に片方のHinemosマネージャサーバに物理的な故障が発生したとしても、HAオプションを適用していれば、もう片方で監視やジョブを引き続き実行することが可能となります。

今回は、Hinemos 5.0へ実際にHAオプションをインストールする様子をご紹介します。

Continue reading ‘【Hinemos】Hinemos 5.0にHAオプションをインストールする’ »

【RHEL7】freeコマンドについて

REHL7.1でインストールされるprocps-ng-3.3.10以降のfreeコマンドでは、従来のfreeコマンドと出力される内容が異なっていました。

・従来のfreeコマンドの実行結果

[root]# free -V
free from procps-ng 3.3.9
[root]# free
             total       used       free     shared    buffers     cached
Mem:       1018140     596136     422004        308        764     277552
-/+ buffers/cache:     317820     700320
Swap:       839676          0     839676

・procps-ng-3.3.10以降のfreeコマンド実行結果

[root]# free -V
free from procps-ng 3.3.10
[root]# free
              total        used        free      shared  buff/cache   available
Mem:        1017180      729424       91204       31580      196552      109876
Swap:        839676       32260      807416

大きな変更点としては、-/+ buffers/cacheの列が無くなった、availableという項目が加わったという点でしょうか。
他にも軽く調べたところ、usedに出力される値の算出方法も従来のfreeコマンドとは異なっているようです。

・従来のusedの算出方法

メモリ領域合計 - 空きメモリ領域
メモリ領域合計 : "/proc/meminfo"のMemTotalの値
空きメモリ領域 : "/proc/meminfo"のMemFreeの値

※ -/+ buffers/cache列のusedは、上記からバッファ領域(buffers)とキャッシュ領域(cached)を除いた値が出力されます

・procps-ng-3.3.10以降のusedの算出方法

メモリ領域合計 - 空きメモリ領域 - "buff/cache"の値
メモリ領域合計    : "/proc/meminfo"のMemTotalの値
空きメモリ領域    : "/proc/meminfo"のMemFreeの値
"buff/cache"の値  : "/proc/meminfo"のBuffers、Cached、Slabの値の合計

ちなみに、Hinemosのリソース監視の監視項目の”メモリ使用率(実メモリ)”や”実メモリ中のメモリ使用率(ユーザ)”では、従来のfreeコマンドのMem列や-/+ buffers/cache列のusedと同等のメモリ使用率が算出されます。
(HinemosではSNMPやWBEMを利用してメモリ情報を取得しているため、厳密には同じでは無いですが。)

もし、「procps-ng-3.3.10以降のfreeコマンドのusedと同等のメモリ使用率を監視したい!」という場合は、次のようなスクリプトを用意して、カスタム監視を実行するとよいでしょう。

#!/bin/bash

total=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`
free=`cat /proc/meminfo | grep MemFree | awk '{print $2}'`
buff=`cat /proc/meminfo | grep Buffers | awk '{print $2}'`
cache=`cat /proc/meminfo | grep ^Cached | awk '{print $2}'`
slab=`cat /proc/meminfo | grep Slab | awk '{print $2}'`
used=`echo "scale=2; ($total - $free - $buff - $cache - $slab) * 100 / $total" | bc`
echo "used,$used"

実行結果は次のようになります。

[root]# ./memUsed.sh
used,80.16

以上、簡単ですがfreeコマンドとリソース監視についての紹介でした。
(担当:KY)