StyleBookの設定
ご意見をお寄せいただきありがとうございました

この記事は機械翻訳されています.免責事項

NetScalerインスタンスをデータソースとして使用する

管理対象のNetScalerインスタンスをデータソースとして使用できます。 managed-adc は組み込みのデータソースタイプで、ADM のデータソースとして簡単に使用できます。NetScalerコンソールで管理されている各NetScalerインスタンスは、デフォルトでデータソースです。構成パックの作成時にNetScaler Consoleで管理されている既存のNetScalerのデータが必要な場合は、これらのデータソースをStyleBooksで使用し始めることができます。

StyleBookの定義で、 datum ビルトインのタイプパラメータを指定します。そのため、StyleBookのデータソースタイプを使用できます。StyleBookユーザーは、そのソースからデータを取得するために使用できるデータソースを選択できます。

収集せずに組み込みデータソースを使用する

parameters: - name: selected-adc label: Select an existing NetScaler type: datum required: true data-source: type: managed-adc

この例では、 パラメーターdatumを使用してADMが管理する任意のNetScalerインスタンスを選択します。 組み込みデータソースによりmanaged-adc、NetScaler コンソールで管理されている任意のNetScalerインスタンスからデータを取得できます。

StyleBookでは、選択したNetScalerインスタンスのすべての構成にアクセスできます。また、同じNetScalerまたは別のNetScalerインスタンスで構成を作成または更新するときに、その構成を使用できます。これは、選択したターゲットNetScalerインスタンスによって異なります。

データソースからコレクションを選択してください:

選択したNetScalerインスタンスでコレクションにアクセスするには、次の式を使用します。

$parameters.selected-adc.collections.<collection-name>

例:

$parameters.selected-adc.collections.lbvserver

この式は、選択したNetScalerインスタンスのlbvserverエンティティのリストを返します。たとえば、このリストを繰り返し処理して、 特定の条件を満たす特定のlbvserverを選択できます。

コレクションなしのStyleBook の例

name: add-vservers-from-managed-adc-instances namespace: com.citrix.adc.stylebooks version: "1.0" schema-version: "1.0" import-stylebooks: - namespace: netscaler.nitro.config prefix: ns version: "10.5" parameters: - name: selected-adc label: Select a NetScaler instance type: datum required: true data-source: type: "managed-adc" components: - name: sslvserver-comp type: ns::sslvserver repeat: $parameters.selected-adc.collections.lbvserver repeat-item: lbvs repeat-condition: $lbvs.attributes.servicetype == "SSL" properties: name: $lbvs.attributes.name ssl2: DISABLED ssl3: DISABLED tls1: DISABLED tls11: ENABLED tls12: ENABLED

構成パックGUIには、NetScaler Consoleによって管理されているNetScalerインスタンスが表示され、StyleBookユーザーは構成パックを作成または更新するときに任意のNetScalerを選択できます。

ビルトインのNetScalerデータソース (収集なし)

このStyleBookは選択したNetScalerを使用し、すべてのlbvserverエンティティを反復処理します。SSL仮想サーバーを選択し、各仮想サーバーで許可される SSL プロトコルバージョンを設定します。

次の式を使用すると、NetScalerインスタンス内のlbvserverエンティティのリストを反復処理できます。

repeat: $parameters.selected-adc.collections.lbvserver
  • collections:NetScalerインスタンス上のすべてのエンティティタイプを指します。たとえばcsvserverlbmonitorservicegroupなど。

  • lbvserver:NetScalerインスタンス内の負荷分散仮想サーバーエンティティのリストを指します。

組み込みデータソースとコレクションの使用

parameters: - name: selected-lbvserver label: Select an existing lbvserver type: datum required: true data-source: type: managed-adc collection: lbvserver

この例では、datumパラメーターを使用して、ユーザーがNetScalerインスタンスとmanaged-adcデータソースタイプからの特定のlbvserverインスタンスの両方を選択できるようにします。

セクションでコレクションタイプを定義parametersすると、StyleBookユーザーはNetScalerインスタンスとそのインスタンスのコレクションから特定のエンティティを選択できます。

コレクション付きの組み込みインスタンスデータソース

コレクションの属性を選択:

StyleBookユーザーが仮想サーバーを選択すると、StyleBook内の次の式は選択した項目の任意の属性にアクセスできます。

