AddDrives

AddDrivesメソッドを使用すると、1つ以上の使用可能なドライブをクラスタに追加できます。これにより、ドライブはクラスタのデータの一部をホスティングできるようになります。

ストレージ ノードをクラスタに追加するときや既存のノードに新しいドライブをインストールするときに、新しいドライブは「available」とマーキングされます。ドライブを利用可能にするには、事前にAddDrives経由で追加しておく必要があります。ListDrivesメソッドを使用して、追加可能な(「available」である)ドライブを表示します。ドライブを追加すると、そのドライブに適切なタイプが自動的に決定されます。

このメソッドは非同期で、クラスタ内のドライブをリバランシングするプロセスが開始された時点で戻ります。ただし、新しく追加されたドライブを使用したクラスタ内のデータのリバランシングには時間がかかることがあり、その場合はAddDrivesメソッドの呼び出しが完了したあともリバランシングが続きます。GetAsyncResultメソッドを使用して、このメソッドが返したasyncHandleを照会することができます。AddDrivesメソッドが戻ったあとに、ListSyncJobsメソッドを使用して新しいドライブでのデータのリバランシングの進捗状況を確認できます。

注:複数のドライブを追加するときは、1つのドライブごとに複数の個別メソッドを使用するよりも、AddDrivesメソッド呼び出しを1回使用して追加するほうが効率的です。これにより、クラスタのストレージ負荷を一定にするために実施する必要のあるデータ バランシングの量が減少します。

パラメータ

このメソッドの入力パラメータは次のとおりです。

名前 説明 タイプ デフォルト値 必須
drives クラスタに追加する各ドライブに関する情報。有効な値は次のとおりです。
  • driveID:追加するドライブのID(整数)。
  • type:追加するドライブのタイプ(文字列)。有効な値は「slice」、「block」、「volume」です。省略した場合は、適切なタイプが割り当てられます。
JSONオブジェクトの配列 なし ○(typeは省略可能)

戻り値

このメソッドの戻り値は次のとおりです。

名前 説明 タイプ
asyncHandle 処理結果の取得に使用するハンドル値。 整数

要求例

このメソッドの要求例を次に示します。

{
  "id": 1,
  "method": "AddDrives",
  "params": {
    "drives": [
      {
        "driveID": 1,
        "type": "slice"
      },
      {
        "driveID": 2,
        "type": "block"
      },
      {
        "driveID": 3,
        "type": "block"
      }
    ]
  }
}

応答例

このメソッドの応答例を次に示します。

{
  "id": 1,
  "result" : {
    "asyncHandle": 1
  }
}