Configuración de StyleBook

Parámetros

Esta sección le permite definir todos los parámetros que necesita en su StyleBook para crear una configuración. Describe la entrada que toma su StyleBook. Aunque esta sección es opcional, la mayoría de StyleBook puede necesitar una. Puede considerar la sección de parámetros para definir los campos de los usuarios que utilizan StyleBook para crear una configuración en una instancia de NetScaler.

Al importar su StyleBook a NetScaler Console y usarlo para crear una configuración, la GUI usa esta sección del StyleBook para mostrar un formulario. Este formulario toma una entrada para los valores de parámetro definidos.

En la siguiente sección se describen los atributos que debe especificar para cada parámetro de esta sección:

‘nombre’

El nombre del parámetro que quiere definir. Puede especificar un nombre alfanumérico.

El nombre debe comenzar con un alfabeto, y puede incluir más alfabetos, números, guión (-) o guión bajo (_).

Al escribir un StyleBook, puede utilizar este atributo name para hacer referencia al parámetro en otras secciones mediante la notación $parameters.<name>.

¿Obligatorio? Sí

‘etiqueta’

Cadena que se muestra en la GUI de NetScaler Console como el nombre de este parámetro.

¿Obligatorio? No

‘descripción’

Cadena de ayuda que describe para qué se utiliza el parámetro. La GUI de NetScaler Console muestra este texto cuando el usuario hace clic en el icono de ayuda de este parámetro.

¿Obligatorio? No

‘tipo’

El tipo de valor que pueden tomar estos parámetros. Los parámetros pueden ser de cualquiera de los siguientes tipos incorporados:

  • string: Una matriz de caracteres. Si no se especifica una longitud, el valor de cadena puede tener cualquier número de caracteres. Sin embargo, puede limitar la longitud de un tipo de cadena utilizando los atributos longitud mínima y longitud máxima.

  • number: un número entero. Puede especificar el número mínimo y máximo que puede tomar este tipo mediante los atributos valor mínimo y valor máximo.

  • boolean: Puede ser verdadero o falso. YAML considera todos los literales como booleanos (por ejemplo, Sí o No).

  • ipaddress: cadena que representa una dirección IPv4 o IPv6 válida.

  • ipnetwork: Tiene dos partes. La primera parte es la dirección IP y la segunda parte es la máscara de red.

    Red IP

    La máscara de red consiste en la longitud de la máscara de red (netmask-len) o la dirección IP de la máscara de red (netmask_ip). La longitud de la máscara de red es un entero entre 0-32 y 0-128 para una dirección IPv6. Se utiliza para determinar el recuento de direcciones IP en una red.

    Al crear o actualizar un paquete de configuración desde la GUI de NetScaler Console, puede realizar una de las siguientes acciones:

    • Habilite la longitud de la máscara de red e introduzca la dirección IP y la longitud de la máscara de red
    • Desactive la longitud de la máscara de red e introduzca la dirección IP y la dirección IP de la máscara de red
  • tcp-port: número entre 0 y 65535 que representa un puerto TCP o UDP.

  • password: Representa un valor de cadena opaca/secreta. Cuando la GUI de NetScaler Console muestra un valor para este parámetro, aparece con asteriscos (*****).

  • certfile: Representa un archivo de certificado. Este valor le permite cargar los archivos directamente desde su sistema local al crear una configuración de StyleBook mediante la GUI de NetScaler Console. El archivo de certificado cargado se almacena en el directorio /var/mps/tenants/\<tenant_path>/ns_ssl_certsde NetScaler Console.

    El archivo de certificado se agrega a la lista de certificados administrados por NetScaler Console.

  • keyfile: Representa un archivo de clave de certificado. Este valor le permite cargar el archivo directamente desde su sistema local al crear una configuración de StyleBook mediante la GUI de NetScaler Console. El archivo de certificado cargado se almacena en el directorio /var/mps/tenants/\<tenant_path>/ns_ssl_keysde NetScaler Console.

    El archivo de claves de certificado se agrega a la lista de claves de certificado administradas por NetScaler Console.

  • certkey: Este tipo se usa para seleccionar certificados SSL del almacén de certificados de NetScaler Console. Esta tienda muestra los certificados SSL existentes que se cargan en el servidor de NetScaler Console. Por lo tanto, puede almacenar los certificados SSL en un lugar, que es el almacén de certificados de NetScaler Console, y reutilizarlos cuando sea necesario.

    Al crear un paquete de configuración, el usuario puede agregar o seleccionar certificados SSL del almacén de certificados. Además, el usuario puede seleccionar el mismo certificado para varios paquetes de configuración.

  • file: Representa un archivo.

  • object: Este tipo se usa para agrupar varios parámetros relacionados en un elemento principal. Especifique el parámetro principal el tipo como “objeto”. Un parámetro de tipo “objeto” puede tener una sección de “parámetros” anidada para describir los parámetros que contiene.

  • another StyleBook: cuando se utiliza este tipo de parámetro, este parámetro espera que su valor tenga la forma de los parámetros definidos en el StyleBook que denota su tipo.

