Supervisar por medio de SNMP
GitHub Enterprise proporciona datos sobre el uso del disco, la utilización del CPU, el uso de la memoria y más sobre SNMP.
SNMP es una norma común para controlar dispositivos en una red. Recomendamos firmemente habilitar SNMP para que puedas controlar la salud de tu instancia de servidor de GitHub Enterprise y saber cuándo agregar más memoria, almacenamiento, o rendimiento del procesador a la máquina del servidor.
GitHub Enterprise tiene una instalación SNMP estándar, para poder aprovechar los diversos plugins disponibles para Nagios o para cualquier otro sistema de control.
Configurar SNMP v2c
-
In the upper-right corner of any page, click .
-
En la barra lateral izquierda, haz clic en Consola de administración.
-
In the left sidebar, click Monitoring.
-
Under "Monitoring", select Enable SNMP.
-
En el campo Community string (Cadena de la comunidad), ingresa una nueva cadena de comunidad. Si se deja en blanco, queda predeterminado como
públicp
. -
Under the left sidebar, click Save settings.
-
Prueba tu configuración SNMP al ejecutar el siguiente comando en una estación de trabajo por separado con soporte de SNMP en tu red:
# 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 tu instancia de servidor de GitHub Enterprise 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 al aparato deberás usar un nombre de usuario y una contraseña (que debe tener como mínimo ocho caracteres). La información se envía sin encriptación, similar a SNMPv2. El protocolo de autenticación puede ser MD5 o SHA o SHA como predeterminado.authPriv
: This security level provides authentication with privacy. Se requiere autenticación, incluida una contraseña de autenticación de ocho caracteres como mínimo, y las respuestas están encriptadas. No se requiere una contraseña de privacidad, pero si se proporciona debe tener como mínimo ocho caracteres. Si no se proporciona una contraseña de privacidad, se usa la contraseña de autenticación. El protocolo de privacidad puede ser DES o AES y queda AES como predeterminado.
Configuring users for SNMP v3
-
In the upper-right corner of any page, click .
-
En la barra lateral izquierda, haz clic en Consola de administración.
-
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:-
En "Contraseña de autenticación", escribe la contraseña de autenticación.
-
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:-
En "Contraseña de autenticación", escribe la contraseña de autenticación.
-
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.
Con SNMP v2c, solo está disponible la información del nivel de hardware de tu aparato. Estas aplicaciones y servicios dentro de GitHub Enterprise no tienen configurado OID para informar 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
De los MIB disponibles para SNMP, el más útil es HOST-RESOURCES-MIB
(.1.3.6.1.2.1.25). Consulta la tabla de abajo para ver algunos objetos importantes en este MIB:
Nombre | OID | Descripción |
---|---|---|
hrSystemDate.2 | .1.3.6.1.2.1.25.1.2 | La noción de servidores de los datos locales y de la hora del día. |
hrSystemUptime.0 | .1.3.6.1.2.1.25.1.1.0 | Cuánto tiempo ha pasado desde que el servidor se inició por última vez. |
hrMemorySize.0 | .1.3.6.1.2.1.25.2.2.0 | La cantidad de RAM en el servidor. |
hrSystemProcesses.0 | .1.3.6.1.2.1.25.1.6.0 | La cantidad de contextos de proceso actualmente cargados o ejecutándose en el servidor. |
hrStorageUsed.1 | .1.3.6.1.2.1.25.2.3.1.6.1 | La cantidad de espacio de almacenamiento consumido en el servidor, en hrStorageAllocationUnits. |
hrStorageAllocationUnits.1 | .1.3.6.1.2.1.25.2.3.1.4.1 | El tamaño, en bytes, de una hrStorageAllocationUnit |
Por ejemplo, para consultar hrMemorySize
con SNMP v3, ejecuta el siguiente comando en una estación de trabajo separada con apoyo de SNMP en tu red:
# username es el nombre de usuario único de tu usuario SNMP v3
# auth password es la contraseña de autenticación
# privacy password es la contraseña de privacidad
# hostname es la IP o el dominio de tu instancia de empresa
$ 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
Con SNMP v2c, para consultar hrMemorySize
, ejecuta el siguiente comando en una estación de trabajo separada con apoyo de SNMP en tu red:
# community-string es tu cadena de comunidad
# hostname es la IP o el dominio de tu instancia de empresa
snmpget -v 2c -c community-string hostname HOST-RESOURCES-MIB::hrMemorySize.0
Nota: para evitar que se filtre información sobre los servicios que se están ejecutando en tu aparato, excluimos la tabla hrSWRun
(1.1.3.6.1.2.1.25.41) de los informes SNMP resultantes excepto que estés usando el nivel de seguridad authPriv
con SNMP v3. Si estás utilizando el nivel de seguridad authPriv
, incluimos la tabla hrSWRun
.
Para obtener más información sobre los mapeos OID para los atributos de sistema comunes en SNMP, consulta "OID SNMP de Linux para CPU, memoria y estadísticas de disco".