たしかに、Splunkにデータを取り込むためには多くの時間とコストとリソースが必要になることがあります。さらに、データを最適な形式に変換するためには労力がかかります。Splunkの最新のデータ処理イノベーションは、こうした悩みをすっきり解消するものです。
Splunkはこのたび、Splunk Edge Processorの一般提供を開始しました。Splunk Cloud Platformで利用できるこのサービスを使用すれば、データソースの近くで処理を行うことによってデータ変換の効率を向上するとともに、Data in motion(移動中のデータ)の可視性を高めることができます。Edge Processorでは、サポートされる転送先にデータを送信する前に、フィルタリング、マスキング、その他の変換を行うことができます。Edge ProcessorはIngest Actionsとともに、Splunkにデータを取り込む前のデータ変換機能を提供します。Splunk Cloudをお使いのすべてのお客様には、Edge Processorで現在提供されているすべての機能を無料でご利用いただけます。
Edge Processorのデータ変換機能を支えているのが、Splunkの次世代型データサーチ/前処理用言語、SPL2です。柔軟性に優れたSPL2を使用すれば、データを送信してインデックスする前に最適な形式に変換できます。
Edge Processorの独自性はそのアーキテクチャ、主にクラウドベースのコントロールプレーンにあります。Edge Processorノードは、お客様のサーバーとクラウドインフラのどちらでも1つのコマンドで簡単にインストールして設定し、Splunk Cloud Platformからすべて管理できます。これらのノードは中間フォワーダーに位置づけられ、エッジのソースからデータを受信します。お客様は、すべてのEdge Processorを一元的に管理し、Edge Processorネットワークで送信側、受信側双方向のデータを1カ所で可視化できます。さらに、任意のノードにインスタンスを追加するだけでスケールアウトして、処理能力を向上したり、より大量のデータに対応したりできます。
詳細なメトリクスを通じて、各Edge Processorを経由するデータがパイプラインでどのように処理されているかを可視化し、予期しないデータの急増/急減を確実に追跡できます。
まず、中心となるクラウドコントロールプレーンで「パイプライン」を定義します。パイプラインとは、必要なフィルタリング、マスキング、ルーティングロジックを指示するデータ処理ロジックを指します。定義したパイプラインは、ネットワーク内の特定のEdge Processorに適用することも、すべてのEdge Processorに適用することもできます。Edge Processorパイプラインの作成は、SPL2を使って行います。SPL2によるパイプライン編集は、パイプラインへの変更適用前に、その結果処理されたデータがどのように変わるかプレビューすることができる点において画期的なものとなっています。
データプレーンは完全にお客様の管理下にあります。データソースの送信先として、ホストにインストールしたEdge Processorノードを指定すると、そのデータはお客様が送信するように指示した場所にのみ送信されます。今回の発表時点のEdge Processorでは、データの受信元としてSplunkユニバーサルフォワーダーとヘビーフォワーダー、送信先としてSplunk Enterprise、Splunk Cloud Platform、Amazon S3がサポートされます1。
パイプラインエディターでは、ガイドに沿ってパイプラインを作成し、サンプルデータを使ってその効果をプレビューできます。
Edge ProcessorでSPL2を使用すれば、データを簡単かつ柔軟に変換できます。Edge Processorのユースケースで最も多いと考えられるものの1つは、Windowsイベントログのような大量に生成されるデータソースをフィルタリングして、イベント内の特定のイベントまたは内容だけを取り出す使い方です。わかりやすい例を挙げてみると、特定のイベントコードと一致するWindowsイベントだけを取り出し、Windowsイベントの末尾にある長いメッセージフィールドをマスキングして、フィルタリング前のデータのコピーをAWS S3バケットに送信するというものです。この例に沿ったパイプラインの定義は次のようになります。定義では、パイプラインを適用するデータ、そのデータの処理方法、処理したデータの転送先を指定します。
パイプラインの定義(SPL2) |
$source |
$destination |
|
特定のイベントIDを持つWindowsシステムイベントを取り出して、Splunk Cloudインデックス「Security」に転送 |
$pipeline = | from $source // Extract event code field | rex field=_raw /EventCode=(?P\d+)/ // retain all events with windows event code = 9 | where event_code = 9 | into $destination; |
sourcetype = winEventLog: system |
Splunkインデックス:
|
Windowsシステムイベントをマスキングして末尾のメッセージフィールドの内容を削除し、データをSplunk Cloudインデックス「Main」に転送 |
$pipeline = | from $source | eval _raw=replace(_raw, /(Message=.*[\r\n?|\n])((?:.|\r\n?|\n) *)/, "\\...") | into $destination; |
sourcetype = winEventLog: system |
Splunkインデックス: |
すべてのWindowsイベントのフィルタリング前のコピーをAWS S3バケット「Windows」に転送 |
$pipeline = | from $source | into $destination; |
Sourcetype = winEventLog* |
S3バケット: |
Edge Processorを使用すれば、Data in motion(移動中のデータ)の可視性を高め、データの量にかかわらず変換の生産性、効率、管理性を向上できます。さらに、必要なデータだけを必要な場所で処理するためのユースケースに沿ってデータの編成と優先順位付けをいわば「強制的に行う」ことにより、Edge Processorを既存のSplunkのコスト管理と価値向上に役立てることもできます。
米国またはダブリンリージョンでSplunk Cloud Platformをお使いの場合は、Edge Processorをすぐにでもご利用いただけます。Splunkの営業担当者にお問い合わせいただくか、EdgeProcessor@splunk.comまでメールでご連絡ください。メールには、社名、Splunk Cloudスタック名、Splunk Cloudリージョンをご記入ください。その他のリージョンでSplunk Cloud Platformをお使いの場合も、Edge Processorが利用可能になったときにご利用を開始するには、同様の方法でご連絡ください。
追加のソース、追加の送信先、新機能のサポートに関するリリース計画など、Edge Processorについて詳しくは、リリースノートとドキュメントをご覧ください。
このブログはこちらの英語ブログの翻訳、岡 大によるレビューです。
[1] サポートされるソースや送信先の追加を含む新機能の最新情報については、リリースノートを参照してください。
Splunkプラットフォームは、データを行動へとつなげる際に立ちはだかる障壁を取り除いて、オブザーバビリティチーム、IT運用チーム、セキュリティチームの能力を引き出し、組織のセキュリティ、レジリエンス(回復力)、イノベーションを強化します。
Splunkは、2003年に設立され、世界の21の地域で事業を展開し、7,500人以上の従業員が働くグローバル企業です。取得した特許数は1,020を超え、あらゆる環境間でデータを共有できるオープンで拡張性の高いプラットフォームを提供しています。Splunkプラットフォームを使用すれば、組織内のすべてのサービス間通信やビジネスプロセスをエンドツーエンドで可視化し、コンテキストに基づいて状況を把握できます。Splunkなら、強力なデータ基盤の構築が可能です。