2.3.6. 管理コマンドの実行方法
管理コマンドを実行するには、POST メソッドで /request
エンドポイントを使用します。この方法では、API で直接対応していないコマンドも使用できますが、Ceph ソースコードの src/mon/MonCommands.h
ファイルで定義できます。これは、たとえば API を使用する独自のアプリケーションをビルドする場合に役立ちます。
Python
src/mon/MonCommands.h
を確認し、API で実行するコマンドを見つけます。以下に例を示します。COMMAND("osd ls " \ "name=epoch,type=CephInt,range=0,req=false", \ "show all OSD ids", "osd", "r", "cli,rest")
COMMAND("osd ls " \ "name=epoch,type=CephInt,range=0,req=false", \ "show all OSD ids", "osd", "r", "cli,rest")
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンドは
osd ls
です。name
はコマンドが持つ引数の名前を指定し、type
は引数が取る値のタイプを指定し、range
は引数の許容される値の範囲を指定し、req
は引数が必要かどうかを指定します。この例では、引数はepoch
で、引数が取る値のタイプは integer で、許可される値の範囲は0
となり、この引数は任意です。Python インタープリターで、以下を入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 置き換え:
-
<ceph-mgr>
は、アクティブなceph-mgr
インスタンスを持つノードの IP アドレスまたは短縮ホスト名に置き換えます。 -
<command>
は、src/mon/MonCommands.h
ファイルに一覧表示されるコマンドに置き換えます。 -
<argument>
は、src/mon/MonCommands.h
ファイルに一覧表示されているコマンドの引数に置き換えます。引数が任意の場合は省略できます。 -
<value>
は、引数の値に置き換えます。 -
<user>
は、ユーザー名に置き換えます。 -
<password>
は、ユーザーのパスワードに置き換えます。
たとえば、
osd ls epoch 0
コマンドを使用するには、次を実行します。<command>
をosd ls
に置き換え、<argument>
をepoch
に置き換え、<value>
を0
に置き換えます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 自己署名証明書を使用した場合は、
verify=False
オプションを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
関連情報
- GitHub の src/mon/MonCommands.h ファイル