こんにちは。torippy1024です。Splunkについて勉強中です。
今日は、Splunk Platformのオンプレ版であるSplunk Enterpriseについて、
基盤観点で、構成要素や各要素の役割について説明します。(つまり、私の勉強メモです。。)
参照先資料
本記事は、Splunk Docに記載されていることをまとめたものです。
より詳しい情報が欲しい時はSplunk Docを参照してください。
Splunk Docs
https://docs.splunk.com/Documentation
Splunk Conponent
https://docs.splunk.com/Splexicon:Component
Components that help to manage your deployment
https://docs.splunk.com/Documentation/Splunk/9.1.3/Deploy/Manageyourdeployment
Splunk Validated Architectures(日本語版)
https://www.splunk.com/pdfs/ja_jp/technical-briefs/splunk-validated-architectures.pdf
Splunk Enterpriseについて
Splunk Enterpriseは、Splunk Platformのオンプレ版製品です。
クラウド(PaaS?SaaS?)版としてSplunk Cloudという製品もあります。
Splunk Cloudを使う場合、ユーザー側にとって必要な情報はSplunkの利用方法であり、基盤構成などの情報はあまり重要ではないかもしれません。
本記事では、基盤構成などについて書いていきます。
Splunk Enterpriseの構成要素
Splunk Enterpriseの主な構成要素は以下となります。
業務コンポーネント(Splunkの機能を利用するために必要なコンポーネント)
- Search Head(SH)
- Indexer
- Forwarder(Universal Forwarder/Heavy Forwarder)
管理コンポーネント(Splunkを管理するために必要なコンポーネント)
- Search Head Cluster Deployer(SHC-D)
- Indexer Cluster Manager Node(Cluster Manager/CM)
- Deployment Server(DS)
- Monitoring Console(MC)
- License Master(LM)
※上図にはCluster Manager(CM)は含まれていません
以下資料 P9より引用
https://www.splunk.com/en_us/pdfs/tech-brief/splunk-validated-architectures.pdf
最も基本的なコンポーネントがSearch Head, Indexer, Forwarderの3つです。
それ以外のコンポーネントはManagement用のコンポーネントであり、デプロイ管理やクラスター管理、ライセンス管理や監視などの役割を持っています。
Search Head
ユーザーにUIを提供します。UIから、ユーザーはサーチを実行できます。
サーチ処理をスケジュール化したり、サーチ処理の結果を参照してアラートを設定することもできます。
Indexer
Forwarderから取得したデータを処理し、インデックスと呼ばれるバケツに保管します。
またSearch Headからのサーチ処理司令を受け取り、結果を変換する機能を持ちます。
Forwarders
いわゆるエージェントです。サーバーやネットワーク機器にこのエージェントをインストールし、ログをIndexerに転送させることで、splunkはデータを収集します。
軽量だが最低限の機能しか備えていないUniversal Forwarderと、重量で追加ライセンスも必要だがデータの加工などの追加機能があるHeavy Forwarderの二種類があります。
Search Head Cluster Deployer
Search Headをクラスター環境でデプロイおよび利用する場合に必要なコンポーネントです。
Search HeadへSplunk Appや設定を配信する役割を持ちます。
Search Head Clusterを構築するためには、3台以上のSearch Headが必要です。
Cluster Manager(Indexer Cluster Manager Node)
Indexerをクラスター環境でデプロイおよび利用する場合に必要なコンポーネントです。
Indexerをクラスタ化した場合、インデックスをどのサーバー上に作成させるか、また障害発生時の処理などを行います。
Indexer Clusterを構築するためには、2台以上のIndexerが必要です。
以前はManagerではなくMasterと呼ばれていた時期もあるようです。名前が複雑なコンポーネントです。
Deployment Server
多数あるForwarderの設定管理や、Splunk Appの配信をするコンポーネントです。
データソースであるForwarderは、多種多様で複数の機器にインストールされているため、これらに対して一つ一つ設定変更作業を行うのは手間がかかります。
Deployment Serverを利用することで、それらForwarderに対する一括の設定変更、管理をすることができます。
Monitoring Console
Splunkのサーチやインデックス作成処理などの利用状況の監視やアラート、ヘルスチェックを行うコンポーネントです。ユーザーはSearch HeadをUIとしてMonitoring Consoleを利用します。
License Master
Splunkのライセンス管理を行うコンポーネントです。Splunkのライセンスはデータ量によって課金が発生するため、そのデータ量を計測し、ライセンスが問題ないかをこのコンポーネントが管理しています。
あまり処理負荷が高い機能を持たないため、他コンポーネント、例えばMonitoring Consoleなどと同一サーバー上で動作させることを推奨します。