Monitorar usando SNMP
O GitHub Enterprise fornece dados sobre o uso de disco, CPU, memória e muito mais no SNMP.
O SNMP é um padrão comum para monitorar dispositivos em uma rede. É altamente recomendável ativar o SNMP para monitorar a integridade da sua instância do GitHub Enterprise Server e saber quando adicionar mais memória, armazenamento ou potência do processador à máquina host.
O GitHub Enterprise tem uma instalação SNMP padrão que permite aproveitar vários plugins disponíveis para Nagios ou qualquer outro sistema de monitoramento.
Configurar SMTP v2c
-
In the upper-right corner of any page, click .
-
In the left sidebar, click Console de gerenciamento.
-
In the left sidebar, click Monitoring.
-
Under "Monitoring", select Enable SNMP.
-
No campo Community string (String de comunidade), insira a nova string da comunidade. Se deixada em branco, essa informação fica como
public
por padrão. -
Under the left sidebar, click Save settings.
-
Teste a configuração SNMP executando o seguinte comando em uma estação de trabalho separada com suporte a SNMP na rede:
# community-string is your community string # hostname is the IP or domain of your Enterprise instance $ snmpget -v 2c -c community-string -O e hostname hrSystemDate.0
This should return the system time on sua instância do GitHub Enterprise Server host.
User-based security
If you enable SNMP v3, you can take advantage of increased user based security through the User Security Model (USM). For each unique user, you can specify a security level:
noAuthNoPriv
: This security level provides no authentication and no privacy.authNoPriv
: This security level provides authentication but no privacy. Para consultar o appliance, você precisará de nome de usuário e senha (com pelo menos oito caracteres). As informações são enviadas sem criptografia, de modo semelhante ao SNMPv2. O protocolo de autenticação pode ser MD5 ou SHA, e o padrão é SHA.authPriv
: This security level provides authentication with privacy. A autenticação (com senha de no mínimo oito caracteres) é necessária, e as respostas são criptografadas. Não é necessário usar uma senha de privacidade, mas, se houver, ela deve ter no mínimo oito caracteres. Se não houver senha de privacidade, a senha de autenticação será usada. O protocolo de privacidade pode ser DES ou AES, e o padrão é AES.
Configuring users for SNMP v3
-
In the upper-right corner of any page, click .
-
In the left sidebar, click Console de gerenciamento.
-
In the left sidebar, click Monitoring.
-
Under "Monitoring", select Enable SNMP.
-
Select SNMP v3.
-
In "Username", type the unique username of your SNMP v3 user.
-
In the Security Level dropdown menu, click the security level for your SNMP v3 user.
-
For SNMP v3 users with the
authnopriv
security level:-
Em "Authentication password" (Senha de autenticação), digite a senha de autenticação.
-
On the right side of "Authentication password", in the Protocol dropdown menu, click the authentication protocol you want to use.
-
-
For SNMP v3 users with the
authpriv
security level:-
Em "Authentication password" (Senha de autenticação), digite a senha de autenticação.
-
On the right side of "Authentication password", in the Protocol dropdown menu, click the authentication protocol you want to use.
-
Optionally, in "Privacy password", type the privacy password.
-
On the right side of "Privacy password", in the Protocol dropdown menu, click the privacy protocol method you want to use.
-
-
Click Add user.
-
Under the left sidebar, click Save settings.
Querying SNMP data
Both hardware and software-level information about your appliance is available with SNMP v3. Due to the lack of encryption and privacy for the noAuthNoPriv
and authNoPriv
security levels, we exclude the hrSWRun
table (1.1.3.6.1.2.1.25.41) from the resulting SNMP reports. We include this table if you're using the authPriv
security level.
Com o SNMP v2c, ficam disponíveis somente as informações em nível de hardware. Os aplicativos e serviços no GitHub Enterprise não têm OIDs configurados para reportar métricas. Several MIBs are available, which you can see by running snmpwalk
on a separate workstation with SNMP support in your network:
# community-string is your community string
# hostname is the IP or domain of your Enterprise instance
$ snmpwalk -v 2c -c community-string -O e hostname
Das MIBs disponíveis para SNMP, a mais útil é a HOST-RESOURCES-MIB
(.1.3.6.1.2.1.25). Consulte a tabela a seguir para ver objetos importantes dessa MIB:
Nome | OID | Descrição |
---|---|---|
hrSystemDate.2 | .1.3.6.1.2.1.25.1.2 | A noção dos hosts de data e hora locais de um dia. |
hrSystemUptime.0 | .1.3.6.1.2.1.25.1.1.0 | Tempo transcorrido desde a última inicialização do host. |
hrMemorySize.0 | .1.3.6.1.2.1.25.2.2.0 | Quantidade de RAM no host. |
hrSystemProcesses.0 | .1.3.6.1.2.1.25.1.6.0 | Número de contextos de processo carregados ou em execução no host. |
hrStorageUsed.1 | .1.3.6.1.2.1.25.2.3.1.6.1 | Quantidade de espaço de armazenamento consumido no host, em hrStorageAllocationUnits. |
hrStorageAllocationUnits.1 | .1.3.6.1.2.1.25.2.3.1.4.1 | Tamanho em bytes de um hrStorageAllocationUnit. |
Por exemplo, para consultar hrMemorySize
com SNMP v3, execute o seguinte comando em outra estação de trabalho com suporte a SNMP na sua rede:
# username é o nome exclusivo do seu usuário do SNMP v3
# auth password é a senha de autenticação
# privacy password é a senha de privacidade
# hostname é o IP ou domínio da sua instância do Enterprise
$ snmpget -v 3 -u username -l authPriv \
-A "auth password" -a SHA \
-X "privacy password" -x AES \
-O e hostname HOST-RESOURCES-MIB::hrMemorySize.0
Para consultar hrMemorySize
com SNMP v2c, execute o seguinte comando em outra estação de trabalho com suporte a SNMP na sua rede:
# community-string é a string da sua comunidade
# hostname é o IP ou domínio da sua instância do Enterprise
snmpget -v 2c -c community-string hostname HOST-RESOURCES-MIB::hrMemorySize.0
Observação: para evitar o vazamento de informações sobre os serviços em execução no seu appliance, a tabela hrSWRun
(1.1.3.6.1.2.1.25.41) foi excluída dos relatórios SNMP resultantes, a menos que você esteja usando o nível de segurança authPriv
com SNMP v3. Incluímos a tabela hrSWRun
para o caso de você estar usando o nível de segurança authPriv
.
Para obter mais informações sobre mapeamentos OID para atributos comuns do sistema no SNMP, consulte "OID de SNMP do Linux para estatísticas de CPU, memória e disco".