第4章 Shared File Systems サービス
OpenStack Shared File Systems サービス (manila) により、複数のコンピュートインスタンスで消費可能な共有ファイルシステムをプロビジョニングすることができます。
4.1. バックエンド
OpenStack director を使用して Shared File System サービスをデプロイする場合、クラウド管理者はサポート対象の 2 つのバックエンドのいずれかを選択することができます。
サポート対象のバックエンドアプライアンスおよびドライバーの完全な一覧は、「Component, Plug-In, and Driver Support in Red Hat OpenStack Platform」を参照してください。
4.2. 共有種別の作成と管理
ファイル共有を作成する場合には、共有種別を使用して適切なストレージバックエンドを選択します。OpenStack director は default
という名前のデフォルト共有種別で Shared File System サービスを設定しますが、director 自体が共有種別を作成する訳ではありません。
クラウド管理者としてオーバークラウドをデプロイしたら、以下のコマンドを実行してこの共有種別を作成します。
# manila type-create default <spec_driver_handles_share_servers>
<spec_driver_handles_share_servers>
パラメーターはブール値で、以下のように設定します。-
CephFS を使用した NFS バックエンドの場合には、値は
false
です。 NetApp バックエンドの場合には、値は
true
またはfalse
です。ManilaNetappDriverHandlesShareServers
パラメーターの値と一致するように<spec_driver_handles_share_servers>
を設定します (詳しくは『NetApp Back End Guide for the Shared File System Service』を参照)。複数のバックエンドが設定された構成で有用であれば、クラウド管理者はデフォルトの共有種別に仕様を追加して、新たな共有種別を作成することができます。
以下に例を示します。
-
CephFS を使用した NFS バックエンドの場合には、値は
CephFS バックエンドを選択する
default
共有種別および 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.2.1. ファイル共有の作成
以下のようなコマンドを使用して、ファイル共有を作成します。
$ manila create [--share-type <SHARETYPE>] [--name <SHARENAME>] PROTO GB
各オプションについての説明は以下のとおりです。
SHARETYPE
で指定した共有種別に関連する設定が適用されす。-
オプション: 指定しない場合には、
default
共有種別が使用されます。
-
オプション: 指定しない場合には、
SHARENAME
は、ファイル共有名に置き換えます。- (オプション) ファイル共有名は必須ではありません。また、名前は一意でなくても構いません。
PROTO
は、使用するファイル共有プロトコルに置き換えます。-
CephFS を使用した NFS の場合には、PROTO は
nfs
です。 -
NetApp の場合には、PROTO は
nfs
またはcifs
です。
-
CephFS を使用した NFS の場合には、PROTO は
-
GB
は、ファイル共有のサイズ (GB 単位) に置き換えます。
たとえば、「共有種別の作成と管理」で、クラウド管理者は CephFS バックエンドを選択する default
共有種別および NetApp バックエンドを選択する netapp
という名前の別の共有種別を作成しました。
これらの共有種別を使用して CephFS バックエンド上に
share-01
という名前の 10 GB の NFS 共有を作成するには、以下のコマンドを実行します。(user) [stack@undercloud-0 ~]$ manila create --name share-01 nfs 10 +---------------------------------------+---------------------------- | Property | Value +---------------------------------------+---------------------------- | status | creating | share_type_name | default | description | None | availability_zone | None | share_network_id | None | share_group_id | None | revert_to_snapshot_support | False | access_rules_status | active | snapshot_id | None | create_share_from_snapshot_support | False | is_public | False | task_state | None | snapshot_support | False | id | 8c3bedd8-bc82-4100-a65d-53ec51b5fe81 | size | 10 | source_share_group_snapshot_member_id | None | user_id | 19f014d7b5fd43519363c5bd75da864c | name | share-01 | share_type | 89415974-3f82-4a73-8efc-9a4f9970dc00 | has_replicas | False | replication_type | None | created_at | 2018-09-17T16:00:07.000000 | share_proto | NFS | mount_snapshot_support | False | project_id | b0434b7f2c5943e797a24edd958d95e6 | metadata | {} |+--------------------------------------+----------------------------
オプションとして、NetApp バックエンド上に
share-02
という名前の 20 GB の NFS 共有を作成するには、以下のコマンドを実行します。(user) [stack@undercloud-0 ~]$ manila create --name share-02 --share-type netapp --share-network mynet nfs 20 +-----------------------------------------+---------------------------- | Property | Value +-----------------------------------------+---------------------------- | status | creating | share_type_name | netapp | description | None | availability_zone | None | share_network_id | mynet | share_group_id | None | revert_to_snapshot_support | True | access_rules_status | active | snapshot_id | None | create_share_from_snapshot_support | True | is_public | False | task_state | None | snapshot_support | False | id | db3bedd8-bc82-4100-a65d-53ec51b5cba3 | size | 20 | source_share_group_snapshot_member_id | None | user_id | 19f014d7b5fd43519363c5bd75da864c | name | share-02 | share_type | abcde974-3f82-4a73-8efc-9a4f9970abab | has_replicas | False | replication_type | None | created_at | 2018-09-17T16:00:07.000000 | share_proto | NFS | mount_snapshot_support | False | project_id | b0434b7f2c5943e797a24edd958d95e6 | metadata | {} +---------------------------------------+----------------------------
4.2.2. ファイル共有とエクスポート情報の一覧表示
ファイル共有が正常に作成されたことを確認するには、以下の手順を実施します。
次のコマンドを実行します。
(user) [stack@undercloud-0 ~]$ manila list +--------------------------------------+----------+-----+-----------+ | ID | Name | ... | Status ... +--------------------------------------+----------+-----+-----------+ | 8c3bedd8-bc82-4100-a65d-53ec51b5fe81 | share-01 | ... | available ... +--------------------------------------+----------+-----+-----------+
manila share-export-location-list
コマンドを実行して、ファイル共有のエクスポート場所を表示します。(user) [stack@undercloud-0 ~]$ manila share-export-location-list share-01 +------------------------------------------------------------------ | Path | 172.17.5.13:/volumes/_nogroup/e840b4ae-6a04-49ee-9d6e-67d4999fbc01 +------------------------------------------------------------------
注記この情報は、「ファイル共有のマウント」でファイル共有をマウントする際に使用します。
4.2.3. ファイル共有へのネットワーク接続の確保
Shared File System サービスは、ネットワークを介してストレージを提供します。したがって、ファイル共有をマウントする予定のコンピュートインスタンスには、そのファイル共有のエクスポート場所へのネットワーク接続が必要です。
Shared File System サービスと共にネットワークを設定する方法は、ネットワークプラグインの使用 (詳しくは『Security and Hardening Guide』の「Networking requirements for manila」を参照) を含め多数あります。
driver_handles_share_servers=True
と設定したバックエンドの場合には、クラウドユーザーはコンピュートインスタンスのアタッチ先となるネットワークの詳細を使用して ファイル共有ネットワーク を作成し、ファイル共有の作成時にこのネットワークを参照することができます。
-
driver_handles_share_servers=False
と設定したバックエンドの場合には、クラウド管理者は Shared File Systems バックエンドで動的にネットワークを設定するのではなく、必要なネットワークを事前に設定します。 - CephFS を使用した NFS バックエンドの場合には、クラウド管理者は分離ネットワークおよび環境引数を使用して OpenStack director をデプロイし (詳しくは『Shared File System サービスの NFS バックエンドに CephFS を使用した場合のガイド』の「NFS バックエンドに CephFS を使用するためのオプションおよびカスタム network_data ファイルを使用した OpenStack のインストール」を参照)、NFS エクスポート用の分離 StorageNFS ネットワークを作成します。デプロイ後オーバークラウドを使用する前に、管理者は対応する Networking サービス (neutron) StorageNFS 共有プロバイダーネットワークを作成して、データセンターの分離 StorageNFS ネットワークにマッピングします。
コンピュートインスタンスをこの共有プロバイダーネットワークに接続するためには、ユーザーは新たな neutron ポートを追加する必要があります。
ファイル共有へのネットワーク接続を確保するには、以下の手順を実施します。
StorageNFS ポート用のセキュリティーグループを作成し、(NFS マウントの開始に必要な) ポートから外部に出るパケットは許可する一方、未確立接続の着信パケットは拒否します。
(user) [stack@undercloud-0 ~]$ openstack security group create no-ingress -f yaml created_at: '2018-09-19T08:19:58Z' description: no-ingress id: 66f67c24-cd8b-45e2-b60f-9eaedc79e3c5 name: no-ingress project_id: 1e021e8b322a40968484e1af538b8b63 revision_number: 2 rules: 'created_at=''2018-09-19T08:19:58Z'', direction=''egress'', ethertype=''IPv4'', id=''6c7f643f-3715-4df5-9fef-0850fb6eaaf2'', updated_at=''2018-09-19T08:19:58Z'' created_at=''2018-09-19T08:19:58Z'', direction=''egress'', ethertype=''IPv6'', id=''a8ca1ac2-fbe5-40e9-ab67-3e55b7a8632a'', updated_at=''2018-09-19T08:19:58Z''' updated_at: '2018-09-19T08:19:58Z'
no-ingress
セキュリティーグループによりセキュリティーを確保し、StorageNFS ネットワーク上にポートを作成します。(user) [stack@undercloud-0 ~]$ openstack port create nfs-port0 --network StorageNFS --security-group no-ingress -f yaml admin_state_up: UP allowed_address_pairs: '' binding_host_id: null binding_profile: null binding_vif_details: null binding_vif_type: null binding_vnic_type: normal created_at: '2018-09-19T08:03:02Z' data_plane_status: null description: '' device_id: '' device_owner: '' dns_assignment: null dns_name: null extra_dhcp_opts: '' fixed_ips: ip_address='172.17.5.160', subnet_id='7bc188ae-aab3-425b-a894-863e4b664192' id: 7a91cbbc-8821-4d20-a24c-99c07178e5f7 ip_address: null mac_address: fa:16:3e:be:41:6f name: nfs-port0 network_id: cb2cbc5f-ea92-4c2d-beb8-d9b10e10efae option_name: null option_value: null port_security_enabled: true project_id: 1e021e8b322a40968484e1af538b8b63 qos_policy_id: null revision_number: 6 security_group_ids: 66f67c24-cd8b-45e2-b60f-9eaedc79e3c5 status: DOWN subnet_id: null tags: '' trunk_details: null updated_at: '2018-09-19T08:03:03Z'
注記StorageNFSSubnet
では、nfs-port0
に IP アドレス 172.17.5.160 が割り当てられています。-
コンピュートインスタンスに
nfs-port0
を追加します。
(user) [stack@undercloud-0 ~]$ openstack server add port instance0 nfs-port0 (user) [stack@undercloud-0 ~]$ openstack server list -f yaml - Flavor: m1.micro ID: 0b878c11-e791-434b-ab63-274ecfc957e8 Image: manila-test Name: demo-instance0 Networks: demo-network=172.20.0.4, 10.0.0.53; StorageNFS=172.17.5.160 Status: ACTIVE
プライベートアドレスおよび Floating IP アドレスに加えて、コンピュートインスタンスに StorageNFS ネットワークのポート (IP アドレス: 172.17.5.160) が割り当てられ、該当するファイル共有のアドレスへのアクセスが許可されると、NFS 共有のマウントに使用することができます。
コンピュートインスタンスがこのアドレスのインターフェースをアクティブ化するには、コンピュートインスタンスのネットワーク設定の調整やサービスの再起動が必要になる場合があります。
4.2.4. ファイル共有に対するアクセス権限の付与
インスタンスにファイル共有をマウントする前に、以下のようなコマンドを使用して、インスタンスがファイル共有にアクセスできるようにする必要があります。
# manila access-allow <SHARE> <ACCESSTYPE> --access-level <ACCESSLEVEL> <CLIENTIDENTIFIER>
それぞれのオプション引数についての説明は以下のとおりです。
-
SHARE
:「ファイル共有の作成」で作成したファイル共有の名前または ID ACCESSTYPE
: ファイル共有で要求されるアクセスの種別。以下に種別の例を示します。-
user
: ユーザーまたはグループ名で認証する場合に使用します。 ip
: IP アドレスでインスタンスを認証する場合に使用します。注記アクセスの種別は、ファイル共有のプロトコルにより異なります。NFS 共有の場合は、許可されるのは
ip
アクセス種別だけです。CIFS の場合は、user
アクセス種別が適切です。
-
ACCESSLEVEL
: オプションの設定で、デフォルトはrw
です。-
rw
: ファイル共有への読み取り/書き込みアクセスが許可されます。 -
ro
: ファイル共有への読み取りアクセスのみが許可されます。
-
CLIENTIDENTIFIER
:ACCESSTYPE
の設定により異なります。-
ACCESSTYPE
をip
に設定した場合には、IP アドレスを使用します。 -
ACCESSTYPE
をuser
に設定した場合には、CIFS ユーザーまたはグループを使用します。
-
以下に例を示します。
StorageNFS ネットワークのポート (IP アドレス: 172.17.5.160) が割り当てられたコンピュートインスタンスに
share-01
への読み取り/書き込みアクセス権限を付与するには、以下のコマンドを実行します。(user) [stack@undercloud-0 ~]$ openstack server list -f yaml - Flavor: m1.micro ID: 0b878c11-e791-434b-ab63-274ecfc957e8 Image: manila-test Name: demo-instance0 Networks: demo-network=172.20.0.4, 10.0.0.53; StorageNFS=172.17.5.160 Status: ACTIVE (user) [stack@undercloud-0 ~]$ manila access-allow share-01 ip 172.17.5.160 +-----------------+---------------------------------------+ | Property | Value | +-----------------+---------------------------------------+ | access_key | None | share_id | db3bedd8-bc82-4100-a65d-53ec51b5cba3 | created_at | 2018-09-17T21:57:42.000000 | updated_at | None | access_type | ip | access_to | 172.17.5.160 | access_level | rw | state | queued_to_apply | id | 875c6251-c17e-4c45-8516-fe0928004fff +-----------------+---------------------------------------+
注記ファイル共有へのアクセスには、独自の ID (
ACCESSID
) が指定されています。正常にアクセス設定が行われたことを確認するには、以下のコマンドを実行します。
(user) [stack@undercloud-0 ~]$ manila access-list share-01 +--------------+-------------+--------------+--------------+--------+ ... | id | access_type | access_to | access_level | state | ... +--------------+-------------+--------------+--------------+--------+ | 875c6251-... | ip | 172.17.5.160 | rw | active | ... +--------------+------------+--------------+--------------+---------+ ...
4.2.5. ファイル共有へのアクセスの取り消し
以前に付与したファイル共有へのアクセス権限を取り消すには、以下の手順を実施します。
次のコマンドを実行します。
# manila access-deny <SHARE> <ACCESSID>
注記上記コマンド例の
<SHARE>
は、ファイル共有の名前または ID のどちらかを指定することができます。以下に例を示します。
(user) [stack@undercloud-0 ~]$ manila access-list share-01 +--------------+-------------+--------------+--------------+--------+ | id | access_type | access_to | access_level | state | ... +--------------+-------------+--------------+--------------+--------+ ... | 875c6251-... | ip | 172.17.5.160 | rw | active | ... +--------------+-------------+--------------+--------------+--------+ (user) [stack@undercloud-0 ~]$ manila access-deny share-01 875c6251-c17e-4c45-8516-fe0928004fff (user) [stack@undercloud-0 ~]$ manila access-list share-01 +--------------+------------+--------------+--------------+--------+ ... | id | access_type| access_to | access_level | state | ... +--------------+------------+--------------+--------------+--------+ ... +--------------+------------+--------------+--------------+--------+ ...
4.2.6. インスタンスへのファイル共有のマウント
インスタンスを認証するようにファイル共有を設定したら、環境の機能を確認し、続いてファイル共有をマウントします。
ファイル共有をマウントするコンピュートインスタンスに、バージョン 4.1 対応の NFS クライアントパッケージをインストールする必要があります。
4.2.6.1. 環境の確認
環境の機能を確認するには、以下の手順を実施します。
以下のコマンドを実行して、NFS-Ganesha サービスの仮想 IP (VIP) を取得します。
(user) [stack@undercloud-0 ~]$ manila share-export-location-list share-01 172.17.5.13:/volumes/_nogroup/e840b4ae-6a04-49ee-9d6e-67d4999fbc01
ファイル共有をマウントする仮想マシンから ping を送信し、VIP にアクセス可能であることを確認します。
# ping 172.17.5.13 PING 172.17.5.13 (172.17.5.13) 56(84) bytes of data. 64 bytes from 172.17.5.13: icmp_seq=1 ttl=64 time=0.048 ms 64 bytes from 172.17.5.13: icmp_seq=2 ttl=64 time=0.061 ms ^C --- 172.17.5.13 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 999ms rtt min/avg/max/mdev = 0.048/0.054/0.061/0.009 ms
VIP が適切なポートの NFS rpc に応答する準備ができていることを確認します。
# rpcinfo -T tcp -a 172.17.5.13.8.1 100003 4
注記IP アドレスは汎用アドレスフォーマット (uaddr) で書かれているので、NFS サービスのポート 2049 を表すのに 2 つのオクテット (
8.1
) が追加されています。
4.2.6.2. ファイル共有のマウント
] on the instance from xref:shares-access[ からのファイル共有をマウントするには、以下の手順を実施します。
インスタンスにログインし、以下のコマンドを実行します。
(user) [stack@undercloud-0 ~]$ openstack server ssh demo-instance0 --login root # hostname demo-instance0
「ファイル共有とエクスポート情報の一覧表示」で取得したエクスポート場所を使用して、ファイル共有をマウントします。
# mount.nfs -v 172.17.5.13:/volumes/_nogroup/e840b4ae-6a04-49ee-9d6e-67d4999fbc01 /mnt mount.nfs: timeout set for Wed Sep 19 09:14:46 2018 mount.nfs: trying text-based options 'vers=4.2,addr=172.17.5.13,clientaddr=172.17.5.160' 172.17.5.13:/volumes/_nogroup/e840b4ae-6a04-49ee-9d6e-67d4999fbc01 on /mnt type nfs # mount | grep mnt 172.17.5.13:/volumes/_nogroup/e840b4ae-6a04-49ee-9d6e-67d4999fbc01 on /mnt type nfs4 (rw,relatime,vers=4.2,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=172.17.5.160,local_lock=none,addr=172.17.5.13)
4.2.7. ファイル共有の削除
ファイル共有を削除するには、以下の手順を実施します。
次のコマンドを実行します。
# manila delete <SHARE>
注記上記コマンド例の <SHARE> は、ファイル共有の名前または ID のどちらかを指定することができます。
以下に例を示します。
# manila delete share-01
4.2.8. Shared File System サービスのクォータ
気付かぬままにシステムリソースをすべて消費してしまうのを防ぐために、クォータを設定することができます。クォータとは、運用上の制限です。プロジェクトまたはユーザーに設定されたクォータの一覧を表示するには、manila quota-show
コマンドを使用します。オプションの --user
パラメーターを指定すると、指定したプロジェクトでそのユーザーに設定されたクォータを表示することができます。このパラメーターを省略した場合には、指定したプロジェクトに設定されたクォータが表示されます。クォータは、更新や削除が可能です。ファイル共有、スナップショット、ギガバイト数、スナップショットのギガバイト数、共有ネットワーク、共有グループ、共有グループのスナップショット、および共有種別のクォータを更新することができます。
使用方法に関する説明を表示するには、以下のコマンドを実行します。
# manila --help quota-show # manila --help quota-update # manila --help quota-delete
4.2.9. 非同期障害のトラブルシューティング
ファイル共有の作成
または ファイル共有グループの作成
などの manila 操作が非同期に失敗する場合、コマンドラインを使用してエラーに関する詳細情報のクエリーを行うことができます。
4.2.9.1. シナリオ
この例では、ユーザーは複数の仮想マシンにソフトウェアライブラリーをホストするファイル共有を作成しようとします。この例では、ファイル共有の作成を 2 度意図的に失敗させ、コマンドラインを使用してユーザーサポートメッセージを取得する方法を説明します。
ファイル共有を作成するには、ファイル共有に割り当てる機能を指定する共有種別を使用します。クラウド管理者は共有種別を作成することができます。利用可能な共有種別を表示します。
clouduser1@client:~$ manila type-list +--------------------------------------+-------------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ | ID | Name | visibility | is_default | required_extra_specs | optional_extra_specs | Description | +--------------------------------------+-------------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ | 1cf5d45a-61b3-44d1-8ec7-89a21f51a4d4 | dhss_false | public | YES | driver_handles_share_servers : False | create_share_from_snapshot_support : True | None | | | | | | | mount_snapshot_support : False | | | | | | | | revert_to_snapshot_support : False | | | | | | | | snapshot_support : True | | | 277c1089-127f-426e-9b12-711845991ea1 | dhss_true | public | - | driver_handles_share_servers : True | create_share_from_snapshot_support : True | None | | | | | | | mount_snapshot_support : False | | | | | | | | revert_to_snapshot_support : False | | | | | | | | snapshot_support : True | | +--------------------------------------+-------------+------------+------------+--------------------------------------+--------------------------------------------+-------------+
この例では、2 つの共有種別が使用可能です。
driver_handles_share_servers=True 機能を指定する共有種別を使用するには、ファイル共有をエクスポートするファイル共有ネットワークを作成する必要があります。プライベートテナントネットワークから、ファイル共有ネットワークを作成します。
clouduser1@client:~$ openstack subnet list +--------------------------------------+---------------------+--------------------------------------+---------------------+ | ID | Name | Network | Subnet | +--------------------------------------+---------------------+--------------------------------------+---------------------+ | 78c6ac57-bba7-4922-ab81-16cde31c2d06 | private-subnet | 74d5cfb3-5dd0-43f7-b1b2-5b544cb16212 | 10.0.0.0/26 | | a344682c-718d-4825-a87a-3622b4d3a771 | ipv6-private-subnet | 74d5cfb3-5dd0-43f7-b1b2-5b544cb16212 | fd36:18fc:a8e9::/64 | +--------------------------------------+---------------------+--------------------------------------+---------------------+ clouduser1@client:~$ manila share-network-create --name mynet --neutron-net-id 74d5cfb3-5dd0-43f7-b1b2-5b544cb16212 --neutron-subnet-id 78c6ac57-bba7-4922-ab81-16cde31c2d06 +-------------------+--------------------------------------+ | Property | Value | +-------------------+--------------------------------------+ | network_type | None | | name | mynet | | segmentation_id | None | | created_at | 2018-10-09T21:32:22.485399 | | neutron_subnet_id | 78c6ac57-bba7-4922-ab81-16cde31c2d06 | | updated_at | None | | mtu | None | | gateway | None | | neutron_net_id | 74d5cfb3-5dd0-43f7-b1b2-5b544cb16212 | | ip_version | None | | cidr | None | | project_id | cadd7139bc3148b8973df097c0911016 | | id | 0b0fc320-d4b5-44a1-a1ae-800c56de550c | | description | None | +-------------------+--------------------------------------+ clouduser1@client:~$ manila share-network-list +--------------------------------------+-------+ | id | name | +--------------------------------------+-------+ | 6c7ef9ef-3591-48b6-b18a-71a03059edd5 | mynet | +--------------------------------------+-------+
ファイル共有を作成します。
clouduser1@client:~$ manila create nfs 1 --name software_share --share-network mynet --share-type dhss_true +---------------------------------------+--------------------------------------+ | Property | Value | +---------------------------------------+--------------------------------------+ | status | creating | | share_type_name | dhss_true | | description | None | | availability_zone | None | | share_network_id | 6c7ef9ef-3591-48b6-b18a-71a03059edd5 | | share_server_id | None | | share_group_id | None | | host | | | revert_to_snapshot_support | False | | access_rules_status | active | | snapshot_id | None | | create_share_from_snapshot_support | False | | is_public | False | | task_state | None | | snapshot_support | False | | id | 243f3a51-0624-4bdd-950e-7ed190b53b67 | | size | 1 | | source_share_group_snapshot_member_id | None | | user_id | 61aef4895b0b41619e67ae83fba6defe | | name | software_share | | share_type | 277c1089-127f-426e-9b12-711845991ea1 | | has_replicas | False | | replication_type | None | | created_at | 2018-10-09T21:12:21.000000 | | share_proto | NFS | | mount_snapshot_support | False | | project_id | cadd7139bc3148b8973df097c0911016 | | metadata | {} | +---------------------------------------+--------------------------------------+
ファイル共有のステータスを表示します。
clouduser1@client:~$ manila list +--------------------------------------+----------------+------+-------------+--------+-----------+-----------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+----------------+------+-------------+--------+-----------+-----------------+------+-------------------+ | 243f3a51-0624-4bdd-950e-7ed190b53b67 | software_share | 1 | NFS | error | False | dhss_true | | None | +--------------------------------------+----------------+------+-------------+--------+-----------+-----------------+------+-------------------+
この例では、ファイル共有の作成中にエラーが発生しています。
ユーザーサポートメッセージを表示するには、
message-list
コマンドを使用します。--resource-id を使用して、確認したい特定のファイル共有に絞り込みます。clouduser1@client:~$ manila message-list +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ | ID | Resource Type | Resource ID | Action ID | User Message | Detail ID | Created At | +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ | 7d411c3c-46d9-433f-9e21-c04ca30b209c | SHARE | 243f3a51-0624-4bdd-950e-7ed190b53b67 | 001 | allocate host: No storage could be allocated for this share request, Capabilities filter didn't succeed. | 008 | 2018-10-09T21:12:21.000000 | +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+
User Message コラムに、機能の不一致により Shared File System サービスがファイル共有の作成に失敗したことが表示されています。
メッセージの詳細情報を表示するには、
message-list
コマンドで取得したメッセージの ID を指定して、message-show
コマンドを使用します。clouduser1@client:~$ manila message-show 7d411c3c-46d9-433f-9e21-c04ca30b209c +---------------+----------------------------------------------------------------------------------------------------------+ | Property | Value | +---------------+----------------------------------------------------------------------------------------------------------+ | request_id | req-0a875292-6c52-458b-87d4-1f945556feac | | detail_id | 008 | | expires_at | 2018-11-08T21:12:21.000000 | | resource_id | 243f3a51-0624-4bdd-950e-7ed190b53b67 | | user_message | allocate host: No storage could be allocated for this share request, Capabilities filter didn't succeed. | | created_at | 2018-10-09T21:12:21.000000 | | message_level | ERROR | | id | 7d411c3c-46d9-433f-9e21-c04ca30b209c | | resource_type | SHARE | | action_id | 001 | +---------------+----------------------------------------------------------------------------------------------------------+
クラウドユーザーは共有種別により機能を把握しているので、利用可能な共有種別を確認することができます。2 つの共有種別の違いは、driver_handles_share_servers の値です。
clouduser1@client:~$ manila type-list +--------------------------------------+-------------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ | ID | Name | visibility | is_default | required_extra_specs | optional_extra_specs | Description | +--------------------------------------+-------------+------------+------------+--------------------------------------+--------------------------------------------+-------------+ | 1cf5d45a-61b3-44d1-8ec7-89a21f51a4d4 | dhss_false | public | YES | driver_handles_share_servers : False | create_share_from_snapshot_support : True | None | | | | | | | mount_snapshot_support : False | | | | | | | | revert_to_snapshot_support : False | | | | | | | | snapshot_support : True | | | 277c1089-127f-426e-9b12-711845991ea1 | dhss_true | public | - | driver_handles_share_servers : True | create_share_from_snapshot_support : True | None | | | | | | | mount_snapshot_support : False | | | | | | | | revert_to_snapshot_support : False | | | | | | | | snapshot_support : True | | +--------------------------------------+-------------+------------+------------+--------------------------------------+--------------------------------------------+-------------+
利用可能な他の共有種別でファイル共有を作成します。
clouduser1@client:~$ manila create nfs 1 --name software_share --share-network mynet --share-type dhss_false +---------------------------------------+--------------------------------------+ | Property | Value | +---------------------------------------+--------------------------------------+ | status | creating | | share_type_name | dhss_false | | description | None | | availability_zone | None | | share_network_id | 6c7ef9ef-3591-48b6-b18a-71a03059edd5 | | share_group_id | None | | revert_to_snapshot_support | False | | access_rules_status | active | | snapshot_id | None | | create_share_from_snapshot_support | True | | is_public | False | | task_state | None | | snapshot_support | True | | id | 2d03d480-7cba-4122-ac9d-edc59c8df698 | | size | 1 | | source_share_group_snapshot_member_id | None | | user_id | 5c7bdb6eb0504d54a619acf8375c08ce | | name | software_share | | share_type | 1cf5d45a-61b3-44d1-8ec7-89a21f51a4d4 | | has_replicas | False | | replication_type | None | | created_at | 2018-10-09T21:24:40.000000 | | share_proto | NFS | | mount_snapshot_support | False | | project_id | cadd7139bc3148b8973df097c0911016 | | metadata | {} | +---------------------------------------+--------------------------------------+
この例では、試みた 2 番目のファイル共有作成は失敗します。
ユーザーサポートメッセージを表示します。
clouduser1@client:~$ manila list +--------------------------------------+----------------+------+-------------+--------+-----------+-----------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+----------------+------+-------------+--------+-----------+-----------------+------+-------------------+ | 2d03d480-7cba-4122-ac9d-edc59c8df698 | software_share | 1 | NFS | error | False | dhss_false | | nova | | 243f3a51-0624-4bdd-950e-7ed190b53b67 | software_share | 1 | NFS | error | False | dhss_true | | None | +--------------------------------------+----------------+------+-------------+--------+-----------+-----------------+------+-------------------+ clouduser1@client:~$ manila message-list +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ | ID | Resource Type | Resource ID | Action ID | User Message | Detail ID | Created At | +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ | ed7e02a2-0cdb-4ff9-b64f-e4d2ec1ef069 | SHARE | 2d03d480-7cba-4122-ac9d-edc59c8df698 | 002 | create: Driver does not expect share-network to be provided with current configuration. | 003 | 2018-10-09T21:24:40.000000 | | 7d411c3c-46d9-433f-9e21-c04ca30b209c | SHARE | 243f3a51-0624-4bdd-950e-7ed190b53b67 | 001 | allocate host: No storage could be allocated for this share request, Capabilities filter didn't succeed. | 008 | 2018-10-09T21:12:21.000000 | +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+
サービスが使用した共有種別のファイル共有ネットワークに対応していないことが分かります。
管理者に相談することなく、管理者が利用可能にしたストレージバックエンドではプライベート neutron ネットワークにファイル共有を直接エクスポートする操作がサポートされない、ということを明らかにすることができます。share-network- パラメーターを指定せずに、ファイル共有を作成します。
clouduser1@client:~$ manila create nfs 1 --name software_share --share-type dhss_false +---------------------------------------+--------------------------------------+ | Property | Value | +---------------------------------------+--------------------------------------+ | status | creating | | share_type_name | dhss_false | | description | None | | availability_zone | None | | share_network_id | None | | share_group_id | None | | revert_to_snapshot_support | False | | access_rules_status | active | | snapshot_id | None | | create_share_from_snapshot_support | True | | is_public | False | | task_state | None | | snapshot_support | True | | id | 4d3d7fcf-5fb7-4209-90eb-9e064659f46d | | size | 1 | | source_share_group_snapshot_member_id | None | | user_id | 5c7bdb6eb0504d54a619acf8375c08ce | | name | software_share | | share_type | 1cf5d45a-61b3-44d1-8ec7-89a21f51a4d4 | | has_replicas | False | | replication_type | None | | created_at | 2018-10-09T21:25:40.000000 | | share_proto | NFS | | mount_snapshot_support | False | | project_id | cadd7139bc3148b8973df097c0911016 | | metadata | {} | +---------------------------------------+--------------------------------------+
ファイル共有が正常に作成されたことを確認するには、
manila list
コマンドを使用します。clouduser1@client:~$ manila list +--------------------------------------+----------------+------+-------------+-----------+-----------+-----------------+------+-------------------+ | ID | Name | Size | Share Proto | Status | Is Public | Share Type Name | Host | Availability Zone | +--------------------------------------+----------------+------+-------------+-----------+-----------+-----------------+------+-------------------+ | 4d3d7fcf-5fb7-4209-90eb-9e064659f46d | software_share | 1 | NFS | available | False | dhss_false | | nova | | 2d03d480-7cba-4122-ac9d-edc59c8df698 | software_share | 1 | NFS | error | False | dhss_false | | nova | | 243f3a51-0624-4bdd-950e-7ed190b53b67 | software_share | 1 | NFS | error | False | dhss_true | | None | +--------------------------------------+----------------+------+-------------+-----------+-----------+-----------------+------+-------------------+
ファイル共有およびサポートメッセージを削除します。
clouduser1@client:~$ manila message-list +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ | ID | Resource Type | Resource ID | Action ID | User Message | Detail ID | Created At | +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ | ed7e02a2-0cdb-4ff9-b64f-e4d2ec1ef069 | SHARE | 2d03d480-7cba-4122-ac9d-edc59c8df698 | 002 | create: Driver does not expect share-network to be provided with current configuration. | 003 | 2018-10-09T21:24:40.000000 | | 7d411c3c-46d9-433f-9e21-c04ca30b209c | SHARE | 243f3a51-0624-4bdd-950e-7ed190b53b67 | 001 | allocate host: No storage could be allocated for this share request, Capabilities filter didn't succeed. | 008 | 2018-10-09T21:12:21.000000 | +--------------------------------------+---------------+--------------------------------------+-----------+----------------------------------------------------------------------------------------------------------+-----------+----------------------------+ clouduser1@client:~$ manila delete 2d03d480-7cba-4122-ac9d-edc59c8df698 243f3a51-0624-4bdd-950e-7ed190b53b67 clouduser1@client:~$ manila message-delete ed7e02a2-0cdb-4ff9-b64f-e4d2ec1ef069 7d411c3c-46d9-433f-9e21-c04ca30b209c clouduser1@client:~$ manila message-list +----+---------------+-------------+-----------+--------------+-----------+------------+ | ID | Resource Type | Resource ID | Action ID | User Message | Detail ID | Created At | +----+---------------+-------------+-----------+--------------+-----------+------------+ +----+---------------+-------------+-----------+--------------+-----------+------------+