シッパーの YML 設定を使用すると、データ収集の設定をカスタマイズできます。このトピックでは、これらの YML ファイルで使用可能なパラメーターについて説明します。
前提条件
Alibaba Cloud Elasticsearch クラスターを作成し、[自動インデックス] を有効にします。詳細については、「Alibaba Cloud Elasticsearch クラスターの作成」をご参照ください。
セキュリティ上の理由から、Alibaba Cloud Elasticsearch はデフォルトで [自動インデックス] を無効にしています。Beats ではこの機能が必要なため、シッパーの [出力] が [Elasticsearch] に設定されている場合は、[自動インデックス] を有効にする必要があります。詳細については、「YML パラメーターの設定」をご参照ください。
metricbeat.modules:
- module: system
metricsets: ["diskio","network"]
diskio.include_devices: []
period: 1sFilebeat の設定
filebeat.inputs で入力ソースを定義します。次の例は、基本的な入力設定を示しています:#========================== Filebeat の入力 ================================
filebeat.inputs:
# 各 - は入力です。ほとんどのオプションは入力レベルで設定できるため、
# さまざまな設定に異なる入力を使用できます。
# 以下は、入力固有の設定です。
- type: log
# この入力設定を有効にするには、true に変更します。
enabled: true
# クロールして取得するパス。Globベースのパスです。
paths:
- /opt/test/logs/t1.log
- /opt/test/logs/t2/*
fields:
alilogtype: usercenter_serverlog
#- c:\programdata\elasticsearch\logs\*filebeat.inputs:
- type: log
enabled:true
paths:
- /opt/test/logs/t1.log
- /opt/test/logs/t2/*
fields:
alilogtype: usercenter_serverlog
- 「Filebeat を使用した ECS サービスログの収集」でシッパーの [出力] を指定した場合は、[シッパー YML 設定] で個別に出力を設定しないでください。設定した場合、ECS シッパーのインストールは失敗します。
- 各入力ソースはハイフン (
-) で始まります。複数のソースがある場合は、追加の各ソースの前にハイフン (-) を付けてください。
| パラメーター | 説明 |
type |
入力タイプです。デフォルト値は log です。その他に、stdin、redis、tcp、syslog なども使用できます。 |
paths |
監視対象のログです。/log/nginx.log のようなファイルや、log/* のようなディレクトリを指定できます。指定されたファイルまたはディレクトリは、Docker ディレクトリにマッピングされます。重要 ディレクトリを指定するには、 /* のようなワイルドカードパターンを使用します。ディレクトリ内のファイルタイプが収集タイプと一致していることを確認してください。 |
enabled |
設定が有効かどうかを指定します。
|
fields |
アウトプットに追加するオプションのフィールドを指定します。追加したいフィールドは、このパラメーターの下に 2 つのスペースでインデントしてください。たとえば、このパラメーターを alilogtype: usercenter_serverlog に設定すると、このフィールドが各ログエントリに追加され、ログソースを識別します。Logstash はこのフィールドを使用して、ログを分類、処理できます。 |
詳細については、公式の「Log input documentation」をご参照ください。
Metricbeat の設定
metricbeat.modules で module の設定を構成します:#========================== モジュール設定 ============================
metricbeat.config.modules:
# 設定読み込み用の Glob パターン
path: ${path.config}/modules.d/*.yml
# 設定のリロードを有効にするには true に設定します
reload.enabled: false
metricbeat.modules:
- module: system
metricsets: ["diskio","network"]
enabled: true
hosts: ["http://XX.XX.XX.XX/"]
period: 10s
fields:
dc: west
tags: ["tag"]
# path 配下のファイルの変更をチェックする間隔
#reload.period: 10smetricbeat.modules:
- module: system
metricsets: ["diskio","network"]
enabled: true
hosts: ["http://XX.XX.XX.XX/"]
period: 10s
fields:
dc: west
tags: ["tag"]
| パラメーター | 説明 |
module |
実行するモジュールの名前です。サポートされているモジュールとその説明については、「Modules」をご参照ください。 |
metricsets |
実行するメトリックセットのリストです。メトリックセットの詳細については、「Modules」をご参照ください。 |
enabled |
この設定が有効かどうかを指定します。true は設定が有効であることを示し、false は設定が無効であることを示します。 |
period |
メトリックセットを実行する頻度です。監視対象のシステムにアクセスできない場合、Metricbeat はその収集期間にエラーを返します。 |
hosts |
オプション:情報を取得するホストのリストです。 |
fields |
メトリックセットのイベントとともに送信するオプションのフィールドです。 |
tags |
オプション:各メトリックセットのイベントとともに送信するタグのリストです。 |
詳細については、公式の「Metricbeat documentation」をご参照ください。
Heartbeat の設定
Heartbeat は、リモートサーバーにインストールして、サービスの可用性を定期的にチェックする軽量シッパーです。サービスが実行中かどうかを報告する Metricbeat とは異なり、Heartbeat はサービスに到達可能かどうかをチェックします。
heartbeat.monitors で監視対象のサービスを定義します。# モニター定義を検索するディレクトリを定義します。定義は個別の YAML ファイル形式です。
heartbeat.config.monitors:
# 設定ファイルを検索するためのディレクトリ + glob パターン
path: ${path.config}/monitors.d/*.yml
# 有効にすると、heartbeat は定期的に config.monitors パスで変更を確認します
reload.enabled: false
# 変更を確認する頻度
reload.period: 5s
# モニターをインラインで設定
heartbeat.monitors:
- type: http
name: ecs_monitor
enabled: true
urls: ["http://localhost:9200"]
schedule: '@every 5s'
fields:
dc: west
#- type: httpheartbeat.monitors:
- type: http
name: ecs_monitor
enabled: true
urls: ["http://localhost:9200"]
schedule: '@every 5s'
fields:
dc: west
| パラメーター | 説明 |
type |
モニターのタイプです。有効な値:icmp、tcp、http。 |
name |
モニターの名前です。この値は、「エクスポートされたフィールド」の monitor フィールドにジョブ名として表示されます。type フィールドはジョブタイプとして使用されます。 |
enabled |
この設定が有効かどうかを指定します。true は設定が有効であることを示し、false は設定が無効であることを示します。 |
urls |
オプション:接続するサーバーのリストです。 |
schedule |
タスクのスケジュールです。たとえば、@every 5s は Heartbeat の起動後、5 秒ごとにタスクを実行します。*/5 * * * * * * のような cron 式も、5 秒ごとにタスクを実行します。 |
fields |
アウトプットに追加するオプションのフィールドです。 |
詳細については、公式の「Heartbeat documentation」をご参照ください。
Auditbeat の設定
service auditd status を実行して確認します)。[auditbeat.yml] ファイルで、auditbeat.modules セクションで Auditbeat シッパーを設定します。[auditbeat.yml] ファイルには、モジュールの設定とアウトプットの設定が含まれています。モジュールを有効にするには、そのパラメーターを [auditbeat.yml] ファイルに追加してください。次の例は、auditd モジュールと file_integrity モジュールの設定を示しています:
auditbeat.modules:
- module: auditd
audit_rules: |
-w /etc/passwd -p wa -k identity
-a always,exit -F arch=b32 -S open,create,truncate,ftruncate,openat,open_by_handle_at -F exit=-EPERM -k access
- module: file_integrity
paths:
- /bin
- /usr/bin
- /sbin
- /usr/sbin
- /etc
[auditbeat.yml] の設定の詳細については、公式の「Auditbeat documentation」をご参照ください。各 module の設定方法の詳細については、「Modules」をご参照ください。