Un parámetro también puede tener una type que es la lista de tipos. Para ello, agregue [] al final del tipo. Por ejemplo, si el atributo type es string[], este parámetro toma una lista de cadenas como entrada. Puede proporcionar una, dos o varias cadenas para este parámetro al crear una configuración a partir de este StyleBook.

¿Obligatorio? Sí

‘red’

También puede especificar el networkatributo para asignar automáticamente una dirección IP desde una red IPAM de NetScaler Consoletype: ipaddress.

NetScaler Console asigna automáticamente una dirección IP desde el networkatributo al crear una configuración de StyleBook.

Ejemplo:

      name: virtual-ip
      label: "Load Balancer IP Address"
      type: ipaddress
      network: "network-1"
      required: true
<!--NeedCopy-->

En este ejemplo, el virtual-ip campo asigna automáticamente una dirección IP desde network-1. La dirección IP se libera de nuevo a la red cuando se elimina la configuración.

‘asignación dinámica’

El atributo dynamic-allocation se agrega en la definición de parámetro de type:ipaddress. Utilice este atributo para enumerar de forma dinámica las redes IPAM de NetScaler Console. Este atributo puede tomar true o false como una entrada. Para type: ipaddress, especifique el dynamic-allocation: trueatributo para enumerar dinámicamente las redes IPAM de NetScaler Console que se encuentran en NetScaler Console. En el formulario de creación del paquete de configuración, puede hacer lo siguiente:

  1. Seleccione la red IPAM requerida de la lista.

  2. Especifique la dirección IP que quiere asignar desde la red IPAM seleccionada.

    Si no se especifica ninguna dirección IP, NetScaler Console asigna automáticamente una dirección IP de la red de IPAM seleccionada.

Ejemplo:

  -
    name: virtual-ip
    label: "Load Balancer IP Address"
    type: ipaddress
    dynamic-allocation: true
    required: true
<!--NeedCopy-->

En este ejemplo, el virtual-ipcampo muestra las redes IPAM de NetScaler Console que están en NetScaler Console. Seleccione una red de la lista para asignar automáticamente una dirección IP de la red. La dirección IP se libera de nuevo a la red cuando se elimina la configuración.

‘Tecla’

Especifique true o false para indicar si este parámetro es un parámetro clave para StyleBook.

Un StyleBook puede tener uno o más parámetros definidos como el parámetro “clave”. La página Configuración > Paquetes de configuración muestra el valor del parámetro como clave de visualización.

Al crear diferentes paquetes de configuración a partir del mismo StyleBook, cada configuración puede tener un valor diferente para este parámetro. Este valor aparece como la tecla de visualización en la GUI. Con esta clave, puede ordenar o filtrar el paquete de configuración.

Ejemplo:

parameters:
  - name: example-appname
    type: string
    label: Application Name
    required: true
    key: true
