This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.8.2. メータリングのデバッグ
メータリングのデバッグは、各種のコンポーネントと直接対話する場合に大幅に容易になります。以下のセクションでは、Presto および Hive への接続とクエリー方法、および Presto および HDFS コンポーネントのダッシュボードの表示方法について詳しく説明します。
このセクションのコマンドではすべて、メータリングを openshift-metering
namespace の OperatorHub 経由でインストールしていることを前提とします。
8.2.1. レポート Operator ログの取得 リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドを使用して reporting-operator
のログに従います。
oc -n openshift-metering logs -f "$(oc -n openshift-metering get pods -l app=reporting-operator -o name | cut -c 5-)" -c reporting-operator
$ oc -n openshift-metering logs -f "$(oc -n openshift-metering get pods -l app=reporting-operator -o name | cut -c 5-)" -c reporting-operator
8.2.2. presto-cli を使用した Presto のクエリー リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドは、Presto をクエリーできる対話型の presto-cli セッションを開きます。このセッションは Presto と同じコンテナー内で実行され、Pod のメモリー制限を作成できる追加の Java インスタンスを起動します。これが実行される場合は、Presto Pod のメモリー要求および制限を引き上げる必要があります。
デフォルトでは、Presto は TLS を使用して通信するように設定されます。Presto クエリーを実行するには、以下のコマンドを使用する必要があります。
oc -n openshift-metering exec -it "$(oc -n openshift-metering get pods -l app=presto,presto=coordinator -o name | cut -d/ -f2)" \ -- /usr/local/bin/presto-cli --server https://presto:8080 --catalog hive --schema default --user root --keystore-path /opt/presto/tls/keystore.pem
$ oc -n openshift-metering exec -it "$(oc -n openshift-metering get pods -l app=presto,presto=coordinator -o name | cut -d/ -f2)" \
-- /usr/local/bin/presto-cli --server https://presto:8080 --catalog hive --schema default --user root --keystore-path /opt/presto/tls/keystore.pem
このコマンドを実行すると、クエリーを実行できるようにプロンプトが表示されます。show tables from metering;
クエリーを使用してテーブルの一覧を表示します。
presto:default> show tables from metering;
$ presto:default> show tables from metering;
出力例
8.2.3. beeline を使用した Hive のクエリー リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドでは、Hive をクエリーできる対話型の beeline セッションを開きます。このセッションは Hive と同じコンテナー内で実行され、Pod のメモリー制限を作成できる追加の Java インスタンスを起動します。これが実行される場合は、Hive Pod のメモリー要求および制限を引き上げる必要があります。
oc -n openshift-metering exec -it $(oc -n openshift-metering get pods -l app=hive,hive=server -o name | cut -d/ -f2) \ -c hiveserver2 -- beeline -u 'jdbc:hive2://127.0.0.1:10000/default;auth=noSasl'
$ oc -n openshift-metering exec -it $(oc -n openshift-metering get pods -l app=hive,hive=server -o name | cut -d/ -f2) \
-c hiveserver2 -- beeline -u 'jdbc:hive2://127.0.0.1:10000/default;auth=noSasl'
このコマンドを実行すると、クエリーを実行できるようにプロンプトが表示されます。show tables;
クエリーを使用してテーブルの一覧を表示します。
0: jdbc:hive2://127.0.0.1:10000/default> show tables from metering;
$ 0: jdbc:hive2://127.0.0.1:10000/default> show tables from metering;
出力例
8.2.4. Hive Web UI へのポート転送 リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドを実行して、Hive Web UI へのポート転送を実行します。
oc -n openshift-metering port-forward hive-server-0 10002
$ oc -n openshift-metering port-forward hive-server-0 10002
ブラウザーウィンドウで http://127.0.0.1:10002 を開き、Hive Web インターフェイスを表示します。
8.2.5. HDFS へのポート転送 リンクのコピーリンクがクリップボードにコピーされました!
以下のコマンドを実行して、HDFS namenode へのポート転送を実行します。
oc -n openshift-metering port-forward hdfs-namenode-0 9870
$ oc -n openshift-metering port-forward hdfs-namenode-0 9870
ブラウザーウィンドウで http://127.0.0.1:9870 を開き、HDFS Web インターフェイスを表示します。
以下のコマンドを実行して、最初の HDFS データノードへのポート転送を実行します。
oc -n openshift-metering port-forward hdfs-datanode-0 9864
$ oc -n openshift-metering port-forward hdfs-datanode-0 9864
- 1
- 他のデータノードをチェックするには、
hdfs-datanode-0
を情報を表示する Pod に置き換えます。
8.2.6. メータリング Ansible Operator リンクのコピーリンクがクリップボードにコピーされました!
メータリングは Ansible Operator を使用してクラスター環境のリソースを監視し、調整します。メータリングのインストールの失敗をデバッグする場合、Ansible ログや、MeteringConfig
カスタムリソースのステータスを確認することが役立ちます。
8.2.6.1. Ansible ログへのアクセス リンクのコピーリンクがクリップボードにコピーされました!
デフォルトのインストールでは、メータリング Operator は Pod としてデプロイされます。この場合、Ansible コンテナーのログを Pod 内で確認できます。
oc -n openshift-metering logs $(oc -n openshift-metering get pods -l app=metering-operator -o name | cut -d/ -f2) -c ansible
$ oc -n openshift-metering logs $(oc -n openshift-metering get pods -l app=metering-operator -o name | cut -d/ -f2) -c ansible
または、Operator コンテナーのログで出力の要約を確認できます (-c ansible
を -c operator
に置き換えます)。
8.2.6.2. MeteringConfig ステータスの確認 リンクのコピーリンクがクリップボードにコピーされました!
最近の障害についてデバッグするには、MeteringConfig
カスタムリソースの .status
フィールドを確認することが役立ちます。以下のコマンドは、Invalid
タイプのステータスメッセージを表示します。
oc -n openshift-metering get meteringconfig operator-metering -o=jsonpath='{.status.conditions[?(@.type=="Invalid")].message}'
$ oc -n openshift-metering get meteringconfig operator-metering -o=jsonpath='{.status.conditions[?(@.type=="Invalid")].message}'
8.2.6.3. MeteringConfig イベントの確認 リンクのコピーリンクがクリップボードにコピーされました!
メータリング Operator が生成するイベントを確認します。これは、インストール時またはアップグレード時のリソース障害のデバッグに役立ちます。イベントを最後のタイムスタンプで並べ替えます。
oc -n openshift-metering get events --field-selector involvedObject.kind=MeteringConfig --sort-by='.lastTimestamp'
$ oc -n openshift-metering get events --field-selector involvedObject.kind=MeteringConfig --sort-by='.lastTimestamp'
出力例には、MeteringConfig リソースの最新の変更が表示されます。