こんにちは。技術統括部のH.T.です。
今回はCollectorサーバをリプレイスする際のSourceデータの設定引継ぎに関しての検証を行いましたので紹介いたします。今回の手順ではリプレイス時に一つずつ手作業でSourceの設定を行う必要がなく、一括ですべての設定を移すことができます。大規模なデプロイを行う際Sourceの管理が非常に楽になります。リプレイス作業は頻繁に行う作業ではありませんが、この手順に沿って行うと作業時間がかなり短縮されます。
今回検証した環境は以下になります。
仮想サーバ
Linux CentOS Stream9
リプレイス前のサーバ:svrA
リプレイス後のサーバ:srvB
前提
・srvBにInstalled Collectorがインストールされていること。
Collectorのインストールに関しましては以下の記事をご参照ください。
手順
大まかな流れは以下になります。
・srvAの設定をJSON形式で取得する(Web GUI)
・srvAの設定をsrvBに反映させる (srvB CLI)
まずSumo Webアプリケーションで、srvAのCollectorに対して設定済みSourceから、そのまま使えるJSONファイルを取得します。
- 1Sumo Webアプリケーション画面より、Manage Data -> Collection -> Collection を選択します。
- srvAのCollectorまたはSourceの右側にある情報アイコンをクリックします。
この時、Collectorの情報アイコンではSourceのすべての情報を、Sourceの情報アイコンではそのSourceのみの情報をJSON形式で表示することができます。 - 表示されたJSONの内容をコピーして、新規のテキストファイルに貼り付けます。必要に応じて内容修正を行い、ファイル名には [.json]という拡張子をつけて保存してください。例)source.json
次にローカルファイル設定管理を使用し、srvAの設定をsrvBに反映させます。
- 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 - Collectorのconfig/user.propertiesファイルに1.で作成した JSON ファイルのパス指定します。
設定ファイルまたはフォルダの場所を指定するには、 syncSources パラメータを使用します。利用できるすべてのパラメータの詳細については user.properties を参照してください。- Collectorの Source を設定する 1 つの JSON ファイルを指定
syncSources=/path/to/sources.json
具体例)syncSources=/opt/SumoCollector/soueces/sources.json - Collector の Source を設定する複数の JSONファイルが格納されたフォルダを指定
syncSources=/path/to/sources-folder
例)syncSources=/opt/SumoCollector/soueces
※Windowsでの移行の場合はエスケープされたバックラッシュに注意してください。
syncSources=C:\\path\\to\\sources-folder\\
- Collectorの Source を設定する 1 つの JSON ファイルを指定
- Sumo Webアプリケーション画面に移動します。
Manage Data -> Collection -> Collection を選択します。
srvBのCollecterのEdit画面を開きます。Advancedをクリックし、[Collector Management]で[Local Configuration File]を選択し、保存します。 - srvBのCLIでCollectionに移動し、コレクタの再起動を実施します。
コレクタをリスタートして初めてuser.propertiesにて設定したJSONファイルが適用されます。
スクリプトを使用して Collector を開始または停止する[root@localhost SumoCollector]# ./collector restart
Waiting for SumoLogic Collector...
running: PID:63171
Sumo Webアプリケーション画面に移動し、Sourceが正しく設定されていることを確認してください。確認できましたら再度サーバBのCollectorのEdit画面を開き、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サポートページ)
- Source JSON 設定の表示またはダウンロード
- Installed Collector Source の JSON パラメータ
- 既存 Collector および Source のローカル設定ファイル管理
- 新規CollectorおよびSourceのローカル設定ファイル管理
- ローカル設定ファイル管理
追記・修正
2023年4月19日…各種リンク先の修正
2023年5月11日…手順 ローカルファイル設定管理にWindowsでの注意点を追記
- カテゴリ:
- Sumo Logic
- 技術情報
- 技術コラム