Olá queridos seguidores!
Vamos curtir o feriado “nagiando” um pouquinho?
Agora estou na fase de “viajar” com as funcionalidades do
Nagios, estou tentando adaptar plugins para monitorar diversas aplicações.
Essa semana montei um laboratório com o XenApp (Citrix) e
resolvi implementar um plugin para o Nagios, onde o mesmo monitora as Sessões ativas
do servidor e aplicativos ativos na Farm.
Com algumas adaptações consigo saber quando determinado
usuário está acessando uma aplicação X (e se ela está ativa ou desconectada). Para
que essa opção seja possível é necessário fazer alguns ajustes no XenApp também.
O ajuste no XenApp seria:
- Publicar uma aplicação para cada usuário.
Vamos supor que eu quero publicar o Excel para
meus usuários. Normalmente fazemos da seguinte maneira: Publica-se uma única aplicação
do Excel e add todos os usuários a ela. Nesse caso quando a aplicação estiver sendo
utilizada não saberei quem está utilizando naquele momento, para que isso seja
possível vamos criar uma aplicação Excel para cada usuário identificando o nome
do usuário na descrição da aplicação, ficaria assim:
- Excel – usuário 01
- Excel – usuário 02
- Excel – usuário 03
Terminada a adaptação do Citrix vamos ao
nagios.
OBS. dependendo da aplicação deverá ser criada uma cópia da aplicação para cada usuário.
Para facilitar vou dividir a configuração em passos.
Passos
2.
Salvá-lo no diretório nagios do seu servidor
XenApp (Citrix).
3.
Incluir a linha de comando que chama o plugin no
NRPE.cfg que está no diretório nagios do servidor XenApp.
Incluindo o comando no nrpe.cfg
command[check_nome_do_comando - comando_incluso_nagios_services.cfg]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" all "Excel – usuario 01"
1 2
Segue abaixo as sintaxes que você pode trabalhar:
a)
Checar
todas as sessões ativas no servidor “hostname_servidor”
command[nome_comando_incluso_nagios_services.cfg]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" hostname_servidor all qtde_warning qtde_ critical (aqui você coloca a quantidade de sessões
que você quer que apareça em warning e critical. Se colocar 50 70, enquanto não
atingir esse número de sessões ativas ficará com o status Ok.)
b) Checar números de sessões na Farm Citrix
command[nome_comando_incluso_nagios_services.cfg]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" all all 500 1000
c) Checar
aplicações ativas no servidor “hostname_servidor”
command[nome_comando_incluso_nagios_services.cfg]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" hostname_servidor “aplicação X” qtde_warning qtde_critical
d) Checar aplicações específicas na Farm Citrix
command[nome_comando_incluso_nagios_services.cfg]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" all “aplicação X” qtde_warning qtde_critical
4.
Finalizada a implementação do nrpe.cfg do
servidor Citrix, salve o arquivo e reinicie o serviço do Nagios Remote Plugin.
Para o plugin funcionar o serviço nagios deve estar com permissão de ADM.
Caso não tenha efetuado essa configuração, vá em serviços (executar ->
services.msc) e procure por Nagios Remote Plugin, clique com o lado direito do
mouse e vá em propriedades -> logon e coloque as configurações de ADM.
Agora
reinicie o serviço e pronto (ou melhor, quase pronto :D).
5.
Parte final!
Precisamos definir o serviço no servidor
nagios.
Se você efetuou a instalação padrão do nagios abra o arquivo services.cfg
que está em etc/nagios/objects e
acrescente o comando abaixo:
################
#PLUGIN CITRIX#
################
define
service {
hostgroup_name Coloque
o hostgroup existente ou crie um em hostgroup.cfg
service_description Nome
que vc quiser colocar, é o que aparecerá no nagios
check_command check_nrpe!check_nome_do_comando
use generic-service
notification_interval 0 ; set > 0 if you want to be
renotified
}
Lembrando que para cada usuário deverá criar um
serviço desse.
6.
Reinicie o nagios (/etc/init.d/nagios restart) e
voilá!
A configuração para monitorarmos o acesso ao Excel por
usuário ficou assim:
No arquivo nrpe.cfg
(servidor Citrix)
command[check_excel01]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" all "Excel
– Usuario 01" 1 2
command[check_excel02]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" all "Excel
– Usuario 02" 1 2
command[check_excel03]=C:\WINDOWS\system32\cscript.exe
//NoLogo "C:\nagios\check_number_of_citrix_sessions.wsf" all "Excel
– Usuario 03" 1 2
No arquivo
servives.cfg (servidor nagios - /etc/nagios/objects)
define
service {
hostgroup_name citrix
service_description Excel – Usuário 01
check_command check_nrpe!check_excel01
use generic-service
notification_interval 0 ; set > 0 if you want to be
renotified
}
define
service {
hostgroup_name citrix
service_description Excel – Usuário 02
check_command check_nrpe!check_excel02
use generic-service
notification_interval 0 ; set > 0 if you want to be
renotified
}
define
service {
hostgroup_name citrix
service_description Excel – Usuário 03
check_command check_nrpe!check_excel03
use generic-service
notification_interval 0 ; set > 0 if you want to be
renotified
}
Com essa configuração quando o usuário acessar a aplicação
ele sairá do status Ok e irá para warning, se ele abrir a mesma aplicação 2
vezes ele irá para critical.
Resultado:
Espero que seja útil para alguém J
Referências:
Nenhum comentário:
Postar um comentário