<!--NeedCopy-->

Cuando un usuario de StyleBook crea un paquete de configuración, el valor del parámetro example-appname aparece como clave de visualización. El usuario de StyleBook puede usar esta clave para identificar este paquete de configuración.

Nota

La clave de configuración de un paquete de configuración sobrescribe el conjunto de atributos clave en cualquiera de sus parámetros. Por lo tanto, si un usuario introduce un valor para la clave de configuración, este valor aparece en la columna Clave de visualización.

El valor predeterminado es false.

¿Obligatorio? No

“requerido”

Especifique true o false para indicar si un parámetro es obligatorio u opcional. Si se establece en true, el parámetro es obligatorio y el usuario debe proporcionar un valor para este parámetro al crear configuraciones.

La GUI de NetScaler Console obliga al usuario a proporcionar un valor válido para este parámetro.

El valor predeterminado es false.

¿Obligatorio? No

‘allowed-values’

Utilice este atributo para definir una lista de valores válidos para un parámetro, cuando el tipo se establece en “cadena”.

Al crear una configuración desde la GUI de NetScaler Console, se solicita al usuario que seleccione un valor de parámetro de esta lista. Esta lista es estática, el usuario solo puede seleccionar un valor de la lista. Si quiere permitir que el usuario agregue valores a la lista, utilice el atributo allow-new-values.

Nota:

Si quiere mostrar los valores de la lista como opciones de radio, defina el atributo layout.

Ejemplo 1:

-
      name: ipaddress
      type: string
      allowed-values:
            -  SOURCEIP
            -  DEST IP
            -  NONE
<!--NeedCopy-->

Ejemplo 2:

-
      name: TCP Port
      type: tcp-port
      allowed-values:
            -  80
            -  81
            -  8080
<!--NeedCopy-->

Ejemplo 3:

Lista de tcp-ports, donde cada elemento de la lista solo puede tener valores especificados en allowed-values.

-
      name: tcpports
      type: tcp-port[]
      allowed-values:
            -  80
            -  81
            -  8080
            -  8081
<!--NeedCopy-->

¿Obligatorio? No

‘permitir-nuevos-valo’

Utilice este atributo para agregar una lista dinámica para un parámetro. Al crear o actualizar una configuración desde la GUI de NetScaler Console, el usuario puede agregar valores a la lista.

Especifique true si quiere que el usuario agregue un valor a la lista de parámetros. Puede utilizar los allowed-values atributos allow-new-values y en una combinación. Esta combinación le permite definir una lista de valores sugeridos para un parámetro y también aceptar nuevos valores.

-
      name: port
      type: tcp-port
      allowed-values:
            -  80
            -  81
            -  8080
      allow-new-values: true
<!--NeedCopy-->

En este ejemplo, un usuario puede seleccionar entre 80, 81, 8080 o introducir un nuevo valor para el parámetro port al crear o actualizar un paquete de configuración.

‘predeterminado’

Utilice este atributo para asignar un valor predeterminado a un parámetro opcional. Cuando un usuario crea una configuración sin especificar un valor, se utiliza el valor predeterminado.

El parámetro no toma ningún valor si se cumplen las siguientes condiciones:

  • El parámetro no tiene ningún valor predeterminado.

  • Un usuario no proporciona un valor para el parámetro.

Ejemplo 1:

-
      name: timeout
      type: number
      default: 20
<!--NeedCopy-->

Ejemplo 2:

Para enumerar los valores predeterminados del parámetro:

-
      name: protocols
      type: string[]
      default:
            -  TCP
            -  UDP
            -  IP
<!--NeedCopy-->

Ejemplo 3:

-
      name: timeout
      type: number
      default: 20
<!--NeedCopy-->

Ejemplo 4:

-
      name: tcpport
      type: tcp-port
      default: 20
<!--NeedCopy-->

¿Obligatorio? No

‘patrón’

Utilice este atributo para definir un patrón (expresión regular) para los valores válidos de este parámetro, cuando el tipo del parámetro sea “cadena”.

