Fluent Bitを使用したOpenSearchクラスタへのデータの取込み

Fluent Bitを使用したOpenSearchクラスタへのログ・データの取込み。

Fluent Bitは、軽量ロギングおよびメトリックプロセッサとフォワーダです。

前提条件

このトピックで説明するステップに進む前に、次のタスクを完了します。

Fluent Bitのインストールと構成

  1. Fluent Bitをダウンロードし、VMインスタンスにインストールします。
    Linuxベースのインスタンスに最新バージョンをインストールするには、Linuxパッケージを参照してください。その他のオペレーティング・システムについては、サポートされているプラットフォームを参照してください。
  2. VMインスタンスのオペレーティング・システムに適用可能なコマンドを実行して、Fluent Bitエージェントをインストールします。
    たとえば、次のコマンドを実行して、LinuxインスタンスにFluent Bitエージェントをインストールします。
    sudo rpm -i <fluent-bit-rpm file>
  3. Fluent Bit構成ファイルのOUTPUTセクション(/fluent-bit/fluent-bit.conf)を更新して、出力プラグインをOpenSearchクラスタに移動します。
    このセクションの詳細は、構成ファイル- 出力を参照してください。

    次に、構成ファイルのこのセクションのサンプル・コードを示します。該当するテキストをクラスタの詳細に置き換えます。hostのOpenSearchクラスタのOCIDを指定します。「OpenSearchクラスタの詳細の取得」を参照してください。http_Userおよびhttp_Passwdには、OpenSearchクラスタのデータを収集するための十分な権限を持つユーザーを指定します。たとえば、クラスタの作成時に指定したロールベースのアクセス制御にプライマリ・ユーザー・アカウントを使用できます。OpenSearchを使用した検索でのロールベースのアクセス制御を参照してください。

    name - es
    host - <cluster_ID>
    port - 9200
    tls - on
    tls.verify - on
    index - <index_name>
    http_User - <cluster_user>
    http_Passwd - <cluster_password>
    Suppress_Type_Name - On
    Replace_Dots - On
    Retry_Limit - 6
    Buffer_Size - 400MB
  4. Fluent Bit構成ファイルのINPUTセクションを更新して、ログ・データのソースとその収集方法を指定します。
    このセクションの詳細は、構成ファイル- 入力を参照してください。

    たとえば:

    Name  tail
    Tag   file_log
    Path  /etc/fluent-bit/project/file.log
    Buffer_Max_Size  600m
    Multiline  On
    Parser_Firstline  multiline
    Buffer_Chunk_Size  2m
    Skip_Long_Lines  Off
    Skip_Empty_Lines  Off
    Mem_Buf_Limit  700m
    DB  /etc/fluent-bit/db/file.db
    DB.Sync  normal
    Refresh_Interval  30
    Rotate_Wait  20
    Exit_On_Eof  Off
    Ignore_Older  5m
    storage.type  filesystem

Fluent Bitによるデータ収集のテスト

この項では、「Fluent Bitのインストールおよび構成」で指定した構成に基づいて、Fluent Bitを使用したログ・データの取込みをテストするステップについて説明します。VMインスタンスに接続している間に、次のステップを実行します。含まれているサンプル・コマンドは、Linuxベースのオペレーティング・システム用であり、他のオペレーティング・システムでは、そのオペレーティング・システムに適用可能なコマンドを使用します。
  1. 次のコマンドを実行して、JavaおよびPythonをインストールします:
    sudo yum install python3
    sudo yum install java
  2. 次のコマンドを実行して、ログ・データのディレクトリを作成します。
    mkdir /etc/fluent-bit/project
  3. Fluent Bitを起動するには、次のコマンドを実行します。
    sudo fluent-bit -c /etc/fluent-bit/fluent-bit.confb
  4. pythonスクリプト・ファイルgenerate_log.py/etc/fluent-bit/projectに作成し、次のコードをファイルにコピーします。
    Import logging
     
    # Configure logging to write to a file
     
    logging.basicConfig(filename='file.log', level=logging.DEBUG)
     
    # Generate some log messages
     
    logging.debug('This is a debug message.')
     
    logging.info('This is an informational message.')
     
    logging.warning('This is a warning message.')
     
    logging.error('This is an error message.')
     
    logging.critical('This is a critical message.')
     
    # Example of logging additional details using formatting
     
    name = 'John'
     
    age = 30
     
    logging.info('User %s, age %d, logged in.', name, age)
     
    # Example of logging an exception stack trace
     
    try:
     
        result = 10 / 0
     
    except Exception as e:
     
     logging.exception('An error occurred: %s', str(e))
  5. 前のステップで作成したスクリプトを実行するには、次のコマンドを使用します。
    python3 /etc/fluent-bit/project/generate_log.py

    このスクリプトを実行すると、ファイルfile.logが作成され、指定されたロギング・メッセージがファイルに追加されます。

pythonスクリプトの実行後、クラスタのOpenSearchダッシュボードに接続して、Fluent Bit構成ファイルのOUTPUTセクションで指定した索引をチェックすることで、ログ・データがOpenSearchクラスタに収集されたことを確認できます。タスク6: OpenSearchダッシュボードへの接続およびOpenSearchダッシュボードのクイックスタート・ガイドを参照してください。