4.2. ロールデータファイルの作成
本項では、各リーフ用のコンポーザブルロールを定義して、それぞれのロールにコンポーザブルネットワークを接続する方法について実例をあげて説明します。
手順
stack
ユーザーのローカルディレクトリー内に、カスタムroles
ディレクトリーを作成します。$ mkdir ~/roles
デフォルトの Controller、Compute、Ceph Storage ロールを、director のコアテンプレートコレクションから
~/roles
ディレクトリーにコピーします。Leaf 1 用にファイルの名前を変更します。$ cp /usr/share/openstack-tripleo-heat-templates/roles/Controller.yaml ~/roles/Controller.yaml $ cp /usr/share/openstack-tripleo-heat-templates/roles/Compute.yaml ~/roles/Compute1.yaml $ cp /usr/share/openstack-tripleo-heat-templates/roles/CephStorage.yaml ~/roles/CephStorage1.yaml
Compute1.yaml
ファイルを編集します。$ vi ~/roles/Compute1.yaml
このファイルで
name
、networks
、およびHostnameFormatDefault
のパラメーターを編集して、Leaf 1 固有のパラメーターと一致するようにします。以下に例を示します。- name: Compute1 ... networks: - InternalApi1 - Tenant1 - Storage1 HostnameFormatDefault: '%stackname%-compute1-%index%'
このファイルを保存します。
CephStorage1.yaml
ファイルを編集します。$ vi ~/roles/CephStorage1.yaml
このファイルで
name
およびnetworks
のパラメーターを編集して、Leaf 1 固有のパラメーターと一致するようにします。また、HostnameFormatDefault
パラメーターを追加して、Ceph Storage ノード用の Leaf 1 のホスト名を定義します。以下に例を示します。- name: CephStorage1 ... networks: - Storage1 - StorageMgmt1 HostnameFormatDefault: '%stackname%-cephstorage1-%index%'
このファイルを保存します。
Leaf 1 の Compute および Ceph Storage ファイルをベースとして、Leaf 2 および Leaf 3 ファイル用にコピーを作成します。
$ cp ~/roles/Compute1.yaml ~/roles/Compute2.yaml $ cp ~/roles/Compute1.yaml ~/roles/Compute3.yaml $ cp ~/roles/CephStorage1.yaml ~/roles/CephStorage2.yaml $ cp ~/roles/CephStorage1.yaml ~/roles/CephStorage3.yaml
Leaf 2 および Leaf 3 のファイルで
name
、networks
、およびHostnameFormatDefault
のパラメーターを編集して、対応するリーフネットワークのパラメーターと一致するようにします。たとえば、Leaf 2 Compute ファイルのパラメーター値は、以下のように設定します。- name: Compute2 ... networks: - InternalApi2 - Tenant2 - Storage2 HostnameFormatDefault: '%stackname%-compute2-%index%'
Leaf 2 Ceph Storage ファイルのパラメーター値は、以下のように設定します。
- name: CephStorage2 ... networks: - Storage2 - StorageMgmt2 HostnameFormatDefault: '%stackname%-cephstorage2-%index%'
ロールの準備が整ったら、以下のコマンドで完全なロールデータファイルを生成します。
$ openstack overcloud roles generate --roles-path ~/roles -o roles_data_spine_leaf.yaml Controller Compute1 Compute2 Compute3 CephStorage1 CephStorage2 CephStorage3
これにより、各リーフネットワーク用の全カスタムロールが含まれた完全な
roles_data_spine_leaf.yaml
ファイルが作成されます。
このファイルの完全なサンプルは、付録C roles_data ファイルの例に記載しています。
ロールごとに独自の NIC 設定があります。スパイン/リーフ設定を設定する前には、現在の NIC 設定に適した NIC テンプレートの基本セットを作成する必要があります。