軽量ログシステム Loki を 10 分で K8s に導入

軽量ログシステム Loki を 10 分で K8s に導入

ロキとは何ですか?

Loki は、Grafana Labs によってオープンソース化された、水平スケーラブルで可用性の高いマルチテナント ログ集約システムです。もともとは、大規模な分散システムで大量のログを処理する問題を解決するために設計されました。 Loki は分散アーキテクチャを採用しており、大規模なログデータを迅速に処理できる Prometheus や Grafana と密接に統合されています。このプロジェクトはプロメテウスにインスピレーションを受けたものです

写真

  • Promtail は、ログを収集して Loki に送信するエージェントです。
  • Loki は、ログの保存とクエリの処理を担当するマスター サーバーです。
  • UI表示にはGrafanaを使用します。

ELK と比較した利点は何ですか?

ELK は大規模ログ記録ソリューションのリーダーです。 Loki に関して言えば、ELK と比較することは避けられません。

  1. シンプルなアーキテクチャ: Loki は分散アーキテクチャを採用しており、複数のノードまたは 1 つのノードにログを保存できます。 Promtail はログを収集し、Loki は保存とクエリを担当し、Grafana は表示に使用されます。
  2. より小さなストレージ: Lokiはコンパクトなインデックスと圧縮アルゴリズムを使用しており、ESと比較してストレージスペースを大幅に削減できます。
  3. ログ形式の要件なし: クエリ時のフォーマットの柔軟性とオプションが向上します。
  4. Prometheus、Grafana、K8sとのネイティブ統合: クエリメトリック、ログ、その他のデータを単一のユーザーインターフェースでシームレスに切り替える
  5. 軽量: Loki は、ログデータを保存してインデックス付けするための別の Elasticsearch クラスターを必要としないため、ELK よりも軽量です。

データを収集するには?

k8s クラスターはログ収集のソリューションを提供しません。一般的に、ログ収集には 3 つのソリューションがあります。

  1. ノード上でエージェントを実行してログを収集する(DaemonSet 収集方法)
  2. アプリケーションログを収集するためにポッドにサイドカーコンテナを含める(サイドカー収集方法)
  3. アプリケーションはログ情報を収集バックエンドにプッシュします(アクティブ収集方式)

ノード収集方法

写真

ログ システムは、DaemonSet モードで各ノードにエージェントを展開し、そのノード上のすべてのログを収集します。デフォルトでは、k8s の下の /var/log/pod と /var/lib/docker/containers にログが収集されます。アプリケーションの要件はコンソール印刷を有効にすることです。有効にしないとログは収集されません。単一の機能を持つクラスターや、ビジネスがあまり多くないクラスターに適しています。

サイドカー収集方法

写真

サイドカー方式では、各ポッドにサイドカー コンテナをデプロイして、現在のコンテナのログを収集します。サイドカー コンテナの数はポッドの数と同じです。したがって、Sidecar はより多くのリソースを消費しますが、優れた柔軟性とマルチテナント分離を備えています。より多くのリソースを消費する以外はコレクションのパフォーマンスに影響を与えないため、大規模な K8s クラスターに適しています。

Loki の Pormtail は上記の両方の方法をサポートしています。デフォルトはノードコレクションです。以下では、K8SでLokiログ分析システムを素早く導入する方法を説明します。

ロキの展開

倉庫を追加する

helm repo add grafana https://grafana.github.io/helm-charts

ダウンロードウェアハウス

helm pull grafana/loki-stack

パッケージを解凍する

解凍が完了すると、関連するパラメータの使用状況を確認できます。

 tar -xvf loki-stack-2.10.0.tgz

構成の概要

写真

このチャートには、Loki、promtail、grafana だけでなく、他のコンポーネントも含まれています。ただし、デフォルトでは有効になっていません。 Loki と promtail のみが有効になっています。デモンストレーションの目的で、ここでは grafana 構成も有効になっており、grafana.enabled=true で指定されています。同時に、関連するサブチャートのパラメータを指定する場合は、サブチャート名に従って指定します。パラメータ、例えば、grafanaの管理者パスワードを指定する場合は、grafana.adminPassword=adminで指定できます。

写真

起動する

注: 起動例ではログ データは保持されません。正式なデプロイメントには永続性構成が必要です。

loki-stackのGrafanaのパスワードは取得が複雑なので、パラメータで直接指定します。

 helm install loki ./loki-stack -n loki-stack \ --set grafana.enabled=true \ --set grafana.adminPassword=admin \ --create-namespace

写真

上記の起動が完了すると、/var/log/podと/var/lib/docker/containersのログ情報が収集されます。