Ejemplo:

-
      name: appname
      type: string
      pattern: "[a-z]+"
<!--NeedCopy-->

¿Obligatorio? No

‘valor mín’

Utilice este atributo para definir el valor mínimo de los parámetros de tipo number o tcp-port.

Ejemplo:

-
      name: audio-port
      type: tcp-port
      min-value: 5000
<!--NeedCopy-->

El min-value de números puede ser negativo. Sin embargo, el min-value para tcp-port debe ser positivo.

¿Obligatorio? No

‘valor máx’

Utilice este atributo para definir el valor máximo de los parámetros de tipo number o tcp-port.

Asegúrese de que el valor máximo es mayor que el valor mínimo, si se define.

Ejemplo:

-
      name: audio-port
      type: tcp-port
      min-value: 5000
      max-value: 15000
<!--NeedCopy-->

¿Obligatorio? No

‘longitud mín’

Utilice este atributo para definir la longitud mínima de los valores aceptados para un parámetro de tipo “cadena”.

Asegúrese de que la longitud mínima de los caracteres definidos como valores sea mayor o igual a cero.

Ejemplo:

-
      name: appname
      type: string
      min-length: 3
<!--NeedCopy-->

¿Obligatorio? No

‘longitud máx’

Utilice este atributo para definir la longitud máxima de los valores aceptados para un parámetro de tipo “cadena”.

Asegúrese de que la longitud máxima de los valores sea mayor o igual a la longitud de los caracteres definidos en min-length.

Ejemplo:

-
      name: appname
      type: string
      max-length: 64
<!--NeedCopy-->

¿Obligatorio? No

‘min-artículos’

Utilice este atributo para definir el número mínimo de elementos en un parámetro que es una lista.

Asegúrese de que el número mínimo de elementos sea mayor o igual a cero.

Ejemplo:

-
      name: server-ips
      type: ipaddress[]
      min-items: 2
<!--NeedCopy-->

¿Obligatorio? No

‘Máx-artículos’

Utilice este atributo para definir el número máximo de elementos en un parámetro que es una lista.

Asegúrese de que el número máximo de elementos sea mayor que el número mínimo de elementos si se define.

Ejemplo:

-
      name: server-ips
      type: ipaddress[]
      min-items: 2
      max-items: 250
<!--NeedCopy-->

¿Obligatorio? No

‘gui’

Utilice este atributo para personalizar el diseño del parámetro en la GUI de NetScaler Console.

¿Obligatorio? No

‘columnas’

Este atributo es un subatributo del atributo gui. Utilice este atributo para definir el número de columnas para mostrar los type: object[]parámetros en la GUI de NetScaler Console.

¿Obligatorio? No

‘updatable’

Este atributo es un subatributo del atributo gui. Utilice este atributo para especificar si el parámetro se puede actualizar después de crear la configuración. Establezca este atributo solo en tipos de parámetros simples como string, booleano o number.

Si el valor se establece en false, el campo de parámetro aparece atenuado cuando se actualiza la configuración.

¿Obligatorio? No

‘colapse_pane’

Este atributo es un subatributo del atributo gui. Utilice este atributo para especificar si el panel que define el diseño de este parámetro de objeto se puede contraer.

Si el valor se establece en true, el usuario puede expandir o contraer los parámetros secundarios bajo este parámetro principal.

Ejemplo:

gui:

 collapse_pane: true

 columns: 2
<!--NeedCopy-->

Ejemplo de una sección completa de parámetros:


parameters:

   -

      name: name

      label: Name

      description: Name of the application

      type: string

      required: true

   -

      name: ip

      label: IP Address

      description: The virtual IP address used for this application

      type: ipaddress

      required: true

   -

      name: svc-servers

      label: Servers

      type: object[]

      required: true

      parameters:

        -

              name: svc-ip

              label: Server IP

              description: The IP address of the server

              type: ipaddress

              required: true

        -

              name: svc-port

              label: Server Port

              description: The TCP port of the server

              type: tcp-port

              default: 80

        -

              name: lb-alg

              label: LoadBalancing Algorithm

              type: string

              allowed-values:

                 - ROUNDROBIN

                 - LEASTCONNECTION

              default: ROUNDROBIN

        -

              name: enable-healthcheck

              label: Enable HealthCheck?

              type: boolean

              default: true
