
ナギオス – VMware 仮想マシンのスナップショットの確認
この投稿では、Nagiosが仮想インフラストラクチャ内のスナップショットの存在を監視するのにどのように役立つかを見ていきます, スナップショットを撮ったり、長期間放置したりすることの危険性は誰もが知っています… 中途半端なスナップショットを残すハングバックアップ… これに対抗するために, 優れたスクリプトで定期的なチェックインを自動化します!
Este script necesita que tengamos SSH habilitado en un host ESXi (せめて) para checkear la existencia de snapshots en los datastores de un host, no usará por tanto SNMP. El script, necesitará validarse contra el host ESXi a la hora de ejecutarse, por lo que deberemos configurar ssh fingerprint. Así el host ESXi confiará en el usuario que ejecuta el script desde la máquina de Nagios y no preguntará por los credenciales.
はじめに, será loguearnos en la shell de nuestro amado Nagios, ahí, nos logueamos con el usuario que ejecuta los scripts, en mi caso el usuario se que es ‘centreon-engine’ (ya que uso CES), por lo que nos logueamos, generamos las claves para nuestro usuario y copiamos la clave pública al host ESXi, al ser la primera vez que nos conectemos además confirmaremos con un ‘yes’ que confiamos en su firma.
[ソースコード]彼の – centreon-engine
ssh-keygen -t rsa
scp /var/lib/centreon-engine/.ssh/id_rsa.pub root@HOST_ESXI:/tmp[/ソースコード]
今, nos vamos al host ESXi, nos conectamos con un Putty o similar mediante SSH, y añadimos al fichero de claves de confianza la que acabamos de generar:
[ソースコード]cat /tmp/id_rsa.pub >> /etc/ssh/keys-root/authorized_keys[/ソースコード]
悪くありません, lo interesante empieza, もう, nos bajamos este script, lo copiamos al directorio /usr/lib/nagios/plugins/ y lo hacemos ejecutable:
Probamos a ejecutarlo, 目, al ejecutarlo como root nos pedirá validarnos, 私たちが望むなら, podemos hacer los pasos anteriores y copiar también la clave pública de root para que el host ESXi confíe en lo que vamos a ejecutar. そして、そうでない場合は, metemos la clave manualmente y pista! Deberemos especificar el host ESXi al que haremos la consulta y ademas de indicar primeramente el número de snapshots que permitiremos hasta que nos cante Warning, luego el valor a Critical y si queremos también la antiguedad en días que permitimos:
[ソースコード]./check_VM_snapshots HOST_ESXi NUM_SNAP_WARNING NUM_SNAP_CRITICAL DIAS_SNAP[/ソースコード]
Recordamos, creamos primero desde Centreon el Comando, から “構成” > “コマンド” > “足す…” o duplicamos de uno existente y completamos:
- コマンド名: コマンドに名前を付けます, en mi caso le pongo el mismo que el script para asociarlo más fácil.
- Check Type: Lo dejamos en Check.
- コマンドライン: /usr/lib/nagios/plugins/check_VM_snapshots $HOSTADDRESS$ $ARG1$ $ARG2$ $ARG3$
クリック “引数の説明” y definimos los 3 argumentos del comando, el ARG1 será el Warning como recordaremos, el ARG2 el valor de Crítical y ARG3 los días de antiguedad del snap.
で録音します “セーブ”!
Ahora ya podremos definir el Servicio que monitorizará los Snapshots, lo creamos o duplicamos desde “構成” > “サービス”. Deberemos tener en cuenta lo siguiente:
- 形容: これは、監視でサービスが表示される名前になります, un nombre como ‘Snapshots en MVs’ lo identifica perfectamente o que? 😉
- ホストとリンク: Lo asociaremos al host ESXi con el que hicimos el fingerprint. Será el host encargado en buscar en los datastores y en las MVs la existencia de snapshots.
- テンプレート: 通常は 'generic-active-service-custom', それは私たちが使用するもの、または変更したものに依存します.
- チェックコマンド: Seleccionamos el Comando que hemos creado en el paso anterior ‘check_VM_snapshots’
- 引数: このコマンドでは、 3 引数, en este ejemplo quiero que cuando exista 1 snapshot en mi organización me avise con un Warning y si hay 2 o más con un Critical, todo ello cuando los snaps tengan más de 2 日.
私たちは守っています “セーブ”.
データをエクスポートして設定を再読み込みし、Centreonが入力したばかりの新しい変更を読み取れるようにします. いつものように「構成」に進みます > 「ポーラー」 > 「構成のエクスポート」, ポーラーの選択, チェックをマークして再起動します & 「エクスポート」.
さて, から “モニタリング” ya visualizaremos que sale el servicio que checkeará. それを強制してテストするには, 私たちは彼を選び、コンボで選びます: 'サービス – スケジュール即時チェック (強制的)’.
以上です!!!! Ya tenemos más cositas monitorizadas en nuestro entorno! Cada día descansaremos mejor!!! いつも通り, espero que lo disfrutéis todos!!