・Digdag+Embulk導入により、複数SaaSログの自動収集、一元管理を実現した。
・ログが一元管理されることで、横断検索が可能となった。
・ログをテナントごとに分離・集約保管するマルチテナントに対応した。
・ECSとコンテナ利用により新しいSaaSや新しいログの取り込みにも柔軟に対応可能となった。

 

複数SaaSのログ集約基盤の構築

・数万台規模の業務用端末のセキュリティ対策において、複数のSaaSを組み合わせて利用する際に発生する様々なログを一元的に集約し、データ分析機能に連携するETL基盤の構築
・ETL基盤をAWS上のコンテナとして実装することで、集約するログ量が増大してもスケール可能な仕組みを実現

グループ会社全体で統一的なポリシーのもと、セキュリティレベルの標準化と、セキュリティアラートの一元管理を行うにあたり、複数のSaaSを組み合わせたシステムで構築することとなった。

【弊社の取り組み】

各SaaSのログ分析基盤を構築するにあたり、SaaSごとのログを自動収集、集約保管する機能の設計構築および保守を担当。

 

導入のポイント

①ログ収集機能にDigdag+Embulkを採用

ログの収集にはOSSのEmbulkを採用。10分に1回、1時間に1回などの頻度で実行し、Amazon S3やSaaSごとのAPIからログを取得後、S3に転送している。
Embulkの定期実行にはEmbulkと親和性のあるOSSのDigdagを採用。ジョブ制御、エラー制御、リトライなどの機能をはDigdag、Embulkの標準機能を活用することで開発期間の短縮と運用時の複雑さを低減。

②転送ログがない場合に空ファイルの生成を抑制

Embulkはデータ転送時に転送元にログがなくても出力先に空ファイルを生成するため、転送前にログの存在をチェックするスクリプトを実装。Digdagによる実行順序制御で、存在チェック後にログがある場合のみEmbulkを実行する方式とすることで無駄な空ファイルが大量に生成されることを予防した。

③拡張性

本基盤はAWSのElastic Container Service上に構築し、Embulkの実行ごとにコンテナを起動し、データ転送終了後にコンテナを破棄する仕組みとすることで、様々なSaaSやデータ取得元の形式に柔軟に対応可能であり、データ量が増加した場合にもEmbulkコンテナへの割り当てリソースを個々に調整可能な設計とした。

導入の効果

・Digdag+Embulk導入により、複数SaaSログの自動収集、一元管理を実現した。
・ログが一元管理されることで、横断検索が可能となった。
・ログをテナントごとに分離・集約保管するマルチテナントに対応した。
・ECSとコンテナ利用により新しいSaaSや新しいログの取り込みにも柔軟に対応可能となった。