2.4. カスタムロールファイルの生成
セキュリティーのために、NFS を介して CephFS を使用する場合は、分離されたネットワークを介してのみ Ceph NFS サーバーにアクセスできるように、NFS トラフィックを別のネットワークに分離します。デプロイ担当者は、分離されたネットワークをクラウド内の選択したプロジェクトグループに制限できます。Red Hat OpenStack director には、専用の StorageNFS ネットワークをデプロイするためのサポートが付属しています。StorageNFS ネットワークを設定して使用するには、カスタムの Controller ロールが必要です。
NFS トラフィック用の分離されたネットワークの作成を省略することができます。ただし、Red Hat は、信頼されていないクライアントを含む実稼働環境へのこのようなセットアップを強く推奨しません。StorageNFS ネットワークを省略すると、director は、外部ネットワークなどの分離されていない共有ネットワーク上の Ceph NFS サーバーに接続できます。分離されていない共有ネットワークは、通常、クラウド内のすべてのユーザープライベートネットワークにルーティングできます。NFS サーバーがそのようなネットワーク上にある場合、特定のクライアント IP アクセスルールを介して OpenStack Shared File Systems サービス (manila) 共有へのアクセスを制御することはできません。ユーザーは、共有へのアクセスを許可するために、一般的な 0.0.0.0/0
IP を使用する必要があります。共有は、エクスポートパスを見つけた人なら誰でもマウントできます。
ControllerStorageNFS
カスタムロールにより、StorageNFS
分離ネットワークを設定します。このロールはデフォルトの Controller.yaml
ロールファイルに類似していますが、StorageNFS
ネットワークおよび CephNfs
サービス (OS::TripleO::Services:CephNfs
コマンドで表される) が追加されています。
[stack@undercloud ~]$ cd /usr/share/openstack-tripleo-heat-templates/roles [stack@undercloud roles]$ diff Controller.yaml ControllerStorageNfs.yaml 16a17 > - StorageNFS 50a45 > - OS::TripleO::Services::CephNfs
openstack overcloud roles generate
コマンドについての詳しい情報は、オーバークラウドの高度なカスタマイズの ロール を参照してください。
openstack overcloud roles generate
コマンドにより、-o
以降に指定したサービスが含まれるカスタム roles_data.yaml
ファイルが作成されます。以下の例では、作成される roles_data.yaml
ファイルには、ControllerStorageNfs
、Compute
、および CephStorage
のサービスが含まれます。
既存の roles_data.yaml
ファイルがある場合には、それを変更して設定ファイルに ControllerStorageNfs
、Compute
、および CephStorage
サービスを追加します。詳しい情報は、Advanced Overcloud Customizationの Roles を参照してください。
手順
-
アンダークラウドノードに
stack
ユーザーとしてログインします。 openstack overcloud roles generate
コマンドを使用して、roles_data.yaml
ファイルを作成します。[stack@undercloud ~]$ openstack overcloud roles generate --roles-path /usr/share/openstack-tripleo-heat-templates/roles -o /home/stack/roles_data.yaml ControllerStorageNfs Compute CephStorage