File Storage for Classic の管理
IBM Cloud コンソール、CLI、API、またはTerraformを使用してファイルストレージボリュームを管理し、ホストの承認、容量やIOPSの調整、スナップショットやレプリケーションの制御を行います。
IBM Cloud® File Storage for Classic のボリュームは、 IBM Cloud® コンソール、CLI、API、またはTerraformを使用して管理できます。 ノートを追加したり、コンピュートホストにボリュームへのアクセスを許可したり、アクセスを取り消したり、不要になったらボリュームを削除したりすることができます。 容量の増加、 IOPSの調整、 スナップショットの管理、 レプリケーションの 管理が可能です。
コンソールで File Storage for Classic ボリュームのリストを表示する
ボリュームは、リソースリストから、または File Storage for Classic のボリュームのリストにアクセスして確認できます。
- IBM Cloud® コンソールに移動します。 メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
- 「ストレージ」 > **「File Storage for Classic」**をクリックします。 ファイル共有のリストが表示されます。
クリックし、場所を選択するか、特定の容量を入力することで、リストをフィルタリングすることができます。 「 適用 」をクリックして選択内容を確定してください。
- リストから適切なボリューム名をクリックします。
「 」をクリックすると、このリストを CSV 形式でダウンロードできます。
表には、名前、場所、ステータス、ストレージタイプ、最大IOPS、容量、使用量、スナップショット容量、開始日、メモなどのボリュームに関する情報が表示され、これらは編集可能です。
CLIから File Storage for Classic ボリュームのリストを表示する
開始する前に、使用する CLI クライアントを決定します。
- IBM Cloud CLI をインストールし、
ibmcloud plugin install slを使用して SL プラグインをインストールすることができます。 詳しくは、 プラグインを使用した IBM Cloud CLI の拡張 を参照してください。 - あるいは、 SLCLIをインストールすることもできます。
IBMCLOUD CLI からのボリュームのリストの表示
IBMCLOUD CLI から File Storage for Classic のリストを取得するには、 ibmcloud sl file volume-list コマンドを使用します。 次の例では、 dal13 にあるアカウント上のすべてのエンデュランス・ボリュームを一覧表示し、容量順に並べ替えます。
ibmcloud sl file volume-list -d dal13 -t endurance --sortby capacity_gb
id username datacenter storage_type capacity_gb bytes_used IOPs ip_addr lunId active_transactions rep_partner_count notes
233039512 IBM02SEV1414935_79 dal13 endurance_file_storage 20 0 - fsf-dal1303g-fz.adn.networklayer.com - 0 1 -
703233985 IBM02SEV1414935_538 dal13 endurance_file_storage 20 0 - fsf-dal1303d-fz.adn.networklayer.com - 0 0 -
221349094 IBM02SEV1414935_68 dal13 endurance_file_storage 30 0 - fsf-dal1302c-fz.adn.networklayer.com - 0 1 Testing
コマンド出力には、ボリュームID、ボリューム名、場所、ストレージ・タイプ、容量、使用量、最大IOPS、IPアドレス、 lunID, アクティブ・トランザクション・カウント、レプリケーション・パートナー・カウント、メモなど、ボリュームに関する情報が表示されます。
このコマンドで使用可能なすべてのパラメータの詳細については 、ibmcloud sl file volume-list を参照してください。
SL CLI からのボリュームのリストの表示
SL CLI から File Storage for Classic のリストを取得するには、 slcli file volume-list コマンドを使用します。
$ slcli file volume-list --help
Usage: slcli file volume-list [OPTIONS]
List file storage.
Example::
slcli file volume-list -d dal10 --storage-type endurance --sortby capacity_gb
┌────┬────────────────┬──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│ -u │ --username │ Volume username │
│ -d │ --datacenter │ Datacenter shortname │
│ -o │ --order │ Filter by ID of the order that purchased the block storage │
│ │ --storage-type │ Type of storage volume Choices: performance, endurance │
│ │ --sortby │ Column to sort by │
│ │ --columns │ Columns to display. Options: id, username, datacenter, storage_type, capacity_gb, bytes_used, ip_addr, active_transactions, mount_addr, rep_partner_count, created_by, notes │
│ -h │ --help │ Show this message and exit. │
└────┴────────────────┴──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
API で File Storage for Classic ボリュームのリストを見る
API を使用して File Storage for Classic ボリュームのリストを取得するには、 list_file_volumes メソッドを使用し、パラメータ
datacenter、 storage_type (Endurance または Performance)、 order で結果をフィルタリングします。 このリクエストは、ファイルボリュームのリストを詳細とともに返す。
また、以下の例のようなcurlコマンドを使って、ストレージボリュームのさまざまな側面を照会することもできる。 この例では、現在使用されているバイト数を返す。
curl -g -u $SL_USER:$SL_APIKEY -X GET \
'https://api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/{volume_ID}/collectBytesUsed'
次のリクエストは、ボリュームの最大IOPS値を返します。
curl -g -u $SL_USER:$SL_APIKEY -X GET \
'https://api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/{volume_ID}/getIops'
詳細については、APIリファレンスの SoftLayer_Network_Storage の記事を参照のこと。
コンソールでボリュームのノートを更新する
- IBM Cloud® コンソールに移動します。 メニューから、 インフラストラクチャ
>クラシックインフラストラクチャを選択します。
- 「ストレージ」 > **「File Storage for Classic」**をクリックします。
- 更新したいボリュームを探してください。 ボリュームの詳細ページを表示するには、ボリューム名をクリックします。
- 備考 の隣にある 編集アイコン
をクリックし、テキストを入力してください。
CLI からボリュームのノートを更新する
ibmcloud sl call-api コマンドを使用すると、ボリュームのノートを追加および変更することができます。
$ ibmcloud sl call-api --help
NAME:
call-api - Call arbitrary API endpoints
USAGE:
ibmcloud sl call-api SERVICE METHOD [OPTIONS]
OPTIONS:
--filter value Object filters
-h, --help Usage information.
--init value Init parameter
--limit value Result limit
--mask value Object mask: use to limit fields returned
--offset value Result offset
--output value Specify output format, only JSON is supported now.
--parameters value Append parameters to web call
--init オプションでボリュームIDを指定し、 --parameters オプションで新しいノートを設定する。 以下の例を参照してください。
ibmcloud sl call-api SoftLayer_Network_Storage editObject --init 562193766 --parameters '[{"notes":"Testing."}]'
詳細については、ibmcloud sl call-apiを 参照してください。
API を使用してボリュームのノートを更新する
APIを使ってボリュームのノートを更新するには、 POST /SoftLayer_Network_Storage/$VOLUME_ID/editObject.json curlリクエストを行う。 以下のAPI例は、ストレージボリュームに「Testing」という単語をノートとして追加する。
curl -u $SL_USER:$SL_APIKEY -X POST -H "Accept: */*" -H "Accept-Encoding: gzip, deflate, compress" -d '{"parameters": [{"notes": "Testing"}]}' 'https://api.softlayer.com/rest/v3.1/SoftLayer_Network_Storage/123456789/editObject.json'
あるいは、API Python Client の volume_set_note メソッドを使うこともできる。
File Storage for Classic へのアクセスをホストに許可する
「承認済み」ホストとは、特定のボリュームへのアクセス権限が付与されたホストのことです。 ホストの許可がなければ、システムからストレージにアクセスすることも、ストレージを使用することもできません。 ホストによるボリュームへのアクセスを許可すると、ユーザー名とパスワードが生成されます。
ご使用のストレージと同じデータ・センターにあるホストを許可および接続できます。 複数のアカウントを持つことはできますが、あるアカウントのホストから別のアカウントのストレージへのアクセスを許可することはできません。
最大 64 台のサーバーにファイル共有へのアクセスを許可することができます。 この制限には、すべてのサブネット、ホスト、および IP 許可の組み合わせが含まれます。 この制限を増やす方法について詳しくは、 FAQ を参照してください。
ホストが認証された後、ファイル共有をマウントし、新しいフォルダ構造とファイルの所有者を割り当てることができます。 Linux では、 chown と chmod コマンドを使用して、個々のユーザーやグループに読み取り、書き込み、実行の権限を割り当てることで、アクセス制御をさらに厳密にすることができます。 詳細については、 Red Hat Linux® での File Storage for Classic のマウント」 および 「 Ubuntu での File Storage for Classic のマウント」を 参照してください。
コンソールでホストによる File Storage for Classic へのアクセスを許可する
-
IBM Cloud® コンソールに移動します。 メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
-
「ストレージ」 > **「File Storage for Classic」とクリックして、使用する「ボリューム名」**をクリックします。
-
ページの**「許可ホスト」**セクションまでスクロールします。
-
右にある**「ホストの許可」**をクリックします。
-
デバイス・タイプ、サブネット、または IP アドレスを選択して、使用可能なホスト・リストにフィルターを掛けます。
サブネットに基づいてリストにフィルターを掛けた場合、表示されるサブネットは、ストレージ・ボリュームと同じデータ・センター内のサブスクライブ・サブネットです。
-
リストから 1 つ以上のホストを選択して、**「保存」**をクリックします。
CLI からホストが File Storage for Classic にアクセスできるようにする
IBMCLOUD CLI からのホストの許可
ibmcloud sl file access-authorize コマンドを使用して、ホストがファイル共有にアクセスすることを許可します。 以下の例では、仮想サーバー・インスタンス 87654321 がファイル共有 12345678 をマウントすることを許可します。
ibmcloud sl file access-authorize 12345678 --virtual-id 87654321
このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl file access-authorizeを参照してください。
SLCLI からのホストの許可
ホストにボリュームへのアクセス権を付与するには、 slcli file access-authorize コマンドを使用します。
$ slcli file access-authorize --help
Usage: slcli file access-authorize [OPTIONS] VOLUME_ID
Options:
-h, --hardware-id TEXT The ID of one hardware server to authorize.
-v, --virtual-id TEXT The ID of one virtual server to authorize.
-i, --ip-address-id TEXT The ID of one IP address to authorize.
-p, --ip-address TEXT An IP address to authorize.
-s, --subnet-id TEXT An ID of one subnet to authorize.
--help Show this message and exit.
APIでホストが File Storage for Classic にアクセスすることを許可する
ホストがファイルボリュームにアクセスすることを承認するには、API Python Client の authorize_host_to_volume メソッドを使用します。 volume_id hardware_ids (ベアメタルサーバーの場合)、 (仮想サーバーインスタンスの場合)、、.リクエストは、指定されたボリュームにアクセスできる オブジェクトの配列を返します。virtual_guest_ids ip_address_ids subnet_ids SoftLayer_Network_Storage_Allowed_Host
Terraform を使用したホストの許可
コンピュート・ホストに共有へのアクセスを許可するには、 ibm_storage_file リソースを使用して、仮想サーバーの場合は allowed_virtual_guest_ids 、ベアメタル・サーバーの場合は allowed_hardware_ids を指定します。 ストレージにアクセスできる IP アドレスを定義するには、 allowed_ip_addresses を指定します。
以下の例では、ID 28961689 の仮想サーバーが 10.146.139.64/26 サブネットおよび 10.146.139.84 アドレスからボリュームにアクセスできることを定義します。
resource "ibm_storage_file" "fs_endurance" {
type = "Endurance"
datacenter = "dal09"
capacity = 20
iops = 0.25
allowed_virtual_guest_ids = ["28961689"]
allowed_subnets = ["10.146.139.64/26"]
allowed_ip_addresses = ["10.146.139.84"]
snapshot_capacity = 10
hourly_billing = true
}
ストレージ・リソースが作成されると、 hostname 属性と volumename 属性にアクセスできます。これらの属性を使用して、後でマウント・ターゲットを判別することができます。 例えば、 hostname 引数が nfsdal0901a.service.softlayer.com に設定され、 volumename 引数が IBM01SV278685_7 に設定された File Storage ・リソースには、マウント・ポイント nfsdal0901a.service.softlayer.com:-IBM01SV278685_7 があります。
引数および属性について詳しくは、 ibm_storage_fileを参照してください。
コンソールで、 File Storage for Classic ボリュームへのアクセスが許可されているホストの一覧を表示する
- IBM Cloud® コンソールに移動します。 メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
- 「ストレージ」 > **「File Storage for Classic」とクリックして、使用する「ボリューム名」**をクリックします。
- **「許可ホスト」**をクリックして、ご使用のファイル・シェアへのアクセス権があるコンピュート・インスタンスを表示します。
- 楕円形の
をクリックし、View host details を選択します。 サイドパネルに、デバイス名、IPアドレス、ユーザー名、パスワードなどの詳細が表示されます。 アクセス・コントロール・リスト・セクションも表示される。 アクセス制御リストセクションでは、サブネットの追加や削除が可能です。
ターゲット・アドレスは、**「ストレージの詳細」**ページにリストされます。 NFS の場合、ターゲット・アドレスは DNS 名として示され、iSCSI の場合は「ターゲット ポータルの探索」の IP アドレスとして示されます。
CLI から、 File Storage for Classic ボリュームへのアクセスが許可されているホストの一覧を表示する
IBMCLOUD CLI からの許可されたホストのリストの表示
ibmcloud sl file access-list コマンドを使用して、ファイル共有へのアクセスが許可されているホストをリストできます。 以下の例では、ファイル共有 12345678 をマウントできるホストをリストし、それらの ID でソートします。
ibmcloud sl file access-list 12345678 --sortby id
このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl file access-listを参照してください。
SLCLI からの許可されたホストのリストの表示
許可されたホストのリストを表示するには、次のコマンドを使用できます。
$ slcli file access-list --help
Usage: slcli file access-list [OPTIONS] VOLUME_ID
Options:
--sortby TEXT Column to sort by
--columns TEXT Columns to display. Options: id, name, type,
private_ip_address, source_subnet, host_iqn, username,
password, allowed_host_id
-h, --help Show this message and exit.
コンソールで、ホストがアクセス権限を持つ File Storage for Classic ボリュームを表示する
ホストがアクセス可能なボリュームを確認できます。これには、接続に必要な情報(ボリューム名、ストレージタイプ、ターゲットアドレス、容量、および場所)が含まれます。
- IBM Cloud® コンソールに移動します。
- メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
- 「デバイス」 > **「デバイス・リスト」**をクリックします。
- 目的のデバイスをクリックします。
- 「ストレージ」タブを選択します。
この特定のホストがアクセス権を持っているストレージ・ボリュームのリストが表示されます。いずれも、ストレージ・タイプ (ブロック、ファイル、その他) ごとにグループ化されています。 それぞれの**「アクション」**メニューから、他のストレージを許可したり、アクセス権を削除したりできます。
コンソールでホストの File Storage for Classic へのアクセス権を取り消す
ホストから特定のストレージ・ボリュームへのアクセスを停止する場合は、アクセス権を取り消すことができます。 アクセス権が取り消されると、ホスト接続はボリュームから除去されます。 オペレーティング・システムとアプリケーションはそのボリュームと通信できなくなります。
ホスト側の問題を防止するために、アクセス権を取り消す前にオペレーティング・システムからストレージ・ボリュームをアンマウントして、ドライブの欠落やデータ破損を回避してください。
「デバイス・リスト」ビューまたは「ストレージ」ビューの「ストレージ」からアクセス権を取り消すことができます。
コンソールの「デバイス一覧」からアクセス権を取り消す
- IBM Cloud® コンソールに移動します。
- メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
- 「デバイス」 > **「デバイス・リスト」**をクリックします。
- 該当するデバイスをダブルクリックします。
- **「ストレージ」**タブを選択します。
- この特定のホストがアクセス権を持っているストレージ・ボリュームのリストが表示されます。いずれも、ストレージ・タイプ (ブロック、ファイル、その他) ごとにグループ化されています。 アクセス権を取り消すボリュームの隣にある、それぞれの**「アクション」メニューを選択して、「アクセスの取り消し」**をクリックします。
- このアクションは元に戻せないので、ボリュームのアクセス権を取り消してよいかどうかを確認します。 ボリュームへのアクセス権を取り消すには**「はい (Yes)」を、アクションをキャンセルするには「いいえ (No)」**をクリックします。
特定のホストから複数のボリュームを切断する場合は、各ボリュームに対して「アクセス権の取り消し」アクションを繰り返す必要があります。
コンソールの「ストレージ」ビューからアクセス権を取り消す
- IBM Cloud® コンソールに移動します。
- メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
- 「ストレージ」 > **「File Storage for Classic」とクリックし、アクセス権を取り消す「ボリューム」**を選択します。
- **「許可ホスト」**をクリックして、ご使用のファイル・シェアへのアクセス権があるコンピュート・インスタンスを表示します。
- アクセスを無効にするホストの横にある [アクション
] をクリックし、[ アクセス権の取り消し] を選択します。
- このアクションは元に戻せないので、ボリュームのアクセス権を取り消してよいかどうかを確認します。 ボリュームへのアクセス権を取り消すには**「はい (Yes)」を、アクションをキャンセルするには「いいえ (No)」**をクリックします。
特定のボリュームから複数のホストを切断する場合は、ホストごとに「アクセス権の取り消し」アクションを繰り返す必要があります。
CLI からホストの File Storage for Classic へのアクセス権を取り消す
IBMCLOUD CLI からのホスト許可の取り消し
ibmcloud sl file access-revoke コマンドを使用して、ホストから許可を除去することができます。 次のコマンドは、仮想サーバー・インスタンス 87654321 がファイル共有 12345678 をマウントすることを許可しません。
ibmcloud sl file access-revoke 12345678 --virtual-id 87654321
このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl file access-revokeを参照してください。
SLCLI からのホスト許可の取り消し
SLCLI で次のコマンドを使用します。
$ slcli file access-revoke --help
Usage: slcli file access-revoke [OPTIONS] VOLUME_ID
Options:
-h, --hardware-id TEXT The ID of one hardware server to revoke authorization.
-v, --virtual-id TEXT The ID of one virtual server to revoke authorization.
-i, --ip-address-id TEXT The ID of one IP address to revoke authorization.
-p, --ip-address TEXT An IP address to revoke authorization.
-s, --subnet-id TEXT An ID of one subnet to revoke authorization.
--help Show this message and exit.
特定のボリュームから複数のホストを切断する場合は、ホストごとに「アクセス権の取り消し」アクションを繰り返す必要があります。
APIで File Storage for Classic、ホストのアクセス権を剥奪する
ファイルボリュームにアクセスするホスト権限を取り消すには、API Python Client の deauthorize_host_to_volume メソッドを使用します。 hardware_ids (ベアメタルサーバーの場合)、virtual_guest_ids (仮想サーバーインスタンスの場合)、 ip_address_ids、 subnet_ids のいずれかのパラメータを指定して、 volume_id と計算ホストを指定しなければなりません。リクエストは、指定されたボリュームにアクセスできる SoftLayer_Network_Storage_Allowed_Host オブジェクトの配列を返しますので、リクエストされた計算ホストが削除されたことを確認できます。
コンソールでのストレージボリュームの削除
特定のボリュームが不要になった場合は、そのファイル・シェアを削除することができます。 ストレージ・ボリュームをキャンセルするには、最初にすべてのホストのアクセス権を取り消す必要があります。
-
IBM Cloud® コンソールに移動します。 メニューから、インフラストラクチャ
>クラシックインフラストラチャをク選択します。
-
「ストレージ」 > **「File Storage for Classic」**をクリックします。
-
キャンセルするボリュームの 「アクション」
をクリックし、 「削除」 File Storage for Classic を選択します。
-
ボリュームを今すぐ削除するか、プロビジョニングされた日から1年後の日付に削除するか、確認してください。
応当日にボリュームをキャンセルするオプションを選択した場合は、応当日の前にキャンセル要求を無効にすることができます。
-
**「次へ進む (Continue)」または「閉じる」**をクリックします。
-
「同意する」チェックボックスにチェックを入れ、「 確認 」をクリックしてください。
ボリュームが取り消されると、要求の後に 24 時間の再利用待機期間が続きます。 その 24 時間の間は、コンソールにボリュームが表示されています。 ボリュームの請求は即時に停止します。 再要求の期間が期限切れになると、データは破棄されて、ボリュームもコンソールから除去されます。 詳細については、よくある質問を参照してください。
アクティブなレプリカおよび従属複製があると、ストレージ・ボリュームの再利用処理がブロックされます。 そのボリュームがマウントされなくなったこと、ホストの許可が取り消されたこと、複製がキャンセルされたこと、および従属した複製が存在しないことを確認してから、元のボリュームの削除を試みてください。
CLI からストレージボリュームを削除する
ボリュームが取り消されると、要求の後に 24 時間の再利用待機期間が続きます。 その 24 時間の間は、コンソールにボリュームが表示されています。 ボリュームの請求は即時に停止します。 再要求の期間が期限切れになると、データは破棄されて、ボリュームもコンソールから除去されます。 詳細については、よくある質問を参照してください。
アクティブなレプリカおよび従属複製があると、ストレージ・ボリュームの再利用処理がブロックされます。 そのボリュームがマウントされなくなったこと、ホストの許可が取り消されたこと、複製がキャンセルされたこと、および従属した複製が存在しないことを確認してから、元のボリュームの削除を試みてください。
IBMCLOUD CLI からストレージボリュームを削除する
ibmcloud sl file volume-cancel コマンドを使用して、ファイル共有を取り消すことができます。 以下の例では、即時にファイル共有 12345678 を取り消します。
ibmcloud sl file volume-cancel 12345678 --immediate -f
このコマンドで使用可能なすべてのパラメーターについて詳しくは、 ibmcloud sl file volume-cancelを参照してください。
ストレージ・ボリュームの削除 (SLCLI を使用)
ストレージ・ボリュームを削除するために、次のコマンドを使用することができます。
$ slcli file volume-cancel --help
Usage: slcli file volume-cancel [OPTIONS] VOLUME_ID
Options:
--reason TEXT An optional reason for cancellation.
--immediate Cancels the File Storage volume immediately instead of on the
billing anniversary.
-h, --help Show this message and exit.
API を使用してストレージボリュームを削除する
ボリュームが取り消されると、要求の後に 24 時間の再利用待機期間が続きます。 その 24 時間の間は、コンソールにボリュームが表示されています。 ボリュームの請求は即時に停止します。 再要求の期間が期限切れになると、データは破棄されて、ボリュームもコンソールから除去されます。 詳細については、よくある質問を参照してください。
アクティブなレプリカおよび従属複製があると、ストレージ・ボリュームの再利用処理がブロックされます。 そのボリュームがマウントされなくなったこと、ホストの許可が取り消されたこと、複製がキャンセルされたこと、および従属した複製が存在しないことを確認してから、元のボリュームの削除を試みてください。
その後、API Python Clientの cancel_volume メソッドを使用できる。
volume_id を指定し、サブスクリプションを直ちに解約するか、契約更新日に解約するかを指定してください(immediate=False または immediate=True )。必要に応じて、解約の理由を記入することもできます(reason='No longer needed' )。
Terraform を使用したストレージ・ボリュームの削除
terraform destroy コマンドを使用すると、単一のファイル共有などのリモートオブジェクトを簡単に削除できます。 次の例は、IDが ibm_file_share.example.id のファイル共有をキャンセルします。
terraform destroy --target ibm_file_share.example.id
詳しくは、 terraform destroyを参照してください。
ボリュームが取り消されると、要求の後に 24 時間の再利用待機期間が続きます。 その 24 時間の間は、コンソールにボリュームが表示されています。 ボリュームの請求は即時に停止します。 再要求の期間が期限切れになると、データは破棄されて、ボリュームもコンソールから除去されます。 詳細については、よくある質問を参照してください。
アクティブなレプリカおよび従属複製があると、ストレージ・ボリュームの再利用処理がブロックされます。 そのボリュームがマウントされなくなったこと、ホストの許可が取り消されたこと、複製がキャンセルされたこと、および従属した複製が存在しないことを確認してから、元のボリュームの削除を試みてください。