geerlingguy.filebeat

Ansibleロール: ELKスタック用Filebeat

CI

このAnsibleロールは、RedHat/CentOSまたはDebian/UbuntuにFilebeatをインストールします。

必要条件

特になし。

ロール変数

以下に利用可能な変数とデフォルト値を示します(defaults/main.ymlを参照してください):

filebeat_version: 7.x

インストールするFilebeatのメジャーバージョンを制御します。

filebeat_package: filebeat
filebeat_package_state: present

インストールする特定のパッケージです。パッケージ名を変更することで、プラットフォームとパッケージマネージャに合ったバージョンを指定できます。パッケージの状態(例: present, absent, latest)も制御できます。

filebeat_create_config: true

Filebeatの設定ファイルを作成し、SSLキーと証明書のコピーを処理するかどうか。この設定をfalseにすると、自分で設定ファイルを作成できます。

filebeat_inputs:
  - type: log
    paths:
      - "/var/log/*.log"

Filebeat設定のinputsセクションにリストされる入力です。追加のオプションについては、Filebeat Inputs設定ガイドを参照してください。

filebeat_output_elasticsearch_enabled: false
filebeat_output_elasticsearch_hosts:
  - "localhost:9200"

Elasticsearch出力を有効にするか、出力を送信するホストを指定します。

filebeat_output_elasticsearch_auth:
    username: "admin"
    password: "S3CR3eeet"

# または、バージョン8以上のみ
filebeat_output_elasticsearch_auth:
    api_key: "xa-123a-f3ea012d-aaae1"

Elasticsearch出力の認証を設定します。api_keyとユーザー名/passwordは排他的で、api_keyはバージョン8以降にのみ利用可能です。

filebeat_output_logstash_enabled: true
filebeat_output_logstash_hosts:
  - "localhost:5000"

Logstash出力を有効にするか、出力を送信するホストを指定します。

filebeat_enable_logging: false
filebeat_log_level: warning
filebeat_log_dir: /var/log/filebeat
filebeat_log_filename: filebeat.log

Filebeatのロギング設定です。

filebeat_ssl_certs_dir: /etc/pki/logstash
filebeat_ssl_private_dir: "{{ filebeat_ssl_certs_dir }}"

証明書とキーファイルが保存されるパスです。

filebeat_ssl_ca_file: ""
filebeat_ssl_certificate_file: ""
filebeat_ssl_key_file: ""

SSL証明書とキーファイルのローカルパスです。

filebeat_ssl_copy_file: true

証明書とキーをfilebeat_ssl_dirにコピーするか、既存のものを使うかどうか。

最大のセキュリティのために、有効な証明書とキーファイルを使用し、プレイブック内のfilebeat_ssl_*変数を更新して証明書を使用してください。

自己署名証明書/キーのペアを生成するには、以下のコマンドを使用できます:

$ sudo openssl req -x509 -batch -nodes -days 3650 -newkey rsa:2048 -keyout filebeat.key -out filebeat.crt

自己署名証明書を使用する場合、ファイルビートとログスタッシュは完全な信頼の連鎖(自己署名証明書の認証局を含む)がサーバーに追加されていない限り、正しく動作しないことに注意してください。詳細は: https://github.com/elastic/logstash/issues/4926#issuecomment-203936891

filebeat_ssl_insecure: "false"

自己署名証明書の使用を許可するには、これを"true"に設定します(CAが利用できない場合)。

Filebeatテンプレートのオーバーライド

変数を介してカスタマイズできない場合は、Filebeat設定を生成するために使用されるテンプレートをオーバーライドできます。

filebeat_template: "filebeat.yml.j2"

提供されたテンプレートをコピーして変更するか、プレイブックディレクトリ内のテンプレートファイルを指定して、管理されたテンプレートの代わりになることもできます。

filebeat_template: "{{ playbook_dir }}/templates/filebeat.yml.j2"

依存関係

特になし。

例プレイブック

- hosts: logs

- name: java_packages変数の設定(Debian/Ubuntu)。
  set_fact:
    java_packages:
      - openjdk-8-jdk
  when: ansible_os_family == 'Debian'

  roles:
    - geerlingguy.java
    - geerlingguy.elasticsearch
    - geerlingguy.logstash
    - geerlingguy.filebeat

ライセンス

MIT / BSD

著者情報

このロールは2016年にJeff Geerlingによって作成されました。彼はAnsible for DevOpsの著者です。

プロジェクトについて

Filebeat for Linux.

インストール
ansible-galaxy install geerlingguy.filebeat
ライセンス
mit
ダウンロード
2.6M
所有者
Father, author, developer, maker. Sometimes called "an inflammatory enigma". #stl #drupal #ansible #k8s #raspberrypi #crohns