VNF の初期設定またはデイゼロ設定は、VM タイプに基づいています。VNF 管理者は、VNF の展開時に各 VM タイプの初期テンプレートを設定します。同じ設定テンプレートが、その VM タイプのすべての展開済み VM と新しい VM に適用されます。テンプレートは、個々の
VM の展開時に処理されます。デイゼロ設定は引き続き維持されるため、VM のすべての初期展開、修復、およびスケーリングには同じデイゼロテンプレートが使用されます。
カスタム変数は、設定内の変数タグで指定できます。各設定には、ゼロ個以上の変数を含めることができます。各変数は複数の値を持つことができます。複数の値は、vm_group ごとに複数の VM を作成する場合にのみ役立ちます。また、スケールインとスケールアウトを実行する場合、VM
グループに VM を追加したり削除したりできます。
(注)
変数タグに複数の値を指定する場合は、次の点に注意してください。
最初に展開された VM に割り当てられた変数値は一意であり、プールから取得されます。プールから値を割り当てる際に従うべき順序はありません。つまり、最初の VM はプールの 2 番目の値を使用できます。
<?xml version="1.0" encoding="UTF-8"?>
<esc_datamodel xmlns="http://www.cisco.com/esc/esc">
<tenants>
<tenant>
<name>sample-tenant</name>
<deployments>
<deployment>
<name>sample-deployment</name>
<vm_group>
<name>sample-vm-group</name>
<config_data>
<!-- exisiting configuration example - remains valid -->
<configuration>
<file>file:///cisco/config.sh</file>
<dst>config.sh</dst>
</configuration>
<!-- new configuration including use of file locators -->
<configuration>
<dst>ASA_config_0</dst>
<file_locators>
<file_locator>
<name>configlocator-1</name>
<!-- unique name -->
<remote_file>
<file_server_id>server-1</file_server_id>
<remote_path>/share/users/configureScript.sh</remote_path>
<!-- optional user specified local silo directory -->
<local_target>day0/configureScript.sh</local_target>
<!-- persistence is an optional parameter -->
<persistence>FETCH_ALWAYS</persistence>
<!-- properties in the file_locator are only used for
fetching the file not for running scripts -->
<properties>
<property>
<!-- the property name "configuration_file" with value "true" indictates this is the
script to be used just as using the <file> member case of the configuration -->
<name>configuration_file</name>
<value>true</value>
</property>
<property>
<name>server_timeout</name>
<value>120</value>
<!-- timeout value in seconds, overrides the file_server property -->
</property>
</properties>
</remote_file>
<!-- checksum is an optional parameter.
The following algorithms are supported: SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 -->
<checksum>SHA256 (configureScript.sh) = dd526bb2c0711238ec2649c4b91598fb9a6cf1d2cb8559c337c5f3dd5ea1769e</checksum>
</file_locator>
<file_locator>
<name>configlocator-2</name>
<remote_file>
<file_server_id>server-2</file_server_id>
<remote_path>/secure/requiredData.txt</remote_path>
<local_target>day0/requiredData.txt</local_target>
<persistence>FETCH_ALWAYS</persistence>
<properties />
</remote_file>
</file_locator>
</file_locators>
</configuration>
</config_data>
</vm_group>
</deployment>
</deployments>
</tenant>
</tenants>
</esc_datamodel>
ファイルロケータのパラメータは次のとおりです。
name:ファイルロケータのキーおよび識別子として使用されます。
local_file または remote_file:ファイルの場所を選択します。ローカルファイルは、ESC VM ファイルシステムにすでに存在するファイルを指定するために使用されます。remote_file は、リモートサーバから取得するファイルを指定するために使用されます。
初回展開の場合、データモデルで定義されている VM グループの数は、vApp テンプレートの VM の数と同じである必要があります。展開では、各 VM グループのイメージ値は一意である必要があります。
アウトオブバンド(OOB)ISO ファイルは、ISO ファイルメソッドの構築時に一緒に使用できません。これは、 VM がいずれも考慮できるためです。ovf プロパティは、OOB ISO とともに使用することも、ISO を一緒に構築することもできます。
ISO ファイルの構築によるデイゼロ設定:
</rules>
<config_data>
<!-- take content from the file path and save it as config.sh into the ISO file -->
<configuration>
<dst>config.sh</dst>
<file>file:///cisco/config.sh</file>
</configuration>
<!-- take content from the file path, replace variables with values, and save it as data/config.sh into the ISO file -->
<configuration>
<dst>data/params.cfg</dst>
<file>file:///cisco/template.cfg</file>
<variable>
<name>CF_VIP_ADDR</name>
<val>10.0.0.9</val>
</variable>
<variable>
<name>CF_DOMAIN_NAME</name>
<val>cisco.com</val>
</variable>
<variable>
<name>CF_NAME_SERVER</name>
<val>172.16.180.7</val>
</variable>
</configuration>
<!-- take the data section as the content of the file, replace variables with values, and save it as user-data.txt into the ISO file-->
<configuration>
<dst>user-data.txt</dst>
<data>#cloud-config
manage_etc_hosts: true
hostname: $HOST_NAME
local-hostname: $HOST_NAME
</data>
<variable>
<name>$HOST_NAME</name>
<val>something.cisco.com</val>
</variable>
</configuration>
</config_data>
OOB ISO ファイルによるデイゼロ設定:
</rules>
<config_data>
<configuration>
<!-- ISO file stored in catalog-1 -->
<dst>vcdCatalog:catalog-1</dst>
<data>h2.iso</data>
</configuration>
</config_data>