Cargar y formatear datos de configuración en una sesión de NETCONF
En una sesión NETCONF con un dispositivo que ejecuta Junos OS, una aplicación cliente puede especificar el mecanismo de entrega y el formato de los datos de configuración utilizados al entregar cambios de configuración en el dispositivo. Las aplicaciones cliente pueden usar un archivo de texto o datos de transmisión para cargar datos de configuración en uno de los formatos aceptados en la configuración del candidato o en una base de datos de configuración abierta.
Un cliente puede elegir transmitir cambios de configuración dentro de la sesión o archivos de datos de referencia que incluyan los cambios de configuración deseados. Cada método tiene ventajas y desventajas. Los datos de transmisión le permiten enviar sus datos de cambio de configuración en línea, mediante su conexión NETCONF. Esto es útil cuando el dispositivo está detrás de un firewall y no puede establecer otra conexión para cargar un archivo de datos. Con los archivos de texto puede simplificar los comandos de configuración de edición; con archivos de datos, no es necesario incluir el flujo de datos de configuración posiblemente complejo.
Las <copy-config>
operaciones y <edit-config>
aceptan uno de dos formatos para los datos de configuración de Junos OS: instrucciones de configuración Junos XML o CLI. La elección entre un formato de datos sobre el otro es la preferencia personal.
Cuando se administran dispositivos que ejecutan Junos OS, una aplicación cliente puede usar la operación de protocolo <load-configuration>
Junos XML en una sesión NETCONF para cargar datos de configuración formateados mediante JSON o comandos de modo set
de configuración, además de los formatos de instrucción de configuración JUnos XML o CLI.
El mecanismo de entrega y el formato se analizan en detalle en las siguientes secciones:
Referencia a archivos de datos de configuración
Para cargar datos de configuración almacenados en un archivo, una aplicación cliente emite la ubicación del archivo entre las <url>
etiquetas dentro de los <rpc>
<edit-config>
elementos de etiqueta y o <copy-config>
.
<rpc> <copy-config> <target> <candidate/> </target> <source> <url> <!-- location and name of file containing configuration data --> </url> </source> </copy-config> </rpc> ]]>]]>
<rpc> <edit-config> <target> <candidate/> </target> <url> <!-- location and name of file containing configuration data --> </url> </edit-config> </rpc> ]]>]]>
Los datos de estos archivos se pueden formatear como elementos XML de Junos o instrucciones de configuración de CLI. Cuando los datos de configuración tienen formato como instrucciones de configuración de CLI, incluya el format="text"
atributo en la <url>
etiqueta.
<url format="text"> <!-- location and name of file containing configuration data --> </url>
El archivo de configuración se puede colocar localmente o como un recurso de red.
-
Cuando se coloca localmente, la ruta del archivo de configuración puede ser relativa o absoluta:
-
Ruta de archivo relativo: la ubicación del archivo se basa en el directorio principal del usuario.
-
Ruta de archivo absoluto: la ubicación del archivo se basa en la estructura de directorio del dispositivo, por ejemplo <drive>:filename o <drive>/:path/filename, Si utiliza medios extraíbles, la unidad puede estar en formato MS-DOS o UNIX (UFS).
-
-
Cuando se encuentra en la red, se puede acceder al archivo de configuración mediante FTP o HTTP:
-
Ejemplo de FTP:
ftp://username:password@hostname/path/filename
Nota:El valor predeterminado para la variable FTP path es el directorio principal del usuario. Por lo tanto, de forma predeterminada, la ruta del archivo al archivo de configuración es relativa al directorio de usuario. Para especificar una ruta absoluta al usar FTP, inicie la ruta con los caracteres %2F; por ejemplo: ftp://username:password@hostname/%2Fpath/filename.
-
Ejemplo de HTTP:
http://username:password@hostname/path/filename
-
Antes de cargar el archivo, la aplicación cliente o un administrador guarda los elementos de etiqueta XML de Junos o instrucciones de configuración de CLI como el contenido del archivo. El archivo incluye los elementos de etiqueta o instrucciones de configuración que representan todos los niveles de la jerarquía de configuración desde la raíz (representada por el <configuration>
elemento tag) hasta cada elemento que se desea cambiar. La notación es la misma que se utiliza para solicitar información de configuración. Para obtener información más detallada acerca de la representación XML de Junos de las instrucciones de configuración de Junos OS, consulte Asignar instrucciones de configuración a elementos de etiqueta Junos XML.
En el siguiente ejemplo, se muestra cómo incorporar los datos de configuración almacenados en el archivo /var/tmp/configFile en el servidor FTP llamado ftp.myco.com:
Datos de configuración de transmisión
Para proporcionar datos de configuración como una secuencia de datos, una aplicación cliente emite los <config>
elementos de etiqueta o dentro <config-text>
del <rpc>
y <edit-config>
elementos de etiqueta. Para especificar los elementos de configuración que se deben cambiar, la aplicación emite instrucciones de configuración Junos XML o CLI que representan todos los niveles de la jerarquía de configuración desde la raíz (representada por el <configuration>
elemento o <configuration-text>
tag) hasta cada elemento que se desea cambiar. La notación XML de Junos es la misma que se utiliza para solicitar la información de configuración.
<rpc> <edit-config> <target> <candidate/> </target> <config> <configuration> <!-- configuration changes --> </configuration> </config> </edit-config> </rpc> ]]>]]>
<rpc> <edit-config> <target> <candidate/> </target> <config-text> <configuration-text> <!-- configuration changes --> </configuration-text> </config-text> </edit-config> </rpc> ]]>]]>
Para obtener información más detallada acerca de las asignaciones entre los elementos de configuración Junos OS y los elementos de etiqueta Junos XML, consulte Asignar instrucciones de configuración a elementos de etiqueta Junos XML. La notación de la instrucción de configuración de CLI se describe con más detalle en la Guía del usuario de CLI.
En el siguiente ejemplo, se muestra cómo proporcionar datos de configuración XML de Junos en una secuencia de datos para configurar el archivo de registro del sistema de mensajes :
Datos de formato: XML de Junos versus instrucciones de configuración de CLI
NetCONF <copy-config>
y <edit-config>
las operaciones aceptan uno de dos formatos para los datos de configuración de Junos OS: instrucciones de configuración Junos XML o CLI. La elección entre un formato de datos sobre el otro es la preferencia personal.
Cuando se administran dispositivos que ejecutan Junos OS, una aplicación cliente puede usar la operación de protocolo <load-configuration>
Junos XML en una sesión NETCONF para cargar datos de configuración formateados mediante JSON o comandos de modo set
de configuración, además de los formatos de instrucción de configuración JUnos XML o CLI.
Si está suministrando los cambios de configuración en forma de archivos de datos, debe adjuntar el nombre de archivo de datos y la ruta de acceso dentro de <url>
las etiquetas. De forma predeterminada, estas etiquetas especifican que los archivos de datos a los que se hace referencia contienen datos de configuración con formato XML de Junos. Por lo tanto, el código siguiente declara que los datos del archivo son elementos XML de Junos:
<url>dataFile</url>
Para especificar que el archivo de datos contiene instrucciones de configuración de CLI, incluya el format="text"
atributo en la <url>
etiqueta.
<url format="text">dataFile</url>
Al transmitir datos, especifique el formato de los datos seleccionando una de dos etiquetas: <config>
para los elementos XML de Junos y <config-text>
para las instrucciones de configuración de CLI.
En el ejemplo siguiente, el <configuration>
elemento encierra datos de configuración con formato XML de Junos:
<config> <configuration> <system> <services> <ssh> <protocol-version>v2</protocol-version> </ssh> </services> </system> </configuration> </config>
En el siguiente ejemplo, el <configuration-text>
elemento encierra los mismos datos formateados como instrucciones de configuración de CLI:
<config-text> <configuration-text> system { services { ssh { protocol-version v2; } } } </configuration-text> </config-text>