Monitorear Sangfor HCI, SCP, cada VM y cada nodo con Zabbix - plantillas
  

YerkoUmana Lv1Posted 2026-Aug-05 14:08

[English version of this post: https://community.sangfor.com/forum.php?mod=viewthread&tid=12202]

La mayoria de quienes intentan monitorear Sangfor HCI con Zabbix se quedan en el mismo punto: un par de items SNMP sobre el nodo fisico, y nada sobre las maquinas virtuales que corren encima.

Este post cierra ese hueco. Adjuntas van cuatro plantillas listas para importar que monitorean un cluster Sangfor HCI, la plataforma de gestion SCP, CADA MAQUINA VIRTUAL y CADA NODO FISICO como hosts propios de Zabbix. Probadas en produccion sobre Sangfor HCI 6.11.3 / SCP 6.11 con Zabbix 7.2.7. El adjunto trae ademas el MANUAL DE IMPLEMENTACION en Word, con capturas de donde se saca y donde se pone cada credencial.

De uso y adaptacion libres, sin garantia; no es un producto oficial de Sangfor ni de Zabbix.


=== QUE MONITOREAN LAS PLANTILLAS ===

[1] Sangfor HCI by SNMP - un host de Zabbix por nodo fisico
CPU, memoria, uso de disco, sistemas de archivos, NICs fisicas y velocidad negociada, ventiladores, fuentes de poder, sensores de temperatura, potencia Rx/Tx de modulos opticos, vida util de los SSD, datastores e inventario del chasis (modelo, serie, BIOS, BMC).

[2] Sangfor SCP by API - un host de Zabbix para la plataforma de gestion
Capacidad y sobreasignacion de CPU/memoria/almacenamiento del cluster, estado de los nodos, estado y vencimiento de la licencia, pools de almacenamiento, y las alarmas del propio SCP como problemas de Zabbix.

[3] Sangfor VM by SCP - un host de Zabbix por maquina virtual
Estado, uptime, CPU %, memoria usada/total, IOPS de lectura/escritura, trafico de red, almacenamiento aprovisionado y usado, IP y MAC, si tiene las Sangfor Tools, una entrada por cada NIC y por cada disco virtual, y en que nodo fisico corre.

[4] Sangfor Node by SCP - un host de Zabbix por nodo fisico, visto por el SCP
Estado del nodo, CPU %, memoria usada/total, capacidad de storage, estado del subsistema de discos (normal / alert), vida util restante de los SSD, contador de alarmas, IP, numero de serie y cluster. Sin SNMP y sin agente: aparece solo.

Como se articulan:

   Sangfor HCI by SNMP  -->  host por nodo fisico  (SNMPv3, puerto 161, se crea a mano)

   Sangfor SCP by API   -->  host de la plataforma (API REST, puerto 4430)
                                   |
                                   |-- descubre las VMs    -->  Sangfor VM by SCP
                                   |                            un host por VM
                                   +-- descubre los nodos  -->  Sangfor Node by SCP
                                                                un host por nodo

Nunca asignas a mano las plantillas de VM ni de nodo: los dos HOST PROTOTYPES de la del SCP lo hacen por descubrimiento de bajo nivel. Lo que se crea en el SCP aparece solo, y lo que desaparece del inventario levanta alarma en vez de apagarse en silencio.

La [1] y la [4] no son redundantes: dos vistas de la misma maquina. La de SNMP ve el HARDWARE y la creas a mano; la del SCP ve lo que sabe la plataforma y aparece sola.


=== LO QUE LE CUESTA UNA TARDE A TODO EL MUNDO: EL AGENTE SNMP DEL HCI ES SOLO v3 ===

Si buscas "Zabbix" en esta comunidad llegas al mismo consejo que llegamos nosotros: "el HCI soporta SNMP" y "asegurate de que el puerto 161 este habilitado". Las dos cosas son ciertas. Ninguna es la razon por la que tu polling falla.

Apunta SNMPv2c a un nodo Sangfor HCI con cualquier community y recibes un TIMEOUT MUDO. Sin rechazo, sin error: identico a un puerto cerrado por firewall, asi que revisas el firewall, despues la ACL, despues la community, y despues abres un ticket. El puerto nunca fue el problema. El agente simplemente no contesta v2c. Cambias a SNMPv3 y responde a la primera.

Compruebalo en diez segundos:

  # v2c: no responde nada (esta es la parte enganosa)
  snmpget -v2c -c public <ip-hci> .1.3.6.1.4.1.35047.3.2.1.1.0

  # v3: completa el handshake de engineID y devuelve la version del HCI
  snmpget -v3 -l authPriv -u admin -a SHA -A '<auth>' -x AES -X '<priv>' <ip-hci> .1.3.6.1.4.1.35047.3.2.1.1.0

Dos detalles mas que nos costaron tiempo: se habilita en System > Advanced > SNMP Settings > SNMP Transmission > Configure, con usuario admin NO editable; y elige SHA + AES, porque los MD5/DES por defecto no nos funcionaron. El dialogo NO vuelve a mostrar las passphrases guardadas, asi que anotalas antes de cerrarlo.

El arbol MIB empresarial es .1.3.6.1.4.1.35047.3.2.1 (sangfor.cloud.cProduct.aCloud).


=== NO SE NECESITA NINGUN SCRIPT EXTERNO ===

La recoleccion es un item SCRIPT nativo de Zabbix, con la firma AWS4-HMAC-SHA256 escrita en JavaScript plano dentro del propio item. Nada que instalar en la sonda, ni cron, ni external check, ni archivos en disco.

Por que la firma esta escrita a mano en vez de usar los hmac() y sha256() nativos: esas funciones codifican sus argumentos como UTF-8, y la derivacion de clave de AWS4 produce bytes crudos -cerca de la mitad >= 0x80- que se corrompen. El SCP responde entonces "401 Authorization for EC2 is invalid". Conviene saberlo antes de que alguien la "simplifique" de vuelta a las nativas.

Como ese codigo esta escrito a mano, el paquete trae una autoprueba: el item sangfor.crypto.selftest corre los vectores oficiales (FIPS 180-4, RFC 4231 y AWS SigV4) DENTRO del mismo motor JavaScript que firma las consultas, cada hora, y alarma si alguno deja de coincidir. Sin red y sin credenciales, asi que solo puede fallar por un motivo.


=== LAS IPs DONDE DE VERDAD SIRVEN ===

Cada host descubierto lleva su IP en el inventario de Zabbix (campo Host networks) y como etiqueta "ip", asi que puedes buscar y filtrar por direccion desde la lista de hosts. Los nodos publican ademas su numero de serie al inventario -el que se necesita para abrir una garantia sin ir a leer la etiqueta del equipo- y el cluster al que pertenecen. Las VMs publican MAC y sistema operativo.

Una advertencia medida: la IP que el SCP reporta de un NODO no es necesariamente la IP de gestion por la que lo poleas con SNMP. En nuestro cluster de referencia, el nodo que se administra por SNMP en una direccion aparece en el SCP con otra, la de su segunda NIC. Sirve para identificar el equipo, no para armar la interfaz SNMP. Los nodos que no son HCI la devuelven vacia.


=== DISENO DE ALERTAS: UN INCIDENTE, UNA NOTIFICACION ===

Con un host por VM y uno por nodo, una caida del SCP puede significar N alarmas identicas a las 3 de la manana.

Las plantillas traen una cascada de dependencias con ventanas escalonadas -raiz 15m < inventario 20m (VMs) / 30m (nodos) < por objeto 45m- colgando de dos triggers RAIZ: uno de "API/sonda inalcanzable" y un item INTERNO que vigila a la propia sonda, que el servidor evalua incluso con la sonda muerta. Dentro de cada host de nodo hay una segunda cascada local con raiz "el nodo NO esta en ejecucion": un nodo caido es un problema, no cinco.

Un paso manual que el YAML no puede llevar: una plantilla no puede depender de un trigger de otro host, asi que las dependencias por objeto se cablean por API tras importar y tras cada tanda de VMs o nodos nuevos. El README explica como. Saltarselo convierte una caida en N avisos.


=== INSTALACION, VERSION CORTA ===

1. Crea los grupos de hosts "Sangfor/VMs descubiertas" y "Sangfor/Nodos descubiertos" ANTES de importar: los host prototypes los referencian y la importacion no los crea.
2. Importa en este orden: VM by SCP, Node by SCP, SCP by API, HCI by SNMP. Las dos plantillas por objeto van PRIMERO, porque la del SCP las enlaza por nombre; al reves Zabbix descarta el enlace en silencio y cada host descubierto nace sin plantilla.
3. Host HCI: interfaz SNMPv3 (authPriv, SHA, AES) y las tres macros {$SNMPV3_*} como Secret text. Host SCP: SIN interfaz, con las macros {$SCP.API.*} (ambas llaves como Secret text).
4. Espera. Las VMs y los nodos aparecen solos como hosts, con las macros del padre propagadas, secretos incluidos.

El paso a paso completo, con capturas, esta en el manual que viene en el adjunto.


=== QUE CORREGIMOS, Y DE DONDE SALIO ===

Las revisiones anteriores salieron con defectos de verdad. Varios se encontraron porque gente de esta comunidad insistio en los detalles en vez de asentir; el resto aparecio cuando dejamos de confiar en nuestros chequeos y empezamos a instalar el paquete desde cero en un Zabbix vacio. En corto:

- El empaquetado generaba YAML con los strings largos plegados. El importador de Zabbix los resuelve distinto e inyecta un espacio en cada plegado, corrompiendo los literales de string, incluido el que se firma: la importacion dice que salio bien y despues no se recolecta nada. Ahora se vuelcan bloques literales y el empaquetado compara el codigo de cada item Script byte a byte contra el archivo, tras importarlo de verdad.
- Los uuid de los objetos no eran v4 y Zabbix rechazaba el archivo entero. Y habia expresiones de trigger que apuntaban a un nombre de plantilla inexistente, algo que Zabbix importa "con exito" mientras descarta esos triggers en silencio.
- Los triggers de alarma cuyo nombre pasaba de 255 caracteres nunca se creaban. La regla de descubrimiento quedaba en verde y solo faltaban algunos: los de disco, por supuesto. Ahora el nombre esta acotado y el texto completo vive en la descripcion del trigger.
- El maestro de cada VM se identificaba por el nombre tecnico del host, asi que renombrarlo lo dejaba verde, con todos sus items y sin un solo dato. Ahora usa una macro.
- Las alarmas de nodo disparaban en el host del SCP con el nombre del nodo enterrado en el texto del trigger. Ahora los nodos tienen host propio.

Si un OID se comporta distinto en tu firmware, si un umbral no aplica a tu carga, o si extiendes las plantillas, publicalo aca. Asi fue como esa lista se acorto.


---
(c) 2026 Yerko Umania Parra - T-Line. Uso, adaptacion y redistribucion libres, citando la
fuente. Se entrega tal cual, sin garantia. No es un producto oficial de Sangfor ni de
Zabbix; Sangfor y Zabbix son marcas de sus respectivos duenos.

zabbix-sangfor-templates-es-v1.3.zip

813.12 KB, Downloads: 6

v1.3 - Plantillas Zabbix 7.2 para Sangfor HCI, SCP, sus VMs y sus nodos

Like this topic? Like it or reward the author.

Creating a topic earns you 5 coins. A featured or excellent topic earns you more coins. What is Coin?

Enter your mobile phone number and company name for better service. Go