Application Delivery Management
Gracias por los comentarios

Este artículo ha sido traducido automáticamente. (Aviso legal)

Usar API para crear configuraciones a partir de StyleBooks

Una vez creado el StyleBook, tiene que importarlo a Citrix Application Delivery Management (ADM) para usarlo mediante Citrix ADM o mediante las API de Citrix ADM. NetScaler ADM valida el StyleBook al importarlo y, si la validación se realiza correctamente, el StyleBook aparece en el catálogo de StyleBooks de NetScaler ADM, listo para usarse en la creación de configuraciones.

Ahora puede usar las API de StyleBook para crear configuraciones basadas en este StyleBook. Puede utilizar cualquier herramienta como la herramienta de línea de comandos curl o la extensión del explorador Chrome Postman para enviar solicitudes HTTP a NetScaler ADM.

Ejemplo 1

Considere el StyleBook “lb-vserver” que ha creado en StyleBook para crear un servidor virtual de equilibrio de carga. Utilice la API REST para crear un paquete de configuración a partir de este StyleBook de la siguiente manera:

POST https://<MAS-DNS-or-IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/0.1/lb-vserver/configpacks
Content-Type: application/json Accept: application/json { "configpack": { "parameters": { "name": "lb1", "ip": "10.102.117.31" }, "target_devices": [ { "id": "deecee30-f478-4446-9741-a85041903410" } ] } }

En esta solicitud HTTP, el identificador (por ejemplo, “deecee30-f478-4446-9741-a85041903410”) es el ID de instancia de NetScaler ADC en la que se crea el servidor virtual de equilibrio de carga lb1 con la dirección IP 10.102.117.31. El ID de instancia de la instancia de NetScaler ADC se recupera de NetScaler ADM.

Para obtener el ID de una instancia administrada por NetScaler ADM, puede utilizar las API de NetScaler ADM. Por ejemplo, para recuperar el ID de instancia de una instancia de Citrix ADC cuya dirección IP es 192.168.153.160, puede utilizar la siguiente API:

GET https://<MAS-IP>/nitro/v1/config/ns?filter=ip_address:192.168.153.160
Accept: application/json

La respuesta contiene el ID en la carga útil:

200 OK Content-Type: application/json { "errorcode": 0, "message": "Done", "operation": "get", "resourceType": "ns", "username": "nsroot", "tenant_name": "Owner", "resourceName": "", "ns": [ { "is_grace": "false", "hostname": "", "std_bw_config": "0", "gateway_deployment": "false","id": "deecee30-f478-4446-9741-a85041903410", ... } ] }

Si el paquete de configuración se ha creado correctamente, recibirá la siguiente respuesta HTTP:

200 OK Content-Type: application/json { "configpack": { "config_id": "1460806080" } }

Ha creado su primer paquete de configuración que se identifica de forma única mediante el id 1460806080. Puede utilizar este ID para consultar, actualizar o eliminar la configuración.

Ejemplo 2

Puede utilizar el mismo StyleBook para crear otro paquete de configuración y ejecutarlo en las mismas instancias de NetScaler ADC o diferentes. En este ejemplo, cree otra configuración y proporcione un nombre y una dirección IP diferentes para el servidor virtual y también especifique LEASTCONNECTION como método de equilibrio de carga. Implemente esta configuración en dos instancias de NetScaler ADC.

La solicitud HTTP es la siguiente:

POST https://<MAS-DNS-or-IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/0.1/lb-vserver/configpacks
Content-Type: application/json Accept: application/json { "configpack": { "parameters": { "name": "lb2", "ip": "10.102.117.32", "lb-alg": "LEASTCONNECTION" }, "target_devices" [ {"id": "deecee30-f478-4446-9741-a85041903410"}, {"id": "debecc60-d589-4557-8632-a74032802412"} ] } }

En esta solicitud HTTP, el servidor virtual de equilibrio de carga lb2 con la dirección IP 10.102.117.32 se crea en las dos instancias NetScaler ADC representadas por los identificadores “deecee30-f478-4446-9741-a85041903410” y “debecc60-d589-4557-8632-a74032802412”.

Al crear correctamente el paquete de configuración, se recibe la siguiente respuesta HTTP:

200 OK Content-Type: application/json { "configpack": { "config_id": "1657696292" } }

Este nuevo paquete de configuración tiene un ID diferente 165769629. Puede actualizar o eliminar esta configuración mediante este id.

Ejemplo 3

Considere el StyleBook “basic-lb-config” que ha creado en StyleBook para crear una configuración básica de equilibrio de carga. Utilice la API REST para crear un paquete de configuración a partir de este StyleBook de la siguiente manera:

