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 ファイル