Kubernetes クラスター上の Scalar 製品からのログの収集
このページは英語版のページが機械翻訳されたものです。英語版との間に矛盾または不一致がある場合は、英語版を正としてください。
このドキュメントでは、Helm を使用して Grafana Loki と Promtail を Kubernetes にデプロイする方法について説明します。 このドキュメントに従うと、Kubernetes 環境で Scalar 製品のログを収集できます。
マネージド Kubernetes クラスターを使用しており、監視とログ記録にクラウド サービス機能を使用したい場合は、次のドキュメントを参照してください。
前提条件
- Kubernetes クラスターを作成します。
- 要塞サーバーを作成し、
kubeconfig
を設定します。 - Prometheus Operator をデプロイします (収集されたログを調査するために Grafana を使用します)
Grafana helm リポジトリを追加します
このドキュメントでは、Prometheus Operator のデプロイメントに Helm を使用します。
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
カスタム値ファイルを準備する
loki-stack のサンプルファイル scalar-loki-stack-custom-values.yaml を入手してください。 Scalar 製品のロギングには、このサンプル ファイルの構成をお勧めします。
カスタム値ファイルで nodeSelector を設定する (オプション)
Kubernetes ワーカーノードにラベルを追加している場合は、次のようにカスタム値ファイル (scalar-loki-stack-custom-values.yaml) で nodeSelector を設定する必要がある場合があります。使用している製品に応じて、次の例を参照してください。
- ScalarDB
- ScalarDL
使用している ScalarDB 製品を選択します。
- ScalarDB Cluster
- ScalarDB Server (非推奨)
promtail:
nodeSelector:
scalar-labs.com/dedicated-node: scalardb-cluster
promtail:
nodeSelector:
scalar-labs.com/dedicated-node: scalardb
使用している ScalarDL 製品を選択します。
- ScalarDL Ledger
- ScalarDL Auditor
promtail:
nodeSelector:
scalar-labs.com/dedicated-node: scalardl-ledger
promtail:
nodeSelector:
scalar-labs.com/dedicated-node: scalardl-auditor
カスタム値ファイルで許容値を設定する (オプション)
Kubernetes ワーカーノードにテイントを追加している場合は、次のようにカスタム値ファイル (scalar-loki-stack-custom-values.yaml) で許容値を設定する必要がある場合があります。使用している製品に応じて、次の例を参照してください。
- ScalarDB
- ScalarDL
使用している ScalarDB 製品を選択します。
- ScalarDB Cluster
- ScalarDB Server (deprecated)
promtail:
tolerations:
- effect: NoSchedule
key: scalar-labs.com/dedicated-node
operator: Equal
value: scalardb-cluster
promtail:
tolerations:
- effect: NoSchedule
key: scalar-labs.com/dedicated-node
operator: Equal
value: scalardb
使用している ScalarDL 製品を選択します。
- ScalarDL Ledger
- ScalarDL Auditor
promtail:
tolerations:
- effect: NoSchedule
key: scalar-labs.com/dedicated-node
operator: Equal
value: scalardl-ledger
promtail:
tolerations:
- effect: NoSchedule
key: scalar-labs.com/dedicated-node
operator: Equal
value: scalardl-auditor
Loki と Promtail をデプロイする
Loki と Promtail は、Prometheus や Grafana と同じ名前空間 Monitoring
にデプロイすることをお勧めします。 Monitoring
名前空間は、ドキュメント Kubernetes クラスター上の Scalar 製品の監視 ですでに作成済みです。
helm install scalar-logging-loki grafana/loki-stack -n monitoring -f scalar-loki-stack-custom-values.yaml
Loki と Promtail がデプロイされているかどうかを確認する
Loki および Promtail ポッドが適切にデプロイされている場合は、次のコマンドを使用して、STATUS
が Running
であることが確認できます。 promtail ポッドは DaemonSet としてデプロイされるため、promtail ポッドの数は Kubernetes ノードの数によって異なります。 次の例では、Kubernetes クラスター内に Scalar 製品のワーカーノードが 3 つあります。
kubectl get pod -n monitoring
次のような結果が表示されます:
NAME READY STATUS RESTARTS AGE
scalar-logging-loki-0 1/1 Running 0 35m
scalar-logging-loki-promtail-2fnzn 1/1 Running 0 32m
scalar-logging-loki-promtail-2pwkx 1/1 Running 0 30m
scalar-logging-loki-promtail-gfx44 1/1 Running 0 32m
Grafana ダッシュボードでログを表示する
収集されたログは、次のように Grafana ダッシュボードで確認できます。
- Grafana ダッシュボードにアクセスします。
Explore
ページに移動します。- 左上のプルダウンから
Loki
を選択します。 - ログを問い合わせる条件を設定する。
- 右上の
Run query
ボタンを選択します。
Grafana ダッシュボードへのアクセス方法の詳細については、Kubernetes クラスター上の Scalar 製品の監視 を参照してください。