本ページでは、Alibaba Cloud quota_tool ツールを使用して、NAS ファイルシステムがマウントされている ECS インスタンスの Apsara File Storage NAS (NAS) クォータを管理する方法について説明します。 これらの ECS インスタンスのクォータを設定、表示、キャンセルすることができます。

始める前に

NAS 容量型または NAS パフォーマンス型の NFS ファイルシステムは、ECS インスタンスにマウントされています。 詳細については、「Linux で NFS ファイルシステムをマウントする」をご参照ください。

このタスクについて

NAS を使用すると、ディレクトリレベルのクォータを簡単に表示および管理することができます。 ディレクトリレベルのクォータは、各フォルダー内のファイルの最大数と、これらのファイルに許可される最大ストレージ容量を指定します。

アプリケーションスコープの観点から、クォータはすべてのユーザーのクォータと、単一のユーザーまたはグループのクォータに分類されます。 すべてのユーザーのクォータは、すべてのユーザーがディレクトリに作成できるファイルに許可される最大ストレージ容量を指定します。 単一のユーザーまたはグループのクォータは、ユーザーまたはグループがディレクトリに作成できるファイルに許可される最大ストレージ容量を指定します。

制限の観点から、クォータは統計用のクォータと制限用のクォータに分類されます。 統計用のクォータは、ストレージスペースの使用量のみを収集します。 統計データを取得および表示する簡単な方法を提供します。 制限用のクォータは、ディレクトリに作成できるファイルのストレージスペースの最大容量を指定します。 制限を超えると、ファイルまたはサブディレクトリの作成、ファイルへのデータの追加、またはその他の操作の実行に失敗する可能性があります。
重要
  • 統計用のクォータのみを設定することができます。
  • 中国 (張家口)、中国 (フフホト)、オーストラリア (シドニー)、マレーシア (クアラルンプール)、および米国 (シリコンバレー) にあるファイルシステムのクォータのみを設定することができます。
  • NAS は、バックエンドでクォータの非同期計算を実行します。 quota_tool ツールを使用してクォータに関する統計データを取得する場合、プロセスの完了には一定の時間が必要となります。 ほとんどの場合、時間は約 5~15 分です。

クォータの設定

下記の例では、/mnt ディレクトリを使用しています。

  1. Elastic Compute Service (ECS) インスタンスにルートアカウントでログインします。
    NAS ファイルシステムがマウントされている ECS インスタンス で quota_tool ツールを使用することができます。 ルート権限でツールを実行する必要があります。 下記に、ECS インスタンスで quota_tool ツールを使用する方法を説明します。
  2. 下記のコマンドを使用して、quota_tool ツールをダウンロードします。
    wget https://nasimport.oss-cn-shanghai.aliyuncs.com/quota_tool_v1.0 -O quota_tool
  3. 下記のコマンドを使用して、quota_tool ツールに実行権限を付与します。
    sudo chmod a+x quota_tool
  4. クォータを設定します。
    ファイルシステムごとに、最大 10 個のディレクトリのクォータのみを設定することができます。

    クォータを設定するために使用するコマンドの構文は sudo ./quota_tool set --dir [DIR] [OPTION] です。

    パラメーター 説明
    --dir [DIR] クォータを設定するディレクトリを指定します。 たとえば、--dir /mnt/data/ です。
    OPTION OPTION パラメーターに必要なオプションを指定します。
    パラメーターのオプションを指定するときは、これらのルールに従う必要があります。 --accounting オプションが必要です。次のオプションのいずれかが必要です: --alluser、--uid、および --gid。。
    • --accounting: 統計用のクォータを指定します。
    • --alluser: すべてのユーザーのディレクトリレベルのクォータを指定します。
    • --uid: ユーザーの UID を参照します。 たとえば、--uid 505 は、UIDが 505 のユーザーのクォータのみを収集します。
    • --gid: グループの GID を参照します。 たとえば、--gid 1000 は、GID が1000 のグループのクォータのみを収集します。

    下記の例では、クォータを設定する方法を説明します。

    • 下記のコマンドを使用して、 /mnt/data/ ディレクトリの統計用のクォータを設定し、ディレクトリにあるファイルの総数を取得します。
      sudo ./quota_tool set --dir /mnt/data/ --accounting --alluser
    • 下記のコマンドを使用して、 /mnt/data/ ディレクトリの統計用のクォータを設定し、UID が 505 のユーザーが作成したファイルの総数を取得します。
      sudo ./quota_tool set --dir /mnt/data/ --accounting --uid 505

