Sumo Logic Collectorの設定移行方法

 2022.11.28  株式会社テリロジー 技術統括部

こんにちは。技術統括部のH.T.です。


今回はCollectorサーバをリプレイスする際のSourceデータの設定引継ぎに関しての検証を行いましたので紹介いたします。今回の手順ではリプレイス時に一つずつ手作業でSourceの設定を行う必要がなく、一括ですべての設定を移すことができます。大規模なデプロイを行う際Sourceの管理が非常に楽になります。リプレイス作業は頻繁に行う作業ではありませんが、この手順に沿って行うと作業時間がかなり短縮されます。

 

今回検証した環境は以下になります。
仮想サーバ
Linux CentOS Stream9

リプレイス前のサーバ:svrA
リプレイス後のサーバ:srvB

前提

・srvBにInstalled Collectorがインストールされていること。

Collectorのインストールに関しましては以下の記事をご参照ください。

Install a Collector on Linux

手順

大まかな流れは以下になります。
・srvAの設定をJSON形式で取得する(Web GUI)
・srvAの設定をsrvBに反映させる (srvB CLI)

まずSumo Webアプリケーションで、srvAのCollectorに対して設定済みSourceから、そのまま使えるJSONファイルを取得します。

  1. 1Sumo Webアプリケーション画面より、Manage Data -> Collection -> Collection を選択します。

  2. srvAのCollectorまたはSourceの右側にある情報アイコンをクリックします。
    この時、Collectorの情報アイコンではSourceのすべての情報を、Sourceの情報アイコンではそのSourceのみの情報をJSON形式で表示することができます。image
  3. 表示されたJSONの内容をコピーして、新規のテキストファイルに貼り付けます。必要に応じて内容修正を行い、ファイル名には [.json]という拡張子をつけて保存してください。例)source.json

image2

次にローカルファイル設定管理を使用し、srvAの設定をsrvBに反映させます。

  1. srvBのCLIへ移動し、取得したJSONファイルをsrvBのSumoCollectorがアクセス可能な場所に保存します。ここではsourcesフォルダを作成し、その配下にJSONファイルを保存しています。
    [root@localhost SumoCollector]# pwd
    /opt/SumoCollector
    [root@localhost SumoCollector]# ls sources/
    sources.json sources_hawkey.json sources_secure.json


  2. Collectorconfig/user.propertiesファイルに1.で作成した JSON ファイルのパス指定します。
    設定ファイルまたはフォルダの場所を指定するには、 syncSources パラメータを使用します。利用できるすべてのパラメータの詳細については user.properties を参照してください。
    1. Collectorの Source を設定する 1 つの JSON ファイルを指定
      syncSources=/path/to/sources.json
      具体例)syncSources=/opt/SumoCollector/soueces/sources.json
    2. Collector の Source を設定する複数の JSONファイルが格納されたフォルダを指定
      syncSources=/path/to/sources-folder
      例)syncSources=/opt/SumoCollector/soueces

      ※Windowsでの移行の場合はエスケープされたバックラッシュに注意してください。
      syncSources=C:\\path\\to\\sources-folder\\
  1. Sumo Webアプリケーション画面に移動します。
    Manage Data -> Collection -> Collection を選択します。
    srvBのCollecterEdit画面を開きます。Advancedをクリックし、[Collector Management][Local Configuration File]を選択し、保存します。image4

  2. srvBのCLIでCollectionに移動し、コレクタの再起動を実施します。
    コレクタをリスタートして初めてuser.propertiesにて設定したJSONファイルが適用されます。
    スクリプトを使用して Collector を開始または停止する


    [root@localhost SumoCollector]# ./collector restart
    Waiting for SumoLogic Collector...
    running: PID:63171

Sumo Webアプリケーション画面に移動し、Sourceが正しく設定されていることを確認してください。確認できましたら再度サーバBのCollectorEdit画面を開き、Advancedをクリック、[Collector Management][Cloud Based Management]を選択し保存します。
引継ぎ設定は以上になります。

 

注意事項

検証を行っている際にいくつか注意事項がありました。

・ローカルファイル管理設定を利用してSourceの管理を行う時に、指定したJSONファイル、もしくはフォルダ内に存在しないSourceはuser.properties適用時に削除されてしまいます。GUIでは削除されますがサーバ内に保存したJSONファイルは残っていますので正しくパスを設定した後に再度user.propertiesを適用してください。

例)GUI上のCollector内には[messages][gmail][secure]Sourceがあるが、user.propertiesで指定したファイルもしくはフォルダに[messages][gmail]Sourceの設定しかないときに、user.propertiesを適用すると[secure]のSourceは削除されてしまいます。

Local Configuration Fileを選択している場合、クラウド上でのSourceの追加・編集・削除ができず、JSONファイルを編集することでのみ設定を反映することが可能となります。
手順の最後に必ずCloud Based Managementにし、クラウド上で操作できるよう設定の変更を行ってください。

 

参考ページ(SumoLogicサポートページ)

追記・修正
2023年4月19日…各種リンク先の修正
2023年5月11日…手順 ローカルファイル設定管理にWindowsでの注意点を追記


RECENT POST「Sumo Logic」の最新記事


Sumo Logic

Sumologicで目にするOpen Telemetry Collectorとは(前編)

Sumo Logic

CSE Automation で Slack 連携してみた

Sumo Logic

Sumo Logic ダッシュボードやフォルダ共有について

Sumo Logic

Sumo Logicに関するサポート内容のご紹介

Sumo Logic Collecterの設定移行の方法