$parameters.selected-lbvserver.attributes.<attribute-name>

この例では、選択されたdatumlbvserverです 。そのため、nameservicetypeipv46など、NetScalerエンティティlbvserverの任意の属性にアクセスできます。

例:

$parameters.selected-lbvserver.attributes.ipv46

この式は、選択した負荷分散仮想サーバーのIPを取得します。NetScalerエンティティ (コレクション) とその属性について詳しくは、「 NetScaler NITRO APIリファレンス」を参照してください。

コレクションのリストを選択してください

StyleBookユーザーは、管理対象NetScalerインスタンス上の特定のエンティティを選択できるだけでなく、選択したNetScalerインスタンスの同じコレクションまたは異なるコレクションから任意のエンティティにアクセスすることもできます。そのNetScalerインスタンスの別のコレクションにアクセスするには、componentsセクションで次の式を使用します。

$parameters.selected-lbvserver.datasource.collections.<collection-name>

例:

$parameters.selected-lbvserver.datasource.collections.csvserver

この式は、選択したNetScalerインスタンスのコンテンツスイッチ仮想サーバーのリストを返します。

また、次の式は、lbvserversservicegroupsの間にあるすべてのバインディングのリストを返します 。

$parameters.selected-lbvserver.datasource.collections.lbvserver_servicegroup_binding

コレクションを含むStyleBook の例

以下は、マネージドNetScalerインスタンスをデータソースとして使用する方法を示すStyleBookの例です。

--- name: bind-lb-to-servicegroup-using-ADC-as-datasource namespace: com.citrix.adc.stylebooks version: "1.1" display-name: "HTTP/SSL LoadBalancing StyleBook with Service Binding" description: "This stylebook defines a typical Load Balanced Application configuration where we allow the user to select an existing lbvserver on the NetScaler using datum type parameter. Then a servicegroup for the selected lb is created if it does not exist on the NetScaler. Finally, the selected lbvserver is bound to the service " schema-version: "1.0" import-stylebooks: - namespace: netscaler.nitro.config prefix: ns version: "10.5" parameters: - name: selected-vserver label: "Select an Existing VServer" description: "Load Balancing Application Vservers to be bound to service on the ADC" type: datum required: true data-source: type: managed-adc collection: lbvserver - name: services label: Services type: object[] required: true parameters: - name: ip label: IP address type: ipaddress required: true - name: port label: Port type: tcp-port required: true components: - name: servicegroup-discovery-comp type: object repeat: $parameters.selected-vserver.datasource.collections.servicegroup repeat-item: svcgrp repeat-condition: $svcgrp.attributes.servicegroupname == $parameters.selected-vserver.attributes.name + "-svcgrp" properties: servicegroupname: $svcgrp.attributes.servicegroupname - name: servicegroup-creation-if-not-exists-comp type: ns::servicegroup condition: not exists($components.servicegroup-discovery-comp) properties: servicegroupname: $parameters.selected-vserver.attributes.name + "-svcgrp" servicetype: $parameters.selected-vserver.attributes.servicetype - name: servicegroupmember-comp type: ns::servicegroup_servicegroupmember_binding repeat: $parameters.services repeat-item: service properties: servicegroupname: if-then-else($components.servicegroup-discovery-comp, $components.servicegroup-discovery-comp.properties.servicegroupname, $components.servicegroup-creation-if-not-exists-comp.properties.servicegroupname) ip: $service.ip port: $service.port

このStyleBookでは、componentsセクションは、svcgrpと連結された選択した負荷分散仮想サーバー名と一致するサービスグループ名を確認します 。

選択した負荷分散仮想サーバーの名前がlbv1の場合 、 このStyleBookは名前lbv1-svcgrpのサービスグループをチェックします。見つからない場合は、 lbv1-svcgrp サービスグループを作成し、 lbv1 仮想サーバーにバインドします。

次の式は、NetScalerインスタンス内のサービスグループのリストを取得します。

repeat: $parameters.selected-vserver.datasource.collections.servicegroup

この式では:

  • datasource: ADMによって管理されている選択されたNetScalerインスタンスを指します。

  • collections:NetScaler インスタンス内のすべてのエンティティを指します。

  • servicegroup: NetScaler インスタンス内のサービスグループを指します。

このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。
NetScalerインスタンスをデータソースとして使用する