
使用 Centreon 监控 Citrix 许可证
Si queremos tener centralizado el control de las licencias de nuestros entornos Citrix podemos hacerlo fácilmente con Centreon, 照常, nos basaremos en un script que se ejecutará en el servidor de licencias y pasaremos su output a Centreon, así sabremos cuando nos vamos a quedar sin licencias y sobre todo, las tendremos controladas y nos servirán para justificar nuevas adquisiciones.
Como te lo imaginarás, usaremos NRPE para poder llamar un script desde Centreon, que se ejecute en el servidor Windows, y leamos su output para conocer las licencias que tenemos consumidas actualmente y en caso necesario recibir una alerta. Si necesitas echar un vistazo al fincionamiento de NRPE te recomiendo leas primeramente 这篇文章, ya que nos basamos en él para las configuraciones que necesitamos aplicar ahora con objeto de controlar las licencias.
En el servidor de licencias de Citrix, tras instalar NSClient++, en el directorio de scripts, pondremos este “licencias_citrix.cmd”:
[源代码]@echo off
"%ProgramFiles(x86)%\Citrix\Licensing\LS\LMSTAT.exe" -a -c "%ProgramFiles(x86)%\Citrix\Licensing\MyFiles" > licencias.txt
FINDSTR "MPS_ADV_CCU:" licencias.txt > licencias2.txt
set /p linea= <licencias2.txt
set licencias=%linea:~63,2%
if %licencias% gtr 120 if %licencias% lss 131 (
echo "Warning – Hay %licencias% consumidas |’Licencias Citrix’=%licencias%"
exit /B 1
)
if %licencias% gtr 130 (
echo "Critical – Hay %licencias% consumidas |’Licencias Citrix’=%licencias%"
exit /B 2
)
if %licencias% lss 121 (
echo "OK – Hay %licencias% consumidas |’Licencias Citrix’=%licencias%"
exit /B 0
)[/源代码]
正如我们所看到的, este script Batch si lo ejecutamos consultará a LMSTAT.exe, generará un fichero temporal con todo el output y leeremos las líneas donde tenemos definidas nuestras licencias, en este caso unas “XDT_ENT_UD” o XenDesktop Enterprise, seguro que algo más elegante también funcionaría, 但是哇, debería ir bien, o lo modificáis en base a vuestra necesidad. Como vemos aquí directamente le indicamos los varemos de licencias consumidas, si hay más de 120 que genere un Warning y si hay más de 130 consumidas pues un mensaje Critical.
En nsclient.ini deberemos como siempre definir un Alias y el Comando que llamará este Alias, para así con check_nrpe poder llamar a este Alias, nos quedaría de la siguiente manera:
[源代码][/设置/外部脚本/脚本]
check_citrix_lics = cmd /c scripts\\licencias_citrix.cmd
[/设置/外部脚本/别名]
check_citrix_lics = check_citrix_lics[/源代码]
一如既往, tras guardar el fichero recordar reiniciar el servicio NSClient++ para recargar la configuración.
Ya podremos en Centreon crear nuestro Servicio asociado al Servidor de licencias, en el comando utilizamos el “check_nrpe” que tendremos ya definido (acuérdate de 这篇文章 如果您需要). Y como Argumento pues le pasamos el Alias que hemos definido en el nsclient.ini para que ejecute el BAT (el script).
照常, tras grabar la configuración y exportar los ficheros de Centreon, podremos verificar cómo tenemos el servicio listo y monitorizado! Así de facil quitamos otra cosa de la cabeza! Tenemos controladas las licencias, ante la necesidad y quedarnos sin ellas previamente lo sabremos y podremos actuar en consecuencia. 我希望你觉得它很有趣,