Citrix Application Delivery Management

Componentes anidados

El anidamiento de un componente dentro de otro componente permite al componente anidado crear sus objetos de configuración haciendo referencia a los objetos de configuración o al contexto creado por el componente principal. El componente anidado puede crear uno o más objetos para cada objeto creado en el componente principal. El anidamiento de un componente dentro de otro componente no indica ninguna relación entre los objetos de configuración creados. El anidamiento es una forma de facilitar la tarea de los componentes para construir objetos de configuración dentro de un contexto existente de los componentes principales.

Ejemplo:


components:
 -
  name: my-lbvserver-comp
  type: ns::lbvserver
   properties:
      name: $parameters.name + "-lb"
      servicetype: HTTP
      ipv46: $parameters.ip
      port: 80
      lbmethod: $parameters.lb-alg
      components:
        -
         name: my-svcg-comp
         type: ns::servicegroup
         properties:
            name: $parameters.name + "-svcgrp"
            servicetype: HTTP
         components:
            -
              name: lbvserver-svg-binding-comp
              type: ns::lbvserver_servicegroup_binding
              properties:
                name: $parent.parent.properties.name
                servicegroupname: $parent.properties.name
                  -
                    name: members-svcg-comp
                    type: ns::servicegroup_servicegroupmember_binding
                    repeat:
                      repeat-list: $parameters.svc-servers
                      repeat-item: srv
                    properties:
                      ip: $srv
                      port: str($parameters.svc-port)
                      servicegroupname: $parent.properties.name

En este ejemplo, se utiliza el anidamiento de varios niveles. El componente my-lbvserver-comp tiene un componente secundario llamado my-svcg-comp. Y, el componente my-svcg-comp tiene dos componentes secundarios dentro de él. El componente my-svcg-comp se utiliza para crear un objeto de configuración de grupo de servicios en la instancia de Citrix ADC proporcionando valores a los atributos del tipo de recurso NITRO integrado “servicegroup. “ El primer componente secundario del componente my-svcg, lbvserver-svg-binding-comp, se utiliza para enlazar el grupo de servicios creado por su componente principal al servidor virtual de equilibrio de carga (lbvserver) creado por el componente principal del principal. La notación $principal, también llamada referencia principal, se utiliza para hacer referencia a entidades en los componentes principal. El segundo componente secundario, members-svcg-comp, se utiliza para enlazar la lista de servicios al grupo de servicios creado por el componente principal. El enlace se logra mediante el uso de la construcción de repetición de StyleBook para iterar sobre la lista de servicios especificados para el parámetro svc-servers. Para obtener información sobre los componentes fijos repetidos, consulte Repetir componente fijo.

También puede crear los mismos objetos de configuración sin utilizar el anidamiento de componentes. Para obtener más información y ejemplos, consulte StyleBook para crear una configuración básica de equilibrio de carga.

Componentes anidados