<!--NeedCopy-->

A continuación se muestra un ejemplo que define todos los atributos de una lista y los valores explicados en secciones anteriores:


        -
              name: features-list

              type: string[]

              min-length: 1

              max-length: 3

              min-items: 1

              max-items: 3

              pattern: "[A-Z]+"

              allowed-values:

                - SP

                - LB

                - CS

              default:

                - LB
<!--NeedCopy-->

‘diseño’

Este atributo es un subatributo del atributo gui. Utilice este atributo para mostrar los valores de la lista como botones de opción. Establezca el atributo layout en radio en la sección de parámetros de una definición de StyleBook. Se aplica al parámetro que contiene el atributo allowed-values. Al crear un paquete de configuración, la GUI de NetScaler Console muestra los valores de la allowed-valueslista como botones de opción.

Ejemplo:

-
    gui:
        layout: radio
    allowed-values:
        - One
        - Two
        - Three
<!--NeedCopy-->

Los valores Uno, Dos y Tres aparecen como botones de opción en la GUI de NetScaler Console.

‘parámetros dependientes’

Este atributo es un subatributo del atributo gui. Controla dinámicamente el aspecto del parámetro o su valor inicial en el formulario de configuración de StyleBook basándose en el valor especificado en otro parámetro.

Especifique este atributo en un parámetro de origen que controle el comportamiento del parámetro en el formulario. Puede incluir varias condiciones que controlen otros parámetros. Por ejemplo, un parámetro de origen protocol puede tener un parámetro dependiente certificate, que solo aparece si el valor del parámetro protocol es SSL.

Cada condición puede tener los siguientes atributos:

  • target-parameter: especifique el parámetro de destino al que se aplica esta condición.

  • valores de coincidencia: especifique la lista de valores del parámetro de origen que activan la acción.

  • acción: especifique una de las siguientes acciones en el parámetro de destino:

    • read-only: El parámetro se hace de solo lectura.

    • show: el parámetro aparece en el formulario si está oculto.

    • hide: el parámetro se elimina del formulario.

    • set-value: El valor del parámetro se establece en el valor especificado en el atributo value.

  • value: Valor del parámetro objetivo si la acción es set-value.

Cuando una entrada de usuario coincide con los valores especificados en el parámetro de origen, el aspecto o el valor del parámetro de destino cambia de acuerdo con la acción especificada.

Ejemplo:

 -
    name: lb-virtual-port
    label: "Load Balanced App Virtual Port"
    description: "TCP port representing the Load Balanced application"
    type: tcp-port
    gui:
      updatable: false
      dependent-parameters:
            -
              matching-values:
                - 80
              target-parameter: $parameters.lb-service-type
              action: set-value
              allowed-values:
              - HTTP
              - TCP
              - UDP

    default: 80

<!--NeedCopy-->

En este ejemplo, el parámetro dependiente se especifica en el parámetro lb-virtual-port (parámetro source).

Cuando el valor del parámetro de origen se establece en 80, el parámetro lb-service-type activa la acción set-value. Como resultado, un usuario puede seleccionar una de las siguientes opciones:

  • HTTP
  • TCP
  • UDP

is_policy_expression

Este atributo es un subatributo del atributo gui. Utilice este atributo para permitir que el editor de expresiones de directiva componga una expresión de directiva. Establezca is_policy_expression en true en la definición del parámetro. Este atributo solo se puede usar en parámetros de tipo “cadena”.

Ejemplo:

parameters:
  -

    name: expression
    type: string
    label: Expression
    required: true
    gui:
      is_policy_expression: true
<!--NeedCopy-->