基本的な loki-config.yaml ファイルの作成
このステップでは、Loki のための最小限の設定ファイルを作成します。このファイル loki-config.yaml は、Loki がどのように動作するか、データをどこに保存するか、どのスキーマを使用するかを指示します。この実験(Lab)では、Loki がストレージにローカルファイルシステムを使用するように設定します。
nano テキストエディタを使用してファイルを作成します。loki-config.yaml という名前の新しいファイルを開くために、以下のコマンドを実行します。
nano loki-config.yaml
次に、以下の YAML コンテンツを nano エディタにコピー&ペーストします。
auth_enabled: false
server:
http_listen_port: 3100
common:
path_prefix: /tmp/loki
storage:
filesystem:
chunks_directory: /tmp/loki/chunks
rules_directory: /tmp/loki/rules
ring:
kvstore:
store: inmemory
schema_config:
configs:
- from: 2020-10-24
store: boltdb-shipper
object_store: filesystem
schema: v11
index:
prefix: index_
period: 24h
storage_config:
boltdb_shipper:
active_index_directory: /tmp/loki/index
cache_location: /tmp/loki/cache
filesystem:
directory: /tmp/loki/chunks
ruler:
alertmanager_url: http://localhost:9093
limits_config:
allow_structured_metadata: false
この設定により、コンテナ内の /tmp/loki の下に Loki が必要とするすべてのものが格納され、権限の問題を回避し、セットアップを理解しやすく保ちます。認証は無効化され、シングルノードでの使用のためにインメモリのリングが有効になり、ブロックとインデックスはローカルファイルシステムに保存されます。
ファイル内の各セクションの機能は以下の通りです。
auth_enabled: false: 認証をオフにし、追加の認証情報なしで Loki と通信できるようにします。これによりローカルテストが簡単になります。本番環境では認証を有効にする必要があります。
server.http_listen_port: 3100: Loki がポート 3100 で HTTP リクエストをリッスンするように指示します。localhost:3100 に curl すると、このポートにアクセスすることになります。
common.path_prefix: コンテナ内で Loki が一時データを保存する基本フォルダを設定します。このファイル内の他のすべてのパスは /tmp/loki から構築されるため、すべてが一箇所にまとまります。
common.storage.filesystem: ログデータのチャンクとルールファイルを保存するための 2 つのフォルダを Loki に指示します。コンテナに特別なマウントを行わないため、/tmp/loki を使用することで権限の問題を回避できます。
common.ring.kvstore.store: inmemory: メンバーシップ情報をメモリ内に保持します。シングルノードの実験(Lab)ではこれが最適です。実際のクラスタでは、Consul や etcd のような共有ストアを使用します。
schema_config: Loki がログデータのインデックスをどのように配置するかを定義します。開始日を設定し、boltdb-shipper ストアを選択し、インデックスをファイルシステム上に保持します。prefix と period は、ファイルの命名方法と、新しいインデックスファイルが作成される頻度(24 時間ごと)を制御します。
storage_config: boltdb-shipper インデックス(active_index_directory および cache_location)と生チャンクストレージの正確なフォルダを提供します。すべてが /tmp/loki の下に配置され、整理されています。
ruler.alertmanager_url: Loki のルーラーコンポーネントが、http://localhost:9093 の Alertmanager にアラートを送信できるように準備します。Alertmanager が実行されていなくても何も壊れません。Loki はアラートを送信しようとしたときに警告をログに出力するだけです。
limits_config.allow_structured_metadata: false: 高度な機能を無効にし、Loki が初心者が期待する、より単純なプレーンテキストのログメタデータに留まるようにします。
Ctrl+X を押して終了し、Y を押して保存を確認し、最後に Enter を押してファイル名 loki-config.yaml で保存します。