Application Delivery Management

Hilfskomponenten

Der primäre Verwendungszweck des Komponentenabschnitts in einem StyleBook ist die Generierung von Konfigurationsobjekten über integrierte Nitro-Typen oder ein anderes StyleBook, das die eigentlichen Konfigurationsobjekte erstellt. Die Hilfskomponenten erstellen selbst keine Konfigurationsobjekte. Hilfskomponenten übernehmen die Eingaben aus anderen Abschnitten, wie z. B. Parameterobjekten, Eigenschaften anderer Komponenten oder Ausgaben anderer Komponenten, und wandeln sie in andere Formen um. Dies kann später von anderen Komponenten verwendet werden, um die eigentlichen Konfigurationsobjekte zu generieren. Eine Hilfskomponente kann zwei Typen haben: Objekttyp oder ein anderes StyleBook, das keinen Komponentenabschnitt enthält.

Das folgende Beispiel zeigt einen Ausschnitt eines StyleBooks, das zur Erstellung eines Lastenausgleichsservers mit Monitor (lb-mon-comp) auf einer NetScaler-Instanz verwendet wird.

parameters:
  -
    name: appname
    type: string
  -
    name: ips
    type: ipaddress[]
  -
    name: vip
    type: ipaddress

components:
  -
    name: help-comp
    type: cmtypes::server-ip-port-params
    repeat:
      repeat-list: $parameters.ips
      repeat-item: server-ip
    properties:
      ip: $server-ip
      port: 80
 -
    name: lb-mon-comp
    type: stlb::lb-mon
    properties:
      lb-appname: $parameters.appname
      lb-virtual-ip: $parameters.vip
      lb-virtual-port: 80
      lb-service-type: HTTP
      svc-service-type: HTTP
      svc-servers: $components.help-comp.properties
<!--NeedCopy-->

Der Abschnitt „parameters“ ermöglicht Ihnen die Eingabe des Anwendungsnamens und der IP-Adressen der Lastenausgleichsserver. Im Komponentenabschnitt „lb-mon-comp“ erwartet der Parameter „svc-servers“ des lb-mon StyleBooks eine Liste von Objekten, wobei jedes Element zwei Unterparameter aufweist: „ip“ und „port“.

Der Abschnitt „parameters“ dieses StyleBooks akzeptiert jedoch nur die Server-IPs über $parameters.ips. Das StyleBook geht davon aus, dass alle Server auf Port 80 laufen. Um die Lastenausgleichskonfiguration mit dem lb-mon StyleBook zu erstellen, müssen Sie die $parameters.ips in eine Liste von Objekten umwandeln. Dies wird mithilfe der Hilfskomponente „help-comp“ im obigen Beispiel erreicht. Die Komponente „help-comp“ ist vom Typ „server-ip-port-params StyleBook“. Dieses StyleBook enthält keine Komponenten. Folglich erstellt es keine Konfigurationsobjekte. Die „help-comp“ erstellt eine Wiederholungsliste über $parameters.ips und konstruiert ein Objekt, das aus IP und Port (der auf einen statischen Wert von 80 gesetzt ist) für jedes Element von $parameters.ips besteht. Somit wandelt „help-comp“ eine Liste von IP-Adressen in eine Liste von Objekten um, die später in „lb-mon-comp“ verwendet werden können, um die Eigenschaft „svc-servers“ zuzuweisen.  Das Ergebnis der „help-comp“ wird der Eigenschaft „svc-servers“ von „lb-mon-comp“ zugewiesen.

Hilfskomponenten