起動ポッドを確認します。私の k8s クラスターには 6 つのノードがあるため、6 つの promtail がデプロイされます。

写真

Grafana アクセス

Grafana をノードポート アクセス モードに変更する

kubectl edit svc loki-grafana -n loki-stack

写真

ログインに成功したら、Explore 機能にアクセスし、ログ ブラウザ ボタンをクリックします。関連データが収集され、namepsace や pod などの複数のディメンションのラベルが自動的に作成されていることがわかります。

写真

たとえば、イングレスログを表示するには、名前空間 ingress-nginx を選択し、ログの表示をクリックします。

写真

写真

同時に、クエリ結果は改行、日付の並べ替えなどの機能をサポートできます。

写真

上記のデフォルトのクエリ インターフェイスはあまり使いやすくない可能性があるため、必要に応じてさまざまなクエリ インターフェイスをカスタマイズできます。興味のあるダッシュボードをダウンロードするには、https://grafana.com/grafana/dashboards に loki と入力してください。

写真

ロキのアンインストール

helm uninstall loki -n loki-stack

要約する

上記では、k8s に Loki をデプロイする方法を簡単に説明しました。非常にシンプルであることがわかります。 Loki は k8s と互換性があるため、追加の構成なしで、ポッドや名前空間などのラベル データをデフォルトで収集できます。ただし、実稼働レベルの可用性を実現するには、Loki のデータを永続的に構成し、収集されたログ データのサイズに応じて収集レートを調整し、ログの有効期限ポリシーを設定することも必要です。

<<:  2024年に注目すべきクラウドコンピューティングのトレンド

>>:  分散型から真のエッジへ: エッジ コンピューティングの 4 つの例

推薦する

3つの主要製品が同時に発売されます。 QingCloudがフルモデルクラウドの時代をどのように切り開くのかを見てみましょう

[51CTO.com からのオリジナル記事] 今日、ますます多くの企業が、従来の集中型 IT インフ...

仮想化、ブレード、省エネがデータセンターの3つの障害を克服

HP エンタープライズ コンピューティングおよびプロフェッショナル サービス グループのアジア太平洋...

今後10年間、私たちはTo Bに注力していきます。 UCloudが「エンタープライズクラウド・エンジョイクラウドホワイトペーパー」を共同リリース

過去1年間、中国のインターネット市場は大きな変化を遂げ、To Bが新たなトレンドとなりました。産業用...

成宇:2012年ウェブマスター年次会議記録業界版

著者は、2012 年第 7 回中国インターネット ウェブマスター年次会議に協力メディア ゲストとして...

SEO の恥ずかしい状況が解決されるのを待っているというジョーク

なぜSEO業者がどこかの場所で何かを投稿すると、その場所の担当者の目には広告投稿と映ってしまうのでし...

HostHatch - すべての VPS が 20% オフ + 「言葉では言い表せない」メモリ時間 / 無料 cpanel ライセンス

hosthatch からの最新ニュース: [1] メモリが「言葉では言い表せないほど」倍増 + 20...

ワークロードに合わせてクラウド管理をカスタマイズ

これまで以上に、リソースをクラウドに移行する組織は特定の機能を求めています。クラウド コンピューティ...

企業ウェブサイトのトラフィックを増やすためのキーワードマイニング

企業ウェブサイトの責任者から、ウェブサイトのトラフィックが低すぎるという不満をよく聞きます。固定 I...

Appleが公式に推奨するモバイルアプリの秘密

中小規模のアプリケーション開発チームにとって、テクノロジーはもはやボトルネックではありません。最も難...

企業ウェブサイトの SEO 最適化に関するヒント

Excellence SEO Blue Sky が A5 の友人たちに記事を届けられることをとても嬉...

キーワード最適化パスをレイアウトして、合理的かつ完全な最適化状況を確立します。

キーワード最適化は、常にウェブサイト最適化の焦点でした。ウェブサイトの設立から立ち上げまで、キーワー...

ウェブサイトのユーザーロイヤルティの向上は「エンティティ」ケアから始まります

サイトの忠誠度をいかに高めるかは、数え切れないほどのウェブマスターにとって悩みの種ですが、つい先週、...

Shuren Cloud の Wang Pu: 3 つの主要な技術トレンドが PaaS の新たな変数を定義する

11月16日、中国オープンソースクラウドアライアンスWG6コンテナワーキンググループとShuren ...

企業のデータ分析をクラウドに移行するのは簡単ではない

クラウド内の新しいプラットフォームでデータ ウェアハウスとデータ マートを最新化することを検討してい...