POST http://<MAS-DNS-or-IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/0.1/basic-lb-config/configpacks
Content-Type: application/json Accept: application/json { "configpack": { "parameters": { "name": "myapp", "ip": "10.70.122.25", "svc-servers": ["192.168.100.11","192.168.100.12"], "svc-port": 8080 }, "target_devices": [ { "id": "deecee30-f478-4446-9741-a85041903410" }, { "id": "debecc60-d589-4557-8632-a74032802412" } ] } }

En esta solicitud HTTP, la configuración de equilibrio de carga se ejecuta en dos instancias de NetScaler ADC. Puede iniciar sesión en estas instancias de NetScaler ADC para comprobar si se crean un servidor virtual y un grupo de servicios con dos servicios enlazados.

Ejemplo 4

Considere el ejemplo compuesto de StyleBook que creó en Crear un StyleBook compuesto. Utilice la API REST para crear un paquete de configuración a partir de este StyleBook de la siguiente manera:

POST http://<MAS-DNS-or-IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/0.1/composite-example/configpacks
Content-Type: application/json Accept: application/json { "configpack": { "parameters": { "name": "myapp", "ip": "2.2.2.2", "svc-servers": ["10.102.29.52","10.102.29.53"] }, "target_devices": [ { "id": "deecee30-f478-4446-9741-a85041903410" }, { "id": "debecc60-d589-4557-8632-a74032802412" } ] } }

En esta solicitud HTTP, la configuración se crea en dos instancias de NetScaler ADC representadas por sus ID. Si inicia sesión en las instancias NetScaler ADC, puede ver los objetos de configuración creados por el StyleBook “basic-lb-config” que se importó en el StyleBook “composite-example”. También puede ver un nuevo monitor HTTP llamado “myapp-mon” que formaba parte del StyleBook de “ejemplos compuestos”.

Al crear correctamente el paquete de configuración, se recibe la siguiente respuesta HTTP:

200 OK Content-Type: application/json{ "configpack": { "config_id": "4917276817" } }

Actualización de una configuración

Para actualizar esta configuración, por ejemplo, agregando un nuevo servidor back-end con dirección IP 10.102.29.54 al servidor virtual myapp de equilibrio de carga, utilice la API para actualizar un paquete de configuración de la siguiente manera:

PUT http://<MAS-DNS-or-IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/0.1/composite-example/configpacks/4917276817
Content-Type: application/json Accept: application/json { "configpack": { "parameters": { "name": "myapp", "ip": "2.2.2.2", "svc-servers": ["10.102.29.52","10.102.29.53","10.102.29.54"] }, "target_devices": [ { "id": "deecee30-f478-4446-9741-a85041903410" }, { "id": "debecc60-d589-4557-8632-a74032802412" } ] } }

Al actualizar correctamente el paquete de configuración, se recibe la siguiente respuesta HTTP:

200 OK Content-Type: application/json { "configpack": { "config-id": "4917276817" } }

Eliminación de una configuración

Para eliminar esta configuración (de todas las instancias de NetScaler ADC), puede utilizar la API para eliminar un paquete de configuración de la siguiente manera:

DELETE http://<MAS-DNS-or-IP>/stylebook/nitro/v1/config/stylebooks/com.example.stylebooks/0.1/composite-example/configpacks/4917276817
Accept: application/json

Al eliminar correctamente el paquete de configuración, se recibe la siguiente respuesta HTTP:

200 OK Content-Type: application/json { "configpack": { "config_id": "4917276817" } }

Puede iniciar sesión en la instancia de NetScaler ADC y comprobar que se han eliminado todos los objetos de configuración que forman parte de este paquete de configuración.

Si quiere quitar la configuración de instancias específicas de NetScaler ADC en lugar de todas, utilice la operación del paquete de configuración de actualización descrita anteriormente y cambie el atributo “target_devices” en la carga útil de JSON para quitar los identificadores de instancia específicos de NetScaler ADC.

La versión oficial de este contenido está en inglés. Para mayor comodidad, parte del contenido de la documentación de Cloud Software Group solo tiene traducción automática. Cloud Software Group no puede controlar el contenido con traducción automática, que puede contener errores, imprecisiones o un lenguaje inadecuado. No se ofrece ninguna garantía, ni implícita ni explícita, en cuanto a la exactitud, la fiabilidad, la idoneidad o la precisión de las traducciones realizadas del original en inglés a cualquier otro idioma, o que su producto o servicio de Cloud Software Group se ajusten a cualquier contenido con traducción automática, y cualquier garantía provista bajo el contrato de licencia del usuario final o las condiciones de servicio, o cualquier otro contrato con Cloud Software Group, de que el producto o el servicio se ajusten a la documentación no se aplicará en cuanto dicha documentación se ha traducido automáticamente. Cloud Software Group no se hace responsable de los daños o los problemas que puedan surgir del uso del contenido traducido automáticamente.
Usar API para crear configuraciones a partir de StyleBooks