クォータの取得

NAS ディレクトリのクォータを設定した後、ディレクトリのクォータに関する統計データを取得することができます。

  1. ECS インスタンスにルートアカウントでログインします。
  2. 下記のコマンドを使用し、クォータを取得します。
    sudo ./quota_tool get --dir /mnt/data/

    sudo ./quota_tool get --dir /mnt/data/ --all コマンドを使用して、/mnt/data/ ディレクトリに指定したすべてのクォータを取得します。

    • クォータを初めて取得するプロセスの際、[初期化中] というステータスが表示されます。 初期化プロセスが完了すると、クォータを取得することができ、[成功] という結果が表示されます。 初期化プロセスの期間は、ディレクトリに含まれるファイルとサブディレクトリの数に基づきます。
    • 初期化プロセスの完了後、予想される FileCountReal および SizeReal が表示される前に、毎日のクォータの取得を実行すると、5~ 10 分の遅延が発生する可能性があります。 これは、バックエンドでのクォータの非同期計算が原因で発生します。
    クォータの取得

    下記の表に、JSON 形式の応答に含まれるパラメーターを記載します。

    パラメーター 説明
    Path クォータを取得するディレクトリを示します。
    Report UID や GID など、ディレクトリに指定されているクォータに関するすべての情報が含まれます。
    ReportStatus クォータの取得のステータスを示します。
    FileCountLimit ファイル数の制限を示します。 Empty の値は、制限がないことを示します。
    FileCountReal ディレクトリにあるサブディレクトリ、ファイル、および特殊ファイルを含むファイルの総数を示します。
    QuotaType Accounting は統計用のクォータを示し、。
    Uid ユーザーの UID を示します。 All の値は、すべてのユーザーを示します。
    Gid グループの GID を示します。 All の値は、すべてのグループを示します。
    SizeLimit ディレクトリに存在するファイルの最大容量を示します。 Empty の値は制限がないことを示します。
    SizeReal ディレクトリに存在するファイルの合計容量を示します。

クォータのキャンセル

クォータを設定した後、クォータをキャンセルすることもできます。

  1. Elastic Compute Service (ECS) インスタンス にルートアカウントでログインします。
  2. クォータをキャンセルします。

    クォータをキャンセルするために使用できるコマンドの構文は sudo ./quota_tool cancel --dir [DIR] [OPTION] です。

    パラメーター 説明
    --dir [DIR] たとえば、-dir /mnt/data/ など、クォータをキャンセルするディレクトリを指定します。
    OPTION OPTION パラメーターに必要なオプションを設定します。
    OPTION パラメーターを設定する際に、下記のいずれかのオプションが必要です。 --alluser、--uid、および --gid。
    • --alluser: すべてのユーザーのクォータをキャンセルします。
    • --uid: ユーザーの UID を参照します。 たとえば、--uid 505 は、UID が 505 のユーザーのクォータをキャンセルします。
    • --gid: グループの GID を参照します。 たとえば、--gid 505 は、GID が 505 のグループのクォータをキャンセルします。

    下記の例では、クォータをキャンセルする方法について説明します。

    • /mnt/data/ ディレクトリのクォータを設定します。 下記のコマンドを使用して、UID が100 のユーザーのクォータをキャンセルします。
      sudo ./quota_tool cancel --dir /mnt/data/ --uid 100
    • /mnt/data/ ディレクトリのクォータを設定します。 下記のコマンドを使用して、すべてのユーザーのクォータをキャンセルします。
      sudo ./quota_tool cancel --dir /mnt/data/ --alluser