Configuración de StyleBook

Componentes anidados

Al anidar un componente dentro de otro componente, el componente anidado puede 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. Anidar 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
<!--NeedCopy-->

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 my-svcg-comp componente tiene dos componentes secundarios dentro de él. El my-svcg-comp componente se utiliza para crear un objeto de configuración de grupo de servicios en la instancia de NetScaler proporcionando valores a los atributos del tipo de recurso NITRO integrado “servicegroup. “ El primer componente secundario del my-svcg componente, 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 un StyleBook para iterar sobre la lista de servicios especificados para el parámetro svc-servers. Para obtener información sobre las construcciones repetidas, consulte Repetir construcción.

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 to Create a Basic Load Balancing Configuration.

Componentes anidados

En este artículo