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.