amCLIはServerView RAID Managerのコマンドライン インタフェースです。コマンドラインやスクリプトによって、RAIDアレイの作成、削除、管理や、ServerView RAID Manager自体の管理に使用します。
amCLIには次のコマンドオプションがあります。
-c|--create: 論理ドライブを作成します
-d|--delete: 最後の論理ドライブを削除します
-e|--exec: デバイス固有のコマンドを実行します
-g|--get: 対象のプロパティを取得します
-i|--import: 証明書のインポート
-l|--list: 情報をリスト表示します
-m|--migrate: RAIDアレイを他のRAIDレベルに移行します
-r|--restore: ファイルから状態を修復します
-s|--set: 対象のプロパティを指定した値に設定します
-w|--write: 現在のステータスをファイルに書き込みます
-Z|--zap: 対象を削除します
-?|--help: 簡単なヘルプを表示します
オプションは1つのみ指定でき、デフォルトは -?です。
このコマンドで操作できるすべてのオブジェクト (ServerView RAID Managerのサブシステム、アダプタ、物理ドライブ、RAIDアレイなどの論理ドライブ) は、スラッシュ (/) で区切られた2つの数字で識別します。<mod/idx>最初の数字は「モジュール」、2番目の数字(0から始まる)は「インデックス」です。この表記を「オブジェクトのアドレス」と呼びます。
次のモジュール番号をサポートしています。
mod | Module |
21 | ServerView RAID Manager |
32 | Avago MegaRAID SAS Adapter, SAS/SAS2/SAS3 IT/IR Adapter, MegaSR |
36 | Fujitsu Aries SAS Adapter |
39 | Linux Software RAID |
40 | Avago MegaRAID SAS Adapter, SAS/SAS2/SAS3 IT/IR Adapter (を介し CIM) |
47 | AMD Chipset RAID |
48 | Fusion-io PCIe SSD's |
53 | Intel PCIe SSD's |
インデックス値は連続している必要はなく、モジュールを基準とします。例えば、 27/5と27/7が存在する場合でも、27/6が存在する必要はありません。また、26/5と27/5が同時に存在できます。番号はアダプタ、論理ドライブ、物理ドライブで連続しても構いません。例えば、27/5と27/10がアダプタ、27/6と27/7が物理ドライブ、27/8と27/9が論理ドライブでも構いません。
次のように、amCLI -lを使用して、使用したいオブジェクトのアドレスを調べます。
スクリプト用に、このオプションを使用して全ての確認メッセージを抑止できます-quiet。
論理ドライブを作成する前に、使用するRAIDレベル、必要なパラメータ、論理ドライブを構成する物理ドライブや論理ドライブは何か、を決める必要があります。RAIDの概念やさまざまなRAIDレベルに精通していることが前提になります。
amCLI [-c|--create] <mod/AdpIdx> raid=<raidLevel> parameters <mod/PDIdx>+
amCLI --help create <mod/AdpIdx>を使用して、指定したアダプタがサポートしているRAIDレベルとパラメータを調べます。
Avago MegaRAIDアダプタ32/1で、物理ドライブ32/5、32/6、32/7から構成されるRAID 5のアレイを、デフォルトのパラメータで作成するには、次のコマンドを使用します。
# amCLI -c 32/1 raid=5 32/5 32/6 32/7
コマンドを実行すると、次の確認メッセージが表示されます(入力は大文字小文字を区別します)。
Are you sure to create a new Logical Drive on Adapter '32/1'?
Type YES to confirm _
ServerView RAID Managerは、新しい論理ドライブにアドレスを割り当てます。amCLI -lによって、アドレスを確認します。
このコマンドによって、指定されたアダプタで番号の一番大きな論理ドライブIDの論理ドライブ(通常は、最後に作成した論理ドライブ)を削除します。
amCLI [-d|--delete] <mod/AdpIdx>
上述の例で作成した論理ドライブを、作成した直後に削除するには、次のコマンドを使用します。
# amCLI -d 32/1
コマンドを実行すると、次の確認メッセージが表示されます。
Are you sure to delete the last Logical Drive on Adapter '32/1'?
Type YES to confirm _
指定したデバイスに対してデバイス固有のコマンドを実行します。
amCLI [-e|--exec] <mod/idx> <operation> <param>*
オブジェクトがサポートする操作や、操作に必要な追加パラメータを調べるには、次のコマンドを使用します。
amCLI [-?|--help] exec <mod/idx>
# amCLI -? exec 32/26
amCLI v5.7.0
Usage:
-e | --exec <32/PDIdx> locate
-e | --exec <32/PDIdx> stop_location
-e | --exec <32/PDIdx> create_global_hot_spare
-e | --exec <32/PDIdx> delete_global_hot_spare
-e | --exec <32/PDIdx> create_dedicated_hot_spare <mod/LDIdx>
-e | --exec <32/PDIdx> delete_dedicated_hot_spare
-e | --exec <32/PDIdx> make_online
-e | --exec <32/PDIdx> make_offline
-e | --exec <32/PDIdx> make_ready
-e | --exec <32/PDIdx> replace_missing_disk <mod/LDIdx>
# amCLI -e 32/26 locate
指定したオブジェクトのプロパティ値を取得します。
amCLI [-g|--get] <mod/idx> <property>
amCLI -? getを使用して、オブジェクトクラスがサポートする一般的なプロパティを調べ、amCLI -? get <mod/idx>を使用して、特定のオブジェクトがサポートするプロパティを調べます。
# amCLI -? get 32/2
amCLI v5.7.0
Usage:
-g | --get <32/LDIdx> activity
-g | --get <32/LDIdx> status
-g | --get <32/LDIdx> disk_cache_mode
-g | --get <32/LDIdx> bgi
...
# amCLI -g 32/2 status
Operational
このコマンドで証明書をインポートします。
amCLI [-i|--import] <certificate file> <private key file>
# amCLI -i cert.pem key.pem [intermediate.pem]
指定したオブジェクトに関する情報をリスト表示します。
amCLI [-l|--list] [all|struct|<mod/idx>]
# amCLI -l struct
21/3: System, 'hostname'
32/1: SAS Adapter 0, 'Avago MegaRAID SAS PCI Express(TM) ROMB (0)'
32/2: Logical Drive 0, 'LogicalDrive_0', RAID-0, 69472MB
32/3: SAS Port 0
32/11: Physical Drive 0, 'SEAGATE ST373454SS (0)', 69472MB
32/4: SAS Port 1
32/12: Physical Drive 1, 'SEAGATE ST336754SS (1)', 34464MB
...
論理ドライブを制御しているアダプタのコントローラがサポートしている場合、現在の構成で可能な論理ドライブのRAIDレベルを変更します。
amCLI [-m|--migrate] <mod/LDIdx> [raid=<raidLevel>] parameters <mod/PDIdx>*
指定した論理ドライブに対して、移行可能なRAIDレベルや、追加の物理ドライブが必要かどうかを調べるには、次のコマンドを使用します。
# amCLI -l 32/2
32/2: Logical Drive 0, 'LogicalDrive_0', RAID-0, 69472MB
Parents: 1
Children: -
Containers: 1
Drives: 1 --> ( 32/11 )
Properties:
Unique ID: PCI:Bus=2&Device=14&Function=0&ID=0
Logical Drive Number: 0
Name: LogicalDrive_0, settable
Logical Size: 69472 MB
Physical Size: 69472 MB
RAID Level: RAID-0
...
# amCLI -? migrate 32/2
amCLI v5.7.0
Usage:
-m | --migrate 32/2
[raid=(0|1|5)]
(<PDIdx>)+
これは、論理ドライブ32/2(RAID 0の論理ドライブ)をRAIDレベル0、1、5だけに移行可能で、物理ドライブの追加が可能であることを示しています(この場合、RAIDレベル1または5に移行するためには物理ドライブが必要です)。
# amCLI -m 32/2 raid=1 32/8
コマンドを実行すると、次の確認メッセージが表示されます。
Are you sure to modify Logical Drive '32/2' on Adapter '32/1'?
Type YES to confirm _
以前amCLI -wで作成したファイルからRAID設定の状態に復元します。
amCLI [-r|--restore] <filename>
# amCLI -r OldState
コマンドを実行すると、次の確認メッセージが表示されます。
Are you sure to restore the configuration?
Type YES to confirm _
システムディスクを管理しているアダプタの状態を復元すると、システムが使用できなくなる可能性があります。
指定したオブジェクトのプロパティを新しい値に設定します。
amCLI [-s|--set] <mod/idx> <property> <value>
amCLI -? setを使用して、デバイスクラスがサポートする一般的なプロパティを調べ、amCLI -? set <mod/idx>を使用して、指定したデバイスがサポートするプロパティを調べます。
# amCLI -? set 32/2
amCLI v5.7.0
Usage:
-s | --set <32/LDIdx> name <string>
...
# amCLI -g 32/2 name
LogicalDrive_0
# amCLI -s 32/2 name 'OS disk'
# amCLI -g 32/2 name
OS disk
指定したオブジェクトの内部状態をファイルに保存したり、標準出力に書き出したりします。
amCLI [-w|--write] <mod/SysIdx> [<file>]
amCLI [-w|--write] <mod/AdpIdx> [<file>]
# amCLI -w 32/1
<ServerViewRAIDManager Version="5.7.0">
<SASAdapter UniqueID="PCI:Bus=2&Device=14&Function=0" AdapterNumber="0
...
アダプタの既存の設定を消去します。例えば、すべての論理ドライブやホットスペアなどを削除します。
amCLI [-Z|--zap] [<mod/idx>]
(Note the upper case Z)
# amCLI -Z 32/17
このコマンドを実行すると、次の確認メッセージが表示されます(入力は大文字小文字を区別します)。
Are you sure to zap Adapter '32/17'?
Type YES to confirm _
ヘルプコマンドには、2つの機能があります。
amCLI [-?|--help] [[create | get | set | exec | migrate] [<mod/idx>]]
パラメータを追加しない場合は、amCLI -?によって、すべてのamCLIコマンドの構文を出力します。-?はデフォルトなので、amCLIと入力しても同じ結果になります。
次のパラメータを追加で指定すると、オブジェクトに適用する際のコマンドのパラメータに関する特定の情報を表示します。
ドライブを指定しない場合は、コマンドの構文を表示します。オブジェクトのアドレスを指定した場合は、そのオブジェクトでのコマンド実行に関する情報を表示します。
# amCLI -?
amCLI v5.7.0
Usage:
-c <mod/AdpIdx> raid=<raidLevel> [span=<spanCount>] [stripe=<stripeSize>]
[<raidFlag>=<flag>] [size=<megabytes>] (<mod/PDIdx>)+
--create <mod/AdpIdx> raid=<raidLevel> [span=<spanCount>]
[stripe=<stripeSize>] [<raidFlag>=<flag>] [size=<megabytes>]
(<mod/PDIdx>)+
-d <AdpIdx>
--delete <AdpIdx>
...
# amCLI -? create
amCLI v5.7.0
Usage:
-c <mod/AdpIdx> raid=<raidLevel> [span=<spanCount>] [stripe=<stripeSize>]
[<raidFlag>=<flag>] [size=<megabytes>] (<mod/PDIdx>)+
--create <mod/AdpIdx>
raid=<raidLevel> [span=<spanCount>]
[stripe=<stripeSize>] [<raidFlag>=<flag>]
[size=<megabytes>]
(<mod/PDIdx>)+
# amCLI --help create 32/17
amCLI v5.7.0
Usage:
-c | --create 32/17
raid=(0|1|5|6|10|50|60|1e)
[span=<(RAID-0:1)|
(RAID-1:1)|
(RAID-5:1)|
(RAID-6:1)|
(RAID-10:2..8)|
(RAID-50:2..8)|
(RAID-60:2..8)|
(RAID-1E:1)>]
[stripe=<(RAID-0:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-1:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-5:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-6:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-10:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-50:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-60:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)|
(RAID-1E:(8kb|16kb|32kb|64kb|128kb|256kb|512kb|1mb)>]
[init_mode=(no_initialization|fast_initialization|normal_initialization)]
[read_mode=(readahead|no_readahead)]
[write_mode=(writeback|always_writeback|writethrough)]
[cache_mode=(cached|direct)]
[disk_cache_mode=(disabled|enabled)]
[cache_settings=(data_protection|performance|advanced)]
[name=<string>]
[size=<megabytes>]
(<PDIdx>)+
ServerView RAID Managerが定義する戻り値(またはエラーレベル)は以下のような値と状態と示します。:
戻り値 | 説明 |
0 | 正常; エラーなし、または警告を検出 |
1 | 内部エラーです。 |
2 | シンタックスが無効です。 |
3 | オブジェクトが無効です。 |
4 | メモリ故障です。 |
5 | オペレーションが未サポートです。 |
6 | プロパティが未サポートです。 |
7 | オペレーションが現在実行できません。 |
8 | Communication with Core Service に失敗しました。 |
10 | Core Service initialization に失敗しました。 |
11 | Core Service database に失敗しました。 |
12 | オペレーションに失敗しました。 |
13 | 無効なパラメータです。 |
14 | ログインに失敗しました。 |
15 | シャットダウンを実行中です。 |
16 | 管理者権限を持っていません。 |
17 | ファイルが開けません。 |
18 | ファイルが読み込めません。 |
19 | ファイルが書き込めません。 |
20 | Core Service の初期化中です。 |