Apstra ZTP - Juniper
Los conmutadores EX requieren Junos OS versión 21.2 o superior. El módulo Python necesario para ZTP no está en conmutadores EX que usan versiones de Junos OS por debajo de la versión 21.2.
Juniper y ZTP Espacio en disco
Apstra ZTP administra el arranque y el ciclo de vida de los dispositivos Juniper Junos. Utiliza una secuencia de comandos personalizada para crear agentes offbox, crear usuarios locales y establecer otra configuración del sistema. El proceso ZTP copia una nueva imagen del sistema operativo en el conmutador. Antes de instalar Apstra ZTP, asegúrese de que el conmutador tenga suficiente espacio en disco para la imagen del SO.
root@leaf001-001-2> show system storage Filesystem Size Used Avail Capacity Mounted on /dev/gpt/junos 6.0G 1.0G 4.5G 18% /.mount <...>
Ejemplo: Juniper Junos - ztp.json
Juniper Junos Offbox Agent / Apstra ZTP 4.1
{ "junos": { "junos-versions": [ "20.2R2-S3.5" ], "junos-image": "http://192.168.59.4/jinstall-host-qfx-5-20.2R2-S3.5-signed.tgz", "device-root-password": "root-password", "device-user": "admin", "device-user-password": "admin-password", "custom-config": "junos_custom.sh", "system-agent-params": { "platform": "junos", "agent_type": "offbox", "job_on_create": "install" } } }
Ejemplo: Juniper Junos OS Evolucionado - ztp.json
Agente offbox de Junos OS evolucionado de Juniper / Apstra ZTP 4.1
{ "junos-evo": { "junos-evo-versions": [ "20.4R3-S1.3-EVO" ], "junos-evo-image": "http://192.168.59.4/junos-evo-install-qfx-ms-fixed-x86-64-20.4R3-S1.3-EVO.iso", "device-root-password": "root-password", "device-user": "admin", "device-user-password": "admin-password", "custom-config": "junos_custom.sh", "system-agent-params": { "platform": "junos", "agent_type": "offbox", "job_on_create": "install" } } }
Los siguientes campos adicionales se pueden usar para plataformas de RE dual, como PTX10004.
"dual-routing-engine": true, "management-ip": "10.161.37.7", "management-gw-ip": "10.161.39.254", "management-subnet-prefixlen": "21", "management-master-ip": "10.161.37.8", "management-backup-ip": "10.161.37.9",
Archivo Juniper Junos Bootstrap
Apstra ZTP usa una secuencia de comandos Python para aprovisionar el dispositivo durante ZTP. Para permitir que la secuencia de comandos python (ztp.py
) se ejecute en un dispositivo que no sea Junos OS Evolved, se requiere una configuración adicional. Utilice el junos_apstra_ztp_bootstrap.sh
script para arrancar Apstra ZTP en Junos. Descarga y ejecuta el script ZTP.
Los dispositivos Junos OS Evolucionado no requieren este arranque; ejecutan el script python (ztp.py) de Apstra ZTP directamente.
Archivo de configuración personalizada de Junos de Juniper
Cuando configure custom-config
para dispositivos Juniper Junos, consulte el ejemplo junos_custom.sh
, un archivo ejecutable bash ejecutado durante el proceso ZTP. Puede establecer la configuración del sistema (como Syslog, NTP, autenticación SNMP) antes de la instalación del agente del sistema del dispositivo.
Las plataformas Junos OS y Junos OS Evolucionado con configuraciones de doble RE requieren el set system commit synchronize
comando. Sin esta configuración, se produce un error en el proceso de ZTP. Recomendamos agregar el comando al junos_custom.sh
archivo.
#!/bin/sh SOURCE_IP=$(cli -c "show conf interfaces em0.0" | grep address | sed 's/.*address \([0-9.]*\).*/\1/') # Syslog SYSLOG_SERVER="192.168.59.4" SYSLOG_PORT="514" # NTP NTP_SERVER="192.168.59.4" # SNMP SNMP_NAME="SAMPLE" SNMP_SERVER="192.168.59.3" # Syslog cli -c "configure; \ set system syslog host $SYSLOG_SERVER any notice ; \ set system syslog host $SYSLOG_SERVER authorization any ; \ set system syslog host $SYSLOG_SERVER port $SYSLOG_PORT ; \ set system syslog host $SYSLOG_SERVER routing-instance mgmt_junos ; \ commit and-quit" cli -c "configure; \ set system syslog file messages any notice ; \ set system syslog file messages authorization any ; \ commit and-quit" # NTP cli -c "configure; \ set system ntp server $NTP_SERVER routing-instance mgmt_junos ; \ set system ntp source-address $SOURCE_IP routing-instance mgmt_junos ; \ commit and-quit;" # SNMP cli -c "configure; \ set snmp name $SNMP_NAME; \ set snmp community public clients $SNMP_SERVER/32 ; \ set snmp community public routing-instance mgmt_junos ; \ set snmp routing-instance-access access-list mgmt_junos ; \ commit and-quit"
Si establece la autenticación AAA externa (por ejemplo authentication-order
), replica el agente device-user
del sistema de dispositivos y device-user-password
en el sistema AAA. De lo contrario, el agente del sistema de dispositivos genera un error de autenticación.
Reiniciar Juniper Junos ZTP
Para borrar (cero) el dispositivo y reiniciar el proceso Junos ZTP de Juniper:
root@leaf3> request system zeroize
Solucionar problemas de ZTP de Juniper Junos
Cuando está en modo ZTP, el conmutador de Juniper descarga los ztp.py
archivos al ztp.json
/var/preserve/apstra
directorio. Para diagnósticos, tome nota del /var/preserve/apstra/aosztp.log
archivo.
Puede encontrar mensajes útiles adicionales en /var/log/messages
(buscar 'ztp').