第4章 Shared File Systems サービス
Shared File Systems サービス (manila) により、複数のコンピュートインスタンス、ベアメタルノード、またはコンテナーで消費可能な共有ファイルシステムをプロビジョニングすることができます。クラウド管理者は共有種別を作成してファイル共有サービスの準備を行い、エンドユーザーがファイル共有を作成および管理できるようにします。
前提条件
- Shared File Systems サービスを使用するために、エンドユーザーには少なくとも 1 つの共有種別が必要です。
-
driver_handles_share_servers=False
と設定したバックエンドの場合には、クラウド管理者は共有ファイルシステムバックエンドで動的にネットワークを設定するのではなく、必要なネットワークを事前に設定します。 -
NFS バックエンドに CephFS を使用する場合、クラウド管理者は分離ネットワーク、環境引数、およびカスタム
network_data
ファイルを使用して Red Hat OpenStack Platform (RHOSP) director をデプロイし、NFS エクスポート用の分離 StorageNFS ネットワークを作成します。デプロイ後オーバークラウドを使用する前に、管理者は対応する Networking サービス (neutron) StorageNFS 共有プロバイダーネットワークを作成して、データセンターの分離 StorageNFS ネットワークにマッピングします。 - コンピュートインスタンスをこの共有プロバイダーネットワークに接続するためには、ユーザーは新たな neutron ポートを追加する必要があります。
Shared File Systems サービスについて理解および使用するには、以下の概念および手順を使用します。
- バックエンドを選択するには、「Shared File Systems サービス (manila) バックエンド」を参照してください。
- ネットワークの選択について理解するには、「共有ファイルシステムのネットワーク」を参照してください。
ファイル共有を作成して管理するには、以下のセクションを参照してください。
ネットワーク接続を管理するには、以下のセクションを参照してください。
ファイル共有へのアクセスを管理するには、以下のセクションを参照してください。
ファイル共有を管理するには、以下のセクションを参照してください。
クォータを管理するには、以下のセクションを参照してください。
問題のトラブルシューティングを行うには、以下のセクションを参照してください。
4.1. Shared File Systems サービス (manila) バックエンド
Red Hat OpenStack Platform (RHOSP) director を使用して Shared File Systems サービスをデプロイする場合、クラウド管理者は以下に示すサポート対象のバックエンドの 1 つを選択することができます。
- NFS バックエンドへの CephFS の使用。詳細は、NFS バックエンドに CephFS を使用した Shared File Systems サービスのデプロイ を参照してください。
- ネイティブ CephFS。詳しくは、CephFS Back End Guide for the Shared File System Service を参照してください。
- NetApp。詳しくは、NetApp のドキュメント Shared Filesystems Service (Manila) を参照してください。
- Dell EMC Unity、Dell VNX、または Dell PowerMax。詳しくは、Dell のドキュメント Dell EMC Manila Backend Deployment Guide for Red Hat OpenStack Platform 16 を参照してください。
サポート対象のバックエンドアプライアンスおよびドライバーの完全なリストは、Component, Plug-In, and Driver Support in Red Hat OpenStack Platformを参照してください。
4.1.1. 共有ファイルシステムのネットワーク
共有ファイルシステムには、ネットワーク経由でアクセスします。エンドユーザークライアントが Red Hat OpenStack Platform (RHOSP) 仮想マシン、ベアメタルサーバー、およびコンテナーで実行されるワークロードに共有を接続できるように、クラウド上のネットワークのプランニングを行うことが重要です。
エンドユーザーに必要なセキュリティーと分離のレベルに応じて、管理者は driver_handles_share_servers
パラメーターを true または false に設定できます。
driver_handles_share_servers
パラメーターを true に設定すると、サービスは、分離された共有サーバーを使用して、エンドユーザー定義の共有ネットワークに共有をエクスポートできるようになります。
driver_handles_share_servers
パラメーターが true の場合、ユーザーはセルフサービス共有ネットワークでワークロードをプロビジョニングできます。これにより、専用のネットワークセグメント上の完全に分離された NAS ファイルサーバーにより共有がエクスポートされるようになります。
エンドユーザーが使用する共有ネットワークは、作成可能なプライベートプロジェクトネットワークと同じになります。管理者は、分離ネットワークをマッピングする物理ネットワークがストレージインフラストラクチャーに拡張するようにする必要があります。
また、プロジェクトネットワークによるネットワークのセグメント化スタイルが、使用するストレージシステムによりサポートされるようにする必要もあります。NetApp ONTAP および Dell EMC PowerMax、Unity、ならびに VNX 等のストレージシステムは、GENEVE または VXLAN 等の仮想オーバーレイセグメント化スタイルをサポートしません。
代替として、オーバーレイネットワークをトップオブラックのスイッチで終端し、プロジェクトネットワークに VLAN 等のよりプリミティブなネットワーク形式を使用することができます。さらに別の方法として、共有プロバイダーネットワーク上の VLAN セグメントを許可するか、ストレージシステムにすでに接続されている既存のセグメント化ネットワークへのアクセスを提供することもできます。
driver_handles_share_servers
パラメーターを false に設定すると、ユーザーは自分の共有ネットワーク上に共有を作成できなくなります。代わりに、クライアントをクラウド管理者が設定したネットワークに接続する必要があります。
driver_handles_share_servers
パラメーターが false に等しい場合、director は専用の共有ストレージネットワークを作成できます。たとえば、標準の director テンプレートを使用してネイティブ CephFS バックエンドをデプロイする場合、director は Storage
と呼ばれる共有プロバイダーネットワークを作成します。NFS バックエンドを介して CephFS をデプロイメントする場合、共有プロバイダーネットワークは StorageNFS
と呼ばれます。エンドユーザーは、共有にアクセスするためにクライアントを共有ストレージネットワークに接続する必要があります。
すべての共有ファイルシステムのストレージドライバーが、両方のモードの操作に対応しているわけではありません。選択したモードに関係なく、サービスはハードデータパスのマルチテナンシー分離の保証を確保します。
セルフサービスモデルの一部としてテナントワークロードにハードネットワークパスマルチテナンシー分離保証を提供する場合は、driver_handles_share_servers
ドライバーモードをサポートするバックエンドを使用してデプロイする必要があります。
ファイル共有へのネットワーク接続に関する情報は、「ファイル共有へのネットワーク接続の確保」を参照してください。
4.1.2. 共有種別の作成
共有種別は、配置の決定を行う Shared File Systems サービスのスケジューラーへのヒントとして機能します。Red Hat OpenStack Platform (RHOSP) director は default という名前のデフォルト共有種別で Shared File Systems サービスを設定しますが、共有種別を作成する訳ではありません。
- 重要
- Shared File Systems サービスを使用するために、エンドユーザーには少なくとも 1 つの共有種別が必要です。
手順
オーバークラウドをデプロイしたら、クラウド管理者として以下のコマンドを実行して共有種別を作成します。
# manila type-create default <spec_driver_handles_share_servers>
<spec_driver_handles_share_servers>
パラメーターはブール値で、以下のように設定します。- NFS バックエンドに CephFS を使用する設定またはネイティブ CephFS の場合、値は false です。
-
他のバックエンドの場合、値は true または false になります。
Manila<backend>DriverHandlesShareServers
パラメーターの値と一致するように<spec_driver_handles_share_servers>
を設定します。たとえば、NetApp バックエンドを使用する場合、パラメーターはManilaNetappDriverHandlesShareServers
と呼ばれます。
デフォルトの共有種別に仕様を追加するか、複数のバックエンドが設定された環境で使用するために追加の共有種別を作成します。たとえば、デフォルトの共有タイプを設定して、CephFS バックエンドと、NetApp
driver_handles_share_servers=True
バックエンドを使用する追加の共有タイプを選択します。(overcloud) [stack@undercloud-0 ~]$ manila type-create default false --extra-specs share_backend_name='cephfs' (overcloud) [stack@undercloud-0 ~]$ manila type-create netapp true --extra-specs share_backend_name='tripleo_netapp'
デフォルトでは共有種別はパブリックなので、すべてのクラウドプロジェクトが認識して使用することができます。ただし、特定プロジェクト用にプライベートの共有種別を作成することもできます。プライベートの共有種別を作成する、または追加の共有種別オプションを設定する方法についての詳細は、Security and Hardening Guide を参照してください。
4.1.3. 共有種別の一般的な機能
ファイル共有の種別は、ファイル共有の一般的な機能を定義します。共有種別の一般的な機能を確認し、ファイル共有での操作について理解するようにしてください。
機能 | 値 | 説明 |
---|---|---|
| true または false | 共有ネットワークを使用してファイル共有を作成する権限を付与します。 |
| true または false | ファイル共有のスナップショットを作成する権限を付与します。 |
| true または false | 共有スナップショットのクローンを作成する権限を付与します。 |
| true または false | ファイル共有を最新のスナップショットに戻す権限を付与します。 |
| true または false | スナップショットをエクスポートおよびマウントする権限を付与します。 |
| dr | 障害復旧用のレプリカを作成する権限を付与します。1 度に許可されるアクティブなエクスポートは 1 つだけです。 |
readable | 読み取り専用レプリカを作成する権限を付与します。1 度に許可される書き込み可能なアクティブなエクスポートは 1 つだけです。 | |
writable | 読み取り/書き込みレプリカを作成する権限を付与します。共有ごとに 1 度に任意の数のアクティブなエクスポートが許可されます。 | |
| 1 つまたは複数のアベイラビリティーゾーンのリスト | リスト表示されるアベイラビリティーゾーンでのみ共有を作成する権限を付与します。 |
4.1.4. 共有種別の検出
クラウドユーザーは、ファイル共有の作成時に共有種別を指定する必要があります。
手順
利用可能な共有種別を検出します。
$ manila type-list
コマンド出力には、共有種別の名前と ID がリスト表示されます。
4.1.5. ファイル共有の作成
データの読み取りと書き込みを行うための共有を作成します。
ファイル共有を作成するには、以下のようなコマンドを使用します。
$ manila create [--share-type <sharetype>] [--name <sharename>] proto GB
以下の値を置き換えます。
sharetype
は、指定された共有タイプに関連付けられた設定を適用します。-
オプション: 指定しない場合には、
default
共有種別が使用されます。
-
オプション: 指定しない場合には、
sharename
は共有の名前です。- (オプション) ファイル共有名は必須ではありません。また、名前は一意でなくても構いません。
proto
は、使用する共有プロトコルです。-
NFS を使用する CephFS の場合、
proto
はnfs
です。 -
CephFS ネイティブの場合、
proto
はcephfs
です。 -
NetApp および DellEMC ストレージバックエンドの場合、
proto
はnfs
またはcifs
です。
-
NFS を使用する CephFS の場合、
-
GB
は、ファイル共有のサイズ (GB 単位) に置き換えます。
たとえば、「共有種別の作成」 では、クラウド管理者は CephFS バックエンドを選択する default
共有種別および NetApp バックエンドを選択する netapp
という名前の別の共有種別を作成しました。
手順
共有種別の例を使用して CephFS バックエンド上に
share-01
という名前の 10 GB の NFS 共有を作成します。以下の例では、NFS バックエンドに CephFS を使用しています。(user) [stack@undercloud-0 ~]$ manila create --name share-01 nfs 10
オプションとして、NetApp バックエンド上に
share-02
という名前の 20 GB の NFS 共有を作成します。(user) [stack@undercloud-0 ~]$ manila create --name share-02 --share-type netapp --share-network mynet nfs 20
4.1.6. ファイル共有とエクスポート情報のリスト表示
ファイル共有が正常に作成されていることを確認するには、以下の手順を実施します。
手順
ファイル共有をリスト表示します。
(user) [stack@undercloud-0 ~]$ manila list +--------------------------------------+----------+-----+-----------+ | ID | Name | ... | Status ... +--------------------------------------+----------+-----+-----------+ | 8c3bedd8-bc82-4100-a65d-53ec51b5fe81 | share-01 | ... | available ... +--------------------------------------+----------+-----+-----------+
ファイル共有のエクスポート場所を表示します。
(user) [stack@undercloud-0 ~]$ manila share-export-location-list share-01 +------------------------------------------------------------------ | Path | 172.17.5.13:/volumes/_nogroup/e840b4ae-6a04-49ee-9d6e-67d4999fbc01 +------------------------------------------------------------------
ファイル共有のパラメーターを表示します。
manila share-export-location-show <id>
注記この情報は、「ファイル共有のマウント」でファイル共有をマウントする際に使用します。