ここでは、Splunk App/Add-onとその概要について説明します。
1. Splunk App/Add-onとは
SplunkにおけるApp/Add-on(両者をまとめてAppとだけ呼ぶこともあります)とは、厳密に説明すると、ナレッジオブジェクト(Splunk上で利用可能なダッシュボード、スケジュール実行されたSPLを含むサーチ、データ取り込みの定義や設定ファイル)の集合です。
もう少し実体・実装に踏み込んだ表現をすると、Splunkでは、データを取り込み、サーチし、可視化するといったそれぞれの機能をカスタマイズすることができます。 これらカスタマイズされた定義や設定は、Splunkの中で全て同一フォルダや設定ファイルとして管理されておらず、Appと呼ばれるディレクトリに区切られ、その中でApp毎に分離されて定義や設定ファイルが保管されています。 Splunkは、プロセス起動時や再読み込み時にこれらApp毎に存在する設定ファイルを読み込み、マージすることによって各Appに存在する設定を反映させています。
別の表現をすると、Splunk Appは、Splunk内部で分類ごとに設定ファイルを分割して保存するためのディレクトリととらえてもよいでしょう。 (本章では詳細は省きますが、このAppに含まれるナレッジオブジェクトには、ダッシュボード定義であるxmlファイルや、inputs.conf/props.conf/outputs.confなどの各種設定ファイルが含まれています)
flowchart LR
subgraph splunk["Splunk"]
direction LR
subgraph app1["App:Search & Reporting"]
direction TB
a1x["xml<br/>(ダッシュボード)"]
a1c["conf<br/>(コンフィグ)"]
end
subgraph app2["App:Enterprise Security"]
direction TB
a2x["xml<br/>(ダッシュボード)"]
a2c["conf<br/>(コンフィグ)"]
end
app1 ~~~ app2
end
以前説明したSplunk Enterprise Securityや、Splunk IT Service Intelligenceは、このように特別な個別機能が含まれたダッシュボードや設定を含んだSplunkが開発した有償のAppであり、これらはPremium Appとして区別しています。
デフォルトのApp(Search & Reporting)
Splunkには、デフォルトで「Search & Reporting」というAppが付属しています。 この「Search & Reporting」Appは、サーチの実行、ダッシュボードの作成や管理、レポートやアラートの作成といったデフォルトのSplunk機能を利用するためのダッシュボードや設定がまとめられています。 おそらくSplunkを初めて操作する人は、このAppを使用してサーチを実行したり、はじめてのダッシュボードを作成することになるでしょう。
2. App/Add-onの違い
Splunk Appには、AppとAdd-onという区分けがあります。 大まかな区別は以下の通りです。
- App
ダッシュボードやサーチ、アラートの定義など、Splunkにデータを取り込んだ後の可視化やデータ分析に関する機能を含むものを指します。
- Add-on
データ入力設定やソースタイプ、フィールド抽出定義など、Splunkにデータを取り込むための機能を含むものを指します。
ただ実際は、Appの中にデータ取り込み定義が含まれる場合もあります。 Appの中で、特にデータ取り込み定義に特化したものをAdd-onと区別して呼ぶと理解しておいてもよいでしょう。
3. splunkbaseとは
Splunk/サードパーティベンダー/その他個人開発者が開発したApp/Add-onを登録し、公開できるようにしたプラットフォームがsplunkbaseです。 多くは無償で利用可能ですが、Appによっては有償のものもあり注意が必要です。 (Splunkによる有償Appと、サードパーティベンダーによる有償Appのどちらのパターンもあるようです)
Appのサポート方針は開発元によって異なるため、利用の際にはそのApp/Add-onの開発元とサポート方針について確認したほうがよいでしょう。
splunkbase
4. カスタムAppの開発
より複雑な要件がある場合は、自分でカスタマイズされたAppを開発することも可能です。 カスタムApp開発に興味がある人はSplunk Devを見てみてください。
splunk dev
5. まとめ
- Splunk App/Add-onは、Splunk上で利用可能な設定ファイルをまとめたもの
- Appは主に可視化に関する機能を担当し、Add-onは主にデータ取り込みに関する機能を担当する(ただしAppにデータ取り込み機能が含まれている場合もある)
- splunkbaseはApp/Add-onを公開するプラットフォーム。基本的には無償だが有償のものもあり注意が必要
- 自作のカスタムAppを開発することも可能