Parameter
Dieser Abschnitt ermöglicht es Ihnen, alle Parameter zu definieren, die Sie in Ihrem StyleBook benötigen, um eine Konfiguration zu erstellen. Er beschreibt die Eingabe, die Ihr StyleBook entgegennimmt. Obwohl dieser Abschnitt optional ist, benötigen die meisten StyleBooks einen. Sie können den Parameterabschnitt verwenden, um die Felder für die Benutzer zu definieren, die das StyleBook verwenden, um eine Konfiguration auf einer NetScaler-Instanz zu erstellen.
Wenn Sie Ihr StyleBook in die NetScaler Console importieren und es zum Erstellen einer Konfiguration verwenden, nutzt die GUI diesen Abschnitt des StyleBooks, um ein Formular anzuzeigen. Dieses Formular nimmt eine Eingabe für die definierten Parameterwerte entgegen.
Der folgende Abschnitt beschreibt die Attribute, die Sie für jeden Parameter in diesem Abschnitt angeben müssen:
'Name'
Der Name des Parameters, den Sie definieren möchten. Sie können einen alphanumerischen Namen angeben.
Der Name muss mit einem Buchstaben beginnen und kann weitere Buchstaben, Zahlen, Bindestriche (-) oder Unterstriche (_) enthalten.
Beim Schreiben eines StyleBooks können Sie dieses
name Attribut verwenden, um in anderen Abschnitten mit der Notation $parameters.\<name> auf den Parameter zu verweisen.
Obligatorisch? Ja
'Bezeichnung'
Eine Zeichenfolge, die in der NetScaler Console GUI als Name dieses Parameters angezeigt wird.
Obligatorisch? Nein
'Beschreibung'
Eine Hilfszeichenfolge, die beschreibt, wofür der Parameter verwendet wird. Die NetScaler Console GUI zeigt diesen Text an, wenn der Benutzer auf das Hilfesymbol für diesen Parameter klickt.
Obligatorisch? Nein
'Typ'
Der Werttyp, den diese Parameter annehmen können. Parameter können einen der folgenden integrierten Typen haben:
-
string: Ein Array von Zeichen. Wenn keine Länge angegeben ist, kann der Zeichenfolgenwert eine beliebige Anzahl von Zeichen annehmen. Sie können die Länge eines Zeichenfolgentyps jedoch mithilfe der Attribute min-length und max-length begrenzen. -
number: Eine ganze Zahl. Sie können die minimale und maximale Zahl, die dieser Typ annehmen kann, mithilfe der Attribute min-value und max-value angeben. -
boolean: Kann entweder true oder false sein. YAML betrachtet alle Literale als Booleans (zum Beispiel Yes oder No). -
ipaddress: Eine Zeichenfolge, die eine gültige IPv4- oder IPv6-Adresse darstellt. -
ipnetwork: Es besteht aus zwei Teilen. Der erste Teil ist die IP-Adresse und der zweite Teil ist die Netzmaske.
Die Netzmaske besteht aus der Netzmaskenlänge (netmask-len) oder der Netzmasken-IP-Adresse (netmask_ip). Die Netzmaskenlänge ist eine ganze Zahl zwischen 0-32 und 0–128 für eine IPv6-Adresse. Sie wird verwendet, um die Anzahl der IP-Adressen in einem Netzwerk zu bestimmen.Beim Erstellen oder Aktualisieren eines Konfigurationspakets über die NetScaler Console GUI können Sie eine der folgenden Aktionen ausführen:-
Netzmaskenlänge aktivieren und die IP-Adresse und Netzmaskenlänge eingeben
-
Netzmaskenlänge deaktivieren und die IP-Adresse und Netzmasken-IP-Adresse eingeben
-
-
tcp-port: Eine Zahl zwischen 0 und 65535, die einen TCP- oder UDP-Port darstellt. -
password: Stellt einen undurchsichtigen/geheimen Zeichenfolgenwert dar. Wenn die NetScaler Console GUI einen Wert für diesen Parameter anzeigt, wird er als Sternchen (*****) dargestellt. -
certfile: Stellt eine Zertifikatsdatei dar. Dieser Wert ermöglicht es Ihnen, die Dateien direkt von Ihrem lokalen System hochzuladen, wenn Sie eine StyleBook-Konfiguration über die NetScaler Console GUI erstellen. Die hochgeladene Zertifikatsdatei wird im Verzeichnis/var/mps/tenants/\<tenant_path>/ns_ssl_certsin NetScaler Console gespeichert.Die Zertifikatsdatei wird der Liste der von NetScaler Console verwalteten Zertifikate hinzugefügt. -
keyfile: Stellt eine Zertifikatsschlüsseldatei dar. Dieser Wert ermöglicht es Ihnen, die Datei direkt von Ihrem lokalen System hochzuladen, wenn Sie eine StyleBook-Konfiguration über die NetScaler Console GUI erstellen. Die hochgeladene Zertifikatsdatei wird im Verzeichnis/var/mps/tenants/\<tenant_path>/ns_ssl_keysin NetScaler Console gespeichert.Die Zertifikatsschlüsseldatei wird der Liste der von NetScaler Console verwalteten Zertifikatsschlüssel hinzugefügt. -
certkey: Dieser Typ wird verwendet, um SSL-Zertifikate aus dem NetScaler Console-Zertifikatsspeicher auszuwählen. Dieser Speicher listet die vorhandenen SSL-Zertifikate auf, die auf Ihren NetScaler Console-Server hochgeladen wurden. So können Sie SSL-Zertifikate an einem Ort, nämlich dem NetScaler Console-Zertifikatsspeicher, speichern und bei Bedarf wiederverwenden.Beim Erstellen eines Konfigurationspakets kann ein Benutzer SSL-Zertifikate aus dem Zertifikatsspeicher hinzufügen oder auswählen. Außerdem kann der Benutzer dasselbe Zertifikat für mehrere Konfigurationspakete auswählen. -
file: Stellt eine Datei dar. -
object: Dieser Typ wird verwendet, um mehrere verwandte Parameter unter einem übergeordneten Element zu gruppieren. Geben Sie für den übergeordneten Parameter den Typ als „object“ an. Ein Parameter vom Typ „object“ kann einen verschachtelten „parameters“-Abschnitt haben, um die darin enthaltenen Parameter zu beschreiben. -
another StyleBook: Wenn Sie diesen Parametertyp verwenden, erwartet dieser Parameter, dass sein Wert in der Form der Parameter vorliegt, die im StyleBook definiert sind und seinen Typ angeben.
Ein Parameter kann auch eine
type haben, die die Liste der Typen ist. Fügen Sie dazu [] am Ende des Typs hinzu. Wenn beispielsweise das type-Attribut string[] ist, nimmt dieser Parameter eine Liste von Zeichenfolgen als Eingabe. Sie können eine, zwei oder mehrere Zeichenfolgen für diesen Parameter angeben, wenn Sie eine Konfiguration aus diesem StyleBook erstellen.
Obligatorisch? Ja
'Netzwerk'
Für
type: ipaddress können Sie das Attribut network angeben, um eine IP-Adresse automatisch aus einem NetScaler Console IPAM-Netzwerk zuzuweisen.
NetScaler Console weist eine IP-Adresse automatisch aus dem Attribut
network zu, wenn Sie eine StyleBook-Konfiguration erstellen.
Beispiel:
name: virtual-ip
label: "Load Balancer IP Address"
type: ipaddress
network: "network-1"
required: true
In diesem Beispiel weist das Feld
virtual-ip automatisch eine IP-Adresse aus network-1 zu. Die IP-Adresse wird nach dem Löschen der Konfiguration an das Netzwerk zurückgegeben.
'dynamic-allocation'
Das Attribut
dynamic-allocation wird in der Parameterdefinition von type:ipaddress hinzugefügt. Verwenden Sie dieses Attribut, um die NetScaler Console IPAM-Netzwerke dynamisch aufzulisten. Dieses Attribut kann entweder true oder false als Eingabe annehmen. Für type: ipaddress geben Sie das Attribut dynamic-allocation: true an, um die NetScaler Console IPAM-Netzwerke, die sich in NetScaler Console befinden, dynamisch aufzulisten. Im Formular zur Erstellung von Konfigurationspaketen können Sie Folgendes tun:
-
Wählen Sie das erforderliche IPAM-Netzwerk aus der Liste aus.
-
Geben Sie eine IP-Adresse an, die Sie aus dem ausgewählten IPAM-Netzwerk zuweisen möchten.Wenn keine IP-Adresse angegeben wird, weist die NetScaler Console automatisch eine IP-Adresse aus dem ausgewählten IPAM-Netzwerk zu.
Beispiel:
-
name: virtual-ip
label: "Load Balancer IP Address"
type: ipaddress
dynamic-allocation: true
required: true
In diesem Beispiel listet das Feld
virtual-ip die NetScaler Console IPAM-Netzwerke auf, die sich in NetScaler Console befinden. Wählen Sie ein Netzwerk aus der Liste aus, um automatisch eine IP-Adresse aus dem Netzwerk zuzuweisen. Die IP-Adresse wird an das Netzwerk zurückgegeben, wenn die Konfiguration gelöscht wird.
'Schlüssel'
Geben Sie „true“ oder „false“ an, um zu kennzeichnen, ob dieser Parameter ein Schlüsselparameter für das StyleBook ist.
Ein StyleBook kann einen oder mehrere Parameter als „Schlüssel“-Parameter definiert haben. Die Seite Configuration > Config Packs zeigt den Wert des Parameters als Anzeigeschlüssel an.
Wenn Sie verschiedene Konfigurationspakete aus demselben StyleBook erstellen, kann jede Konfiguration einen anderen Wert für diesen Parameter haben. Dieser Wert wird als Anzeigeschlüssel in der GUI angezeigt. Mit diesem Schlüssel können Sie das Konfigurationspaket sortieren oder filtern.
Beispiel:
parameters:
- name: example-appname
type: string
label: Application Name
required: true
key: true
Wenn ein StyleBook-Benutzer ein Konfigurationspaket erstellt, wird der Wert für den Parameter
example-appname als Anzeigeschlüssel angezeigt. Der StyleBook-Benutzer kann diesen Schlüssel verwenden, um dieses Konfigurationspaket zu identifizieren.
Hinweis
Der Konfigurationsschlüssel eines Konfigurationspakets überschreibt das Schlüsselattribut, das für einen seiner Parameter festgelegt ist. Wenn ein Benutzer also einen Wert für den Konfigurationsschlüssel eingibt, wird dieser Wert in der Spalte Anzeigeschlüssel angezeigt.
Standardwert ist false.
Obligatorisch? Nein
'erforderlich'
Geben Sie true oder false an, um anzugeben, ob ein Parameter obligatorisch oder optional ist. Wenn er auf true gesetzt ist, ist der Parameter obligatorisch, und der Benutzer muss einen Wert für diesen Parameter angeben, wenn er Konfigurationen erstellt.
Die NetScaler Console GUI zwingt den Benutzer, einen gültigen Wert für diesen Parameter anzugeben.
Standardwert ist false.
Obligatorisch? Nein
'allowed-values'
Verwenden Sie dieses Attribut, um eine Liste gültiger Werte für einen Parameter zu definieren, wenn der Typ auf „string“ gesetzt ist.
Beim Erstellen einer Konfiguration über die NetScaler Console GUI wird der Benutzer aufgefordert, einen Parameterwert aus dieser Liste auszuwählen. Diese Liste ist statisch; der Benutzer kann nur einen Wert aus der Liste auswählen. Wenn Sie dem Benutzer erlauben möchten, Werte zur Liste hinzuzufügen, verwenden Sie das Attribut
allow-new-values.
Hinweis
Wenn Sie die Listenwerte als Radiooptionen anzeigen möchten, legen Sie das Attribut
layout fest.
Beispiel 1:
-
name: ipaddress
type: string
allowed-values:
- SOURCEIP
- DEST IP
- NONE
Beispiel 2:
-
name: TCP Port
type: tcp-port
allowed-values:
- 80
- 81
- 8080
Beispiel 3:
Liste von
tcp-ports, wobei jedes Element der Liste nur Werte haben kann, die in allowed-values angegeben sind.
-
name: tcpports
type: tcp-port[]
allowed-values:
- 80
- 81
- 8080
- 8081
Obligatorisch? Nein
'allow-new-values'
Verwenden Sie dieses Attribut, um eine dynamische Liste für einen Parameter hinzuzufügen. Beim Erstellen oder Aktualisieren einer Konfiguration über die NetScaler Console GUI kann der Benutzer Werte zur Liste hinzufügen.
Geben Sie „true“ an, wenn der Benutzer einen Wert zur Parameterliste hinzufügen soll. Sie können die Attribute
allow-new-values und allowed-values in Kombination verwenden. Diese Kombination ermöglicht es Ihnen, eine Liste vorgeschlagener Werte für einen Parameter zu definieren und auch neue Werte zu akzeptieren.
-
name: port
type: tcp-port
allowed-values:
- 80
- 81
- 8080
allow-new-values: true
In diesem Beispiel kann ein Benutzer entweder aus 80, 81, 8080 auswählen oder einen neuen Wert für den Parameter
port eingeben, während er ein Konfigurationspaket erstellt oder aktualisiert.
'Standard'
Verwenden Sie dieses Attribut, um einem optionalen Parameter einen Standardwert zuzuweisen. Wenn ein Benutzer eine Konfiguration erstellt, ohne einen Wert anzugeben, wird der Standardwert verwendet.
Der Parameter nimmt keinen Wert an, wenn die folgenden Bedingungen erfüllt sind:
-
Der Parameter hat keinen Standardwert.
-
Ein Benutzer gibt keinen Wert für den Parameter an.
Beispiel 1:
-
name: timeout
type: number
default: 20
Beispiel 2:
So listen Sie die Standardwerte des Parameters auf:
-
name: protocols
type: string[]
default:
- TCP
- UDP
- IP
Beispiel 3:
-
name: timeout
type: number
default: 20
Beispiel 4:
-
name: tcpport
type: tcp-port
default: 20
Obligatorisch? Nein
'Muster'
Verwenden Sie dieses Attribut, um ein Muster (regulärer Ausdruck) für die gültigen Werte dieses Parameters zu definieren, wenn der Typ des Parameters "string" ist.
Beispiel:
-
name: appname
type: string
pattern: "[a-z]+"
Obligatorisch? Nein
'min-value'
Verwenden Sie dieses Attribut, um den Mindestwert für Parameter vom Typ
number oder tcp-port zu definieren.
Beispiel:
-
name: audio-port
type: tcp-port
min-value: 5000
Die
min-value von Zahlen kann negativ sein. Der min-value für tcp-port muss jedoch positiv sein.
Obligatorisch? Nein
'max-value'
Verwenden Sie dieses Attribut, um den Maximalwert für Parameter vom Typ
number oder tcp-port zu definieren.
Stellen Sie sicher, dass der Maximalwert größer als der Minimalwert ist, falls definiert.
Beispiel:
-
name: audio-port
type: tcp-port
min-value: 5000
max-value: 15000
Obligatorisch? Nein
'min-length'
Verwenden Sie dieses Attribut, um die Mindestlänge von Werten zu definieren, die für einen Parameter vom Typ „string“ akzeptiert werden.
Stellen Sie sicher, dass die Mindestlänge der als Werte definierten Zeichen größer oder gleich Null ist.
Beispiel:
-
name: appname
type: string
min-length: 3
Obligatorisch? Nein
'max-length'
Verwenden Sie dieses Attribut, um die Maximallänge von Werten zu definieren, die für einen Parameter vom Typ „string“ akzeptiert werden.
Stellen Sie sicher, dass die Maximallänge der Werte größer oder gleich der Länge der in
min-length definierten Zeichen ist.
Beispiel:
-
name: appname
type: string
max-length: 64
Obligatorisch? Nein
'min-items'
Verwenden Sie dieses Attribut, um die Mindestanzahl von Elementen in einem Parameter zu definieren, der eine Liste ist.
Stellen Sie sicher, dass die Mindestanzahl der Elemente größer oder gleich Null ist.
Beispiel:
-
name: server-ips
type: ipaddress[]
min-items: 2
Obligatorisch? Nein
'max-items'
Verwenden Sie dieses Attribut, um die maximale Anzahl von Elementen in einem Parameter zu definieren, der eine Liste ist.
Stellen Sie sicher, dass die maximale Anzahl der Elemente größer ist als die minimale Anzahl der Elemente, sofern definiert.
Beispiel:
-
name: server-ips
type: ipaddress[]
min-items: 2
max-items: 250
Obligatorisch? Nein
'Benutzeroberfläche'
Verwenden Sie dieses Attribut, um das Layout des Parameters in der NetScaler Console GUI anzupassen.
Obligatorisch? Nein
'Spalten'
Dieses Attribut ist ein Unterattribut des
gui Attributs. Verwenden Sie dieses Attribut, um die Anzahl der Spalten zu definieren, in denen die type: object[] Parameter in der NetScaler Console GUI angezeigt werden sollen.
Obligatorisch? Nein
'Aktualisierbar'
Dieses Attribut ist ein Unterattribut des
gui Attributs. Verwenden Sie dieses Attribut, um anzugeben, ob der Parameter aktualisiert werden kann, nachdem die Konfiguration erstellt wurde. Legen Sie dieses Attribut nur für einfache Parametertypen wie string, boolean oder number fest.
Wenn der Wert auf
false gesetzt ist, wird das Parameterfeld ausgegraut, wenn Sie die Konfiguration aktualisieren.
Obligatorisch? Nein
'collapse_pane'
Dieses Attribut ist ein Unterattribut des
gui-Attributs. Verwenden Sie dieses Attribut, um anzugeben, ob der Bereich, der das Layout dieses Objektparameters definiert, einklappbar ist.
Wenn der Wert auf „true“ gesetzt ist, kann der Benutzer die untergeordneten Parameter unter diesem übergeordneten Parameter erweitern oder einklappen.
Beispiel:
gui:
collapse_pane: true
columns: 2
Beispiel eines vollständigen Parameterabschnitts:
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
Das Folgende ist ein Beispiel, das alle Attribute einer Liste und die in früheren Abschnitten erläuterten Werte definiert:
-
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
'Layout'
Dieses Attribut ist ein Unterattribut des
gui-Attributs. Verwenden Sie dieses Attribut, um die Listenwerte als Optionsfelder anzuzeigen. Setzen Sie das layout-Attribut im Parameterabschnitt einer StyleBook-Definition auf radio. Es gilt für den Parameter, der das allowed-values-Attribut hat. Wenn Sie ein Konfigurationspaket erstellen, zeigt die NetScaler Console GUI die Werte in der allowed-values-Liste als Optionsfelder an.
Beispiel:
-
gui:
layout: radio
allowed-values:
- One
- Two
- Three
Die Werte „One“, „Two“ und „Three“ werden in der NetScaler Console GUI als Optionsfelder angezeigt.
'dependent-parameters'
Dieses Attribut ist ein Unterattribut des
gui-Attributs. Es steuert dynamisch das Erscheinungsbild des Parameters oder seinen Anfangswert im StyleBook-Konfigurationsformular basierend auf dem in einem anderen Parameter angegebenen Wert.
Geben Sie dieses Attribut für einen Quellparameter an, der das Verhalten des Parameters im Formular steuert. Sie können mehrere Bedingungen einschließen, die andere Parameter steuern. Zum Beispiel kann ein Quellparameter
protocol einen abhängigen Parameter certificate haben, der nur angezeigt wird, wenn der Parameterwert protocol SSL ist.
Jede Bedingung kann die folgenden Attribute haben:
-
target-parameter: Geben Sie den Zielparameter an, auf den diese Bedingung zutrifft.
-
matching-values: Geben Sie die Liste der Werte des Quellparameters an, die die Aktion auslösen.
-
action: Geben Sie eine der folgenden Aktionen für den Zielparameter an:
-
read-only: Der Parameter wird schreibgeschützt. -
show: Der Parameter wird im Formular angezeigt, wenn er ausgeblendet ist. -
hide: Der Parameter wird aus dem Formular entfernt. -
set-value: Der Parameterwert wird auf den im Attribut „value“ angegebenen Wert gesetzt.
-
-
value: Der Wert des Zielparameters, wenn die Aktion
set-valueist.
Wenn eine Benutzereingabe mit den angegebenen Werten des Quellparameters übereinstimmt, ändern sich das Erscheinungsbild oder der Wert des Zielparameters entsprechend der angegebenen Aktion.
Beispiel:
-
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
In diesem Beispiel wird der abhängige Parameter unter dem Parameter
lb-virtual-port (Quellparameter) angegeben.
Wenn der Quellparameterwert auf
80 gesetzt ist, löst der Parameter lb-service-type die Aktion set-value aus. Dadurch kann ein Benutzer eine der folgenden Optionen auswählen:
-
HTTP
-
TCP
-
UDP
is_policy_expression
Dieses Attribut ist ein Unterattribut des
gui Attributs. Verwenden Sie dieses Attribut, um den Richtlinienausdruckseditor zum Erstellen eines Richtlinienausdrucks zu aktivieren. Setzen Sie den is_policy_expression auf true in der Parameterdefinition. Dieses Attribut kann nur für Parameter vom Typ 'string' verwendet werden.
Beispiel:
parameters:
-
name: expression
type: string
label: Expression
required: true
gui:
is_policy_expression: true