1.4. 質問および回答
1.4.1. 情報の取得
このセクションでは、Ceph API を使用して、ストレージクラスター、Ceph モニター、OSD、プール、およびホストに関する情報を表示する方法について説明します。
1.4.1.1. すべてのクラスター設定オプションを表示する方法
このセクションでは、RESTful プラグインを使用してクラスター設定オプションおよびその値を表示する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:CEPH_MANAGER_PORT/api/cluster_conf'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
CEPH_MANAGER_PORT
は、TCP ポート番号に置き換えます。デフォルトの TCP ポート番号は 8443 です。
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/cluster_conf'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/cluster_conf', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/cluster_conf', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/cluster_conf
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
関連情報
- Red Hat Ceph Storage 7 の 設定ガイド
1.4.1.2. 特定のクラスター設定オプションを表示する方法
このセクションでは、特定のクラスターオプションとその値を表示する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/cluster_conf/ARGUMENT'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
ARGUMENT
は、表示する設定オプションに置き換えます。
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/cluster_conf/ARGUMENT'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/cluster_conf/ARGUMENT', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
ARGUMENT
は、表示する設定オプションに置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/cluster_conf/ARGUMENT', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/cluster_conf/ARGUMENT
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
ARGUMENT
は、表示する設定オプションに置き換えます。
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
関連情報
- Red Hat Ceph Storage 7 の 設定ガイド
1.4.1.3. OSD のすべての設定オプションを表示する方法
このセクションでは、OSD のすべての設定オプションおよびその値を表示する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/flags'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/flags'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/flags', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/flags', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/osd/flags
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
関連情報
- Red Hat Ceph Storage 7 の 設定ガイド
1.4.1.4. CRUSH ルールの表示方法
このセクションでは、CRUSH ルールを表示する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/crush_rule'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/crush_rule'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/crush_rule', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/crush_rule', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/crush_rule
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
関連情報
- Red Hat Ceph Storage 7 の 管理ガイド の CRUSH ルール セクション
1.4.1.5. Monitor に関する情報を表示する方法
このセクションでは、以下のような特定の Monitor に関する情報を表示する方法を説明します。
- IP アドレス
- 名前
- クォーラムのステータス
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/monitor'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/monitor'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/monitor', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/monitor', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/monitor
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.6. 特定のモニターに関する情報を表示する方法
このセクションでは、以下のような特定の Monitor に関する情報を表示する方法を説明します。
- IP アドレス
- 名前
- クォーラムのステータス
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/monitor/NAME'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
NAME
は、Monitor の短縮ホスト名に置き換えます。
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/monitor/NAME'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/monitor/NAME', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
NAME
は、Monitor の短縮ホスト名に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/monitor/NAME', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/monitor/NAME
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
NAME
は、Monitor の短縮ホスト名に置き換えます。
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.7. OSD に関する情報を表示する方法
このセクションでは、以下のような OSD に関する情報を表示する方法を説明します。
- IP アドレス
- そのプール
- アフィニティー
- 重み
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/osd'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/osd
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.8. 特定の OSD に関する情報を表示する方法
このセクションでは、以下のような特定の OSD に関する情報を表示する方法を説明します。
- IP アドレス
- そのプール
- アフィニティー
- 重み
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/ID'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/ID'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/ID', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/ID', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/osd/ID
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.9. OSD でどのプロセスがスケジュールされるのかを指定する方法
このセクションでは、RESTful プラグインを使用して、スクラビングやディープスクラビングなどのプロセスを OSD にスケジュールする方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/ID/command'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/ID/command'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/ID/command', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/osd/ID/command', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/osd/ID/command
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.10. プールに関する情報の表示方法
このセクションでは、以下のようなプールの情報を表示する方法を説明します。
- フラグ
- サイズ
- 配置グループの数
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/pool'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/pool'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/pool', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/pool', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/pool
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.11. 特定のプールに関する情報を表示する方法
このセクションでは、以下のような特定のプールに関する情報を表示する方法を説明します。
- フラグ
- サイズ
- 配置グループの数
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/pool/ID'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/pool/ID'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/pool/ID', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/pool/ID', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/pool/ID
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.12. ホストに関する情報を表示する方法
このセクションでは、以下のようなホストに関する情報を表示する方法を説明します。
- ホスト名
- Ceph デーモンとその ID
- Ceph バージョン
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/host'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/host'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/host', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/host', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/host
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.1.13. 特定のホストに関する情報を表示する方法
このセクションでは、以下のような特定のホストに関する情報を表示する方法を説明します。
- ホスト名
- Ceph デーモンとその ID
- Ceph バージョン
curl
コマンド
コマンドラインで、以下を使用します。
curl --silent --user USER 'https://CEPH_MANAGER:8080/api/host/HOST_NAME'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
HOST_NAME
は、hostname
フィールドにリスト表示されるホストのホスト名に置き換えます。
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/host/HOST_NAME'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/host/HOST_NAME', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
HOST_NAME
は、hostname
フィールドにリスト表示されるホストのホスト名に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.get('https://CEPH_MANAGER:8080/api/host/HOST_NAME', auth=("USER", "PASSWORD"), verify=False) >> print result.json()
Web ブラウザー
Web ブラウザーで以下を入力します。
https://CEPH_MANAGER:8080/api/host/HOST_NAME
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
HOST_NAME
は、hostname
フィールドにリスト表示されるホストのホスト名に置き換えます。
プロンプトが表示されたら、ユーザー名とパスワードを入力します。
1.4.2. 設定の変更
このセクションでは、Ceph API プラグインを使用して OSD 設定オプション、OSD の状態、プールに関する情報を変更する方法を説明します。
1.4.2.1. OSD 設定オプションの変更方法
このセクションでは、RESTful プラグインを使用して OSD 設定オプションを変更する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
echo -En '{"OPTION": VALUE}' | curl --request PATCH --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/flags'
以下を置き換えます。
-
OPTION
を変更するオプションに置き換えます (pause
、noup
、nodown
、noout
、noin
、nobackfill
、norecover
、noscrub
、nodeep-scrub
) -
true
またはfalse
のVALUE
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
echo -En '{"OPTION": VALUE}' | curl --request PATCH --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/flags'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/osd/flags', json={"OPTION": VALUE}, auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
OPTION
を変更するオプションに置き換えます (pause
、noup
、nodown
、noout
、noin
、nobackfill
、norecover
、noscrub
、nodeep-scrub
) -
VALUE
はTrue
またはFalse
に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/osd/flags', json={"OPTION": VALUE}, auth=("USER", "PASSWORD"), verify=False) >> print result.json()
1.4.2.2. OSD の状態を変更する方法
このセクションでは、RESTful プラグインを使用して OSD の状態を変更する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
echo -En '{"STATE": VALUE}' | curl --request PATCH --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/ID'
以下を置き換えます。
-
STATE
は、変更する状態 (in
またはup
) に置き換えます。 -
true
またはfalse
のVALUE
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
echo -En '{"STATE": VALUE}' | curl --request PATCH --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/ID'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/osd/ID', json={"STATE": VALUE}, auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID -
STATE
は、変更する状態 (in
またはup
) に置き換えます。 -
VALUE
はTrue
またはFalse
に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/osd/ID', json={"STATE": VALUE}, auth=("USER", "PASSWORD"), verify=False) >> print result.json()
1.4.2.3. OSD の重みを再設定する方法
このセクションでは、OSD の重みを変更する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
echo -En '{"reweight": VALUE}' | curl --request PATCH --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/ID'
以下を置き換えます。
-
VALUE
は、新しい重みに置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
echo -En '{"reweight": VALUE}' | curl --request PATCH --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/ID'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/osd/ID', json={"reweight": VALUE}, auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID -
VALUE
は、新しい重みに置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/osd/ID', json={"reweight": VALUE}, auth=("USER", "PASSWORD"), verify=False) >> print result.json()
1.4.2.4. プールの情報の変更方法
このセクションでは、RESTful プラグインを使用して特定のプールの情報を変更する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
echo -En '{"OPTION": VALUE}' | curl --request PATCH --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/pool/ID'
以下を置き換えます。
-
OPTION
は、変更するオプションに置き換えます。 -
VALUE
は、オプションの新しい値に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
echo -En '{"OPTION": VALUE}' | curl --request PATCH --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/pool/ID'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/pool/ID', json={"OPTION": VALUE}, auth=("USER, "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID -
OPTION
は、変更するオプションに置き換えます。 -
VALUE
は、オプションの新しい値に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.patch('https://CEPH_MANAGER:8080/api/pool/ID', json={"OPTION": VALUE}, auth=("USER, "PASSWORD"), verify=False) >> print result.json()
1.4.3. クラスターの管理
このセクションでは、Ceph API を使用して OSD でのスクラビングまたはディープスクラビングの初期化、プールの作成、プールからのデータの削除、リクエストの削除、または要求の作成を行う方法を説明します。
1.4.3.1. OSD でスケジュール済みプロセスを実行する方法
このセクションでは、OSD でのスクラビングやディープスクラビングなどの RESTful API を使用してスケジュール済みプロセスを実行する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
echo -En '{"command": "COMMAND"}' | curl --request POST --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/osd/ID/command'
以下を置き換えます。
-
起動するプロセス (
scrub
、deep-scrub
、またはrepair
) を持つCOMMAND
。プロセスが OSD でサポートされていることを確認します。詳細は、「OSD でどのプロセスがスケジュールされるのかを指定する方法」 を参照してください。 -
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
echo -En '{"command": "COMMAND"}' | curl --request POST --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/osd/ID/command'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.post('https://CEPH_MANAGER:8080/api/osd/ID/command', json={"command": "COMMAND"}, auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
osd
フィールドにリストされている OSD のID
を持つ ID -
起動するプロセス (
scrub
、deep-scrub
、またはrepair
) を持つCOMMAND
。プロセスが OSD でサポートされていることを確認します。詳細は、「OSD でどのプロセスがスケジュールされるのかを指定する方法」 を参照してください。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.post('https://CEPH_MANAGER:8080/api/osd/ID/command', json={"command": "COMMAND"}, auth=("USER", "PASSWORD"), verify=False) >> print result.json()
1.4.3.2. 新規プールの作成方法
このセクションでは、RESTful プラグインを使用して新しいプールを作成する方法を説明します。
curl
コマンド
コマンドラインで、以下を使用します。
echo -En '{"name": "NAME", "pg_num": NUMBER}' | curl --request POST --data @- --silent --user USER 'https://CEPH_MANAGER:8080/api/pool'
以下を置き換えます。
-
NAME
は、新規プールの名前に置き換えます。 -
NUMBER
は、配置グループの数に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
echo -En '{"name": "NAME", "pg_num": NUMBER}' | curl --request POST --data @- --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/pool'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.post('https://CEPH_MANAGER:8080/api/pool', json={"name": "NAME", "pg_num": NUMBER}, auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
NAME
は、新規プールの名前に置き換えます。 -
NUMBER
は、配置グループの数に置き換えます。 -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.post('https://CEPH_MANAGER:8080/api/pool', json={"name": "NAME", "pg_num": NUMBER}, auth=("USER", "PASSWORD"), verify=False) >> print result.json()
1.4.3.3. プールの削除方法
このセクションでは、RESTful プラグインを使用してプールを削除する方法を説明します。
この要求はデフォルトで禁止されています。そのためには、以下のパラメーターを Ceph 設定ガイドに追加します。
mon_allow_pool_delete = true
curl
コマンド
コマンドラインで、以下を使用します。
curl --request DELETE --silent --user USER 'https://CEPH_MANAGER:8080/api/pool/ID'
以下を置き換えます。
-
USER
は、ユーザー名に置き換えます。 -
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID
プロンプトが表示されたら、ユーザーのパスワードを入力します。
自己署名証明書を使用した場合は、--insecure
オプションを使用します。
curl --request DELETE --silent --insecure --user USER 'https://CEPH_MANAGER:8080/api/pool/ID'
Python
Python インタープリターで、以下を入力します。
$ python >> import requests >> result = requests.delete('https://CEPH_MANAGER:8080/api/pool/ID', auth=("USER", "PASSWORD")) >> print result.json()
以下を置き換えます。
-
アクティブな
ceph-mgr
インスタンスを持つノードの IP アドレスまたは短いホスト名を持つCEPH_MANAGER
-
pool
フィールドにリストされているプールのID
を持つ ID -
USER
は、ユーザー名に置き換えます。 -
PASSWORD
は、ユーザーのパスワードに置き換えます。
自己署名証明書を使用した場合は、verify=False
オプションを使用します。
$ python >> import requests >> result = requests.delete('https://CEPH_MANAGER:8080/api/pool/ID', auth=("USER", "PASSWORD"), verify=False) >> print result.json()