O SNMP é um padrão comum para monitorar dispositivos em uma rede. Recomendamos fortemente habilitar o SNMP para que você possa monitorar a integridade do sua instância do GitHub Enterprise Server e saber quando adicionar mais memória, armazenamento ou potência do processador ao computador host.
O GitHub Enterprise tem uma instalação SNMP padrão, ou seja, você pode aproveitar os vários plug-ins disponíveis para o Nagios ou para qualquer outro sistema de monitoramento.
Configurar SMTP v2c
- 
Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em . 
- 
Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site. 
- 
Na barra lateral " Administrador do site", clique em Console de Gerenciamento . 
- 
Na barra lateral "Configurações", clique em Monitoramento. 
- 
Em "Monitoramento", selecione Habilitar SNMP. 
- 
No campo Cadeia de caracteres da comunidade, insira uma nova cadeia de caracteres da comunidade. Se ele for deixado em branco, publicserá usado como padrão.
- 
Na barra lateral "Configurações", clique em Salvar configurações. Note Se você salvar as configurações no Console de Gerenciamento, isso reiniciará os serviços do sistema, o que poderá resultar em tempo de inatividade visível pelo usuário. 
- 
Aguarde a conclusão da execução de suas configurações. 
- 
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
Isso retornará a hora do sistema no host do sua instância do GitHub Enterprise Server.
Segurança baseada no usuário
Se habilitar o SNMP v3, você poderá aproveitar o aumento da segurança baseada no usuário por meio do User Security Model (USM). É possível especificar um nível de segurança para cada usuário:
- noAuthNoPriv: esse nível de segurança não fornece autenticação nem privacidade.
- authNoPriv: esse nível de segurança fornece autenticação, mas sem privacidade. 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: esse nível de segurança fornece autenticação com privacidade. 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.
Configurar usuários para o SNMP v3
- 
Em uma conta administrativa no GitHub Enterprise Server, no canto superior direito de qualquer página, clique em . 
- 
Se você ainda não estiver na página "Administração do site", no canto superior esquerdo, clique em Administração do site. 
- 
Na barra lateral " Administrador do site", clique em Console de Gerenciamento . 
- 
Na barra lateral "Configurações", clique em Monitoramento. 
- 
Em "Monitoramento", selecione Habilitar SNMP. 
- 
Selecione SNMP v3. 
- 
Em "Username" (Nome de usuário), digite o nome exclusivo do seu usuário SNMP v3. 
- 
Selecione o menu suspenso Nível de segurança e clique no nível de segurança do seu usuário do SNMP v3. 
- 
Para usuários do SNMP v3 com o nível de segurança authnopriv, configure a autenticação.- Em "Senha de autenticação", digite a senha de autenticação.
- Ao lado de "Senha de autenticação", no menu suspenso Protocolo, clique no protocolo de autenticação que deseja usar.
- No momento, o GitHub Enterprise Server usa SHA-1, caso o sistema de monitoramento externo precise do algoritmo SHA.
 
- 
Para usuários do SNMP v3 com o nível de segurança authpriv, configure a autenticação.- Em "Senha de autenticação", digite a senha de autenticação.
- Ao lado de "Senha de autenticação", no menu suspenso Protocolo, clique no protocolo de autenticação que deseja usar.
- Como alternativa, em "Privacy password" (senha de privacidade), digite a senha de privacidade.
- Ao lado de "Senha de privacidade", selecione o menu suspenso Protocolo e clique no protocolo de autenticação que deseja usar.
- No momento, o GitHub Enterprise Server usa AES-128, caso o sistema de monitoramento externo precise do algoritmo AES.
 
- 
Clique em Adicionar usuário. 
- 
Na barra lateral "Configurações", clique em Salvar configurações. Note Se você salvar as configurações no Console de Gerenciamento, isso reiniciará os serviços do sistema, o que poderá resultar em tempo de inatividade visível pelo usuário. 
- 
Aguarde a conclusão da execução de suas configurações. 
Consultar dados SNMP
As informações de hardware e software do appliance estão disponíveis no SNMP v3. Devido à falta de criptografia e privacidade para os níveis de segurança noAuthNoPriv e authNoPriv, excluímos a tabela hrSWRun (1.3.6.1.2.1.25.4) dos relatórios resultantes do SNMP. Incluímos essa tabela se você usa o nível de segurança authPriv. Para obter mais informações, confira a Documentação do MIB.
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. Vários MIBs estão disponíveis, que você pode ver executando snmpwalk em uma estação de trabalho separada com suporte a SNMP na sua rede:
# 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
Dos MIBs disponíveis para o SNMP, o mais útil é 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 o SNMP v3, execute o seguinte comando em uma estação de trabalho separada com suporte a SNMP na sua rede:
# username is the unique username of your SNMP v3 user
# auth password is the authentication password
# privacy password is the privacy password
# hostname is the IP or domain of your Enterprise instance
$ 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
Com o SNMP v2c, para consultar hrMemorySize, execute o seguinte comando em uma estação de trabalho separada com suporte a SNMP na sua rede:
# community-string is your community string
# hostname is the IP or domain of your Enterprise instance
snmpget -v 2c -c COMMUNITY-STRING HOSTNAME HOST-RESOURCES-MIB::hrMemorySize.0
Note
Para evitar o vazamento de informações sobre serviços em execução no dispositivo, excluímos a tabela hrSWRun (1.3.6.1.2.1.25.4) dos relatórios resultantes do SNMP, a menos que você esteja usando o nível de segurança authPriv com o SNMP v3. Se você estiver usando o nível de segurança authPriv, incluiremos a tabela hrSWRun.
Para obter mais informações sobre os mapeamentos de OID para atributos comuns do sistema no SNMP, confira OID do SNMP do Linux para CPU, memória e estatísticas de disco.