Splunkさん主催 Google Cloud のデータ取り込みワークショップに参加してみた!

Splunkさん主催 Google Cloud のデータ取り込みワークショップに参加してみた!

Google Cloudとサードパーティーのログ連携をする上で必要な基礎的理解とSplunkへの取り込み設定を体験するワークショップに参加してきました。
Clock Icon2025.03.21

前回、2024年10月にはAWSとSplunkのデータ連携アーキテクチャの詳細に関する講義とハンズオンを行っていただいていました。
今回は、そのGoogle Cloud版ということで、ハンズオン形式のワークショッププログラムを実施していただきました。

ということで、再び大手町オフィスにあるSplunk社へお邪魔させていただいております。

vscode-paste-1742516778617-x1icwpvqle.jpeg

また、今回もAPACでパートナー向け技術コンテンツ開発を担当されており、SplunkとCloud Infra連携のスペシャリストでクラウドテクニカルストラテジストのTravis Kaneさん(通称T-REX)さんが来日、講演いただきました。

vscode-paste-1742517093805-cmlqvtt6u9q.jpeg

当ワークショップはマクガイバーというアメリカのTVドラマになぞられており、ワークショップ自体もシリーズ化されています。
次回も予定されているようで、開催が楽しみです。

  • 前回: SplunkへのAWSデータ取り込み
  • 今回: SplunkへのGoogle Cloudデータ取り込み
  • 次回: SplunkでのAWSセキュリティのユースケースと活用方法

vscode-paste-1742517408124-b32fctm7zoo.jpeg

前回開催の内容については下記からご覧いただけます。

SplunkさんのAWSデータ連携に関する特別ワークショップに参加した! | DevelopersIO

本ブログについては、イベント開催のダイジェスト版としてお送りさせていただきます。
主に講義内容のハイライトについてご紹介します。
尚メイントピックであるハンズオンの実施内容については後日別のエントリにてお送りしたいと思いますので、こちらも乞うご期待ください。

アジェンダ

講義の流れは以下のようになっています。

  • データ連携に必要な Google Cloud サービスの基礎理解
  • Pull方式での取り込み方法
  • Push方式での取り込み方法
  • 高度なトピック
  • 補足のコンテンツ

データ連携に必要な Google Cloud サービスの基礎理解

以下が、データ連携で知っておくべきサービスになります。
ワークショップでは、一つずつ概要を勉強し、特に Cloud Audit Logs については、ログの種類とログの構造までをきちんと解説いただきました。
(それぞれのサービスの詳細内容については、本家のドキュメントなどで確認いただくのが良いと思いますが、概要の紹介とリンクのご紹介をしていきます)

vscode-paste-1742542591637-o2czdgm7ow.jpeg

vscode-paste-1742542601656-9krvd80xr17.jpeg

Resource Manager が提供するAPI機能によって、Google Cloudリソースの管理を行うことができます。

Resource Manager のドキュメント  |  Resource Manager Documentation  |  Google Cloud

Cloud IAM を使用して、特定のGoogle Cloudリソースへのアクセス権をきめ細かく設定し、それ以外のリソースへのアクセスを防止します(最小権限の原則)。

以下の三種類のロールがありますが、基本ロールは権限が多く含まれているので、推奨されていないようです。

  • 基本ロール
  • 事前定義ロール
  • カスタムロール

これらのロールを使って各種リソースへのアクセス権限を付与し、データ連携を行います。

IAM basic and predefined roles reference  |  IAM Documentation  |  Google Cloud

Cloud Monitoring はGoogle Cloud上のリソースのメトリクスを収集し調査するためのツールです。Splunkのような外部ツールのログソースとしても活用することができます。

Google Cloud Observability のドキュメント  |  Cloud Monitoring

Cloud Logging はGoogle Cloud上のログを収集し調査するためのツールです。同じくSplunkのような外部ツールのログソースとして活用可能です。

Google Cloud Observability のドキュメント  |  Cloud Logging

Pub/Sub はトピックとサブスクリプションからなる非同期かつスケーラブルなメッセージングサービスです。
Cloud LoggingCloud Asset Inventory などをパブリッシャーとし、今回のハンズオンワークショップで毎回登場するログ連携に重要なサービスになります。

vscode-paste-1742543222760-l5chlo6h64a.jpeg

Pub/Sub とは  |  Pub/Sub Documentation  |  Google Cloud

Cloud Audit Logs はGoogle CloudのAPIコールに関する監査証跡を記録するサービスになります。

Cloud Audit Logs の概要  |  Cloud Logging  |  Google Cloud

Google Cloud のセキュリティ上重要なログソースで、後続の Cloud Logging に繋いでいくことでGoogle Cloud上の操作ログを記録することができます。
ここでは Cloud Audit Logs が提供する各種ログタイプについて例を見ながら踏み込んで確認しました。

まず下記の4つのログタイプが存在しています。

  • 管理アクティビティ監査ログ
  • データアクセス監査ログ
  • システムイベント監査ログ
  • ポリシー拒否監査ログ

データ分析にあたって、どのログが重要なのか、何が記録されているのかを知っておくことは重要だと思います。
例を出して説明いただいたので、非常に分かりやすく体系立てて理解することができました。大変有用でありがたい!!

管理アクティビティ監査ログ

API呼び出しのエントリ、リソースの構成やメタデータに変更を加えるアクションをログに記録します。

下記の説明のように、どのサービスへの操作か、APIへの認証が成功したのか、どんなアクションなのか(Kubernetesのリーダー選出に間する設定変更)、何に対しての操作なのかなどが、読み取れます。

vscode-paste-1742544421269-u65vz6hd7ah.jpeg

データアクセス監査ログ

リソースやデータに対する更新系・読み取り系のAPIコールを記録します。
非常に多くのデータを生成するために、全てを有効することは非推奨。ログフィルタを設定して必要なものだけ有効化設定するのが良い。

こちらも下記の説明のように、いつ・どこで・誰が・何を・何に対してのアクションなのかが読み取れます。
先ほどと違うのは、リソースへの変更イベントではなく、ログが書き込まれたという内容のイベントになります。

vscode-paste-1742544519287-2qaosewvqyd.jpeg

システムイベント監査ログ

Google Cloudサービスによって行われたリソース変更を記録します。

こちらのログの違いは、Pub/Subの無効な状態が継続していたサブスクリプションが自動削除されたメッセージになり、Google Cloudサービスによって行われた変更だと分かります。

vscode-paste-1742544548741-nqhttolnzpj.jpeg

ポリシー拒否監査ログ

ポリシーにより拒否されたイベントを記録します。権限のエラーなどセキュリティ特に重要なログとして注目することができます。

こちらのログの違いは、APIの認証が失敗しているものがこちらのイベントとして出力されます。データアクセス監査ログ に出力されているイベントが仮に認証が失敗していた場合は、データアクセス監査ログ ではなく、ポリシー拒否監査ログ に出力される仕組みになっています。

vscode-paste-1742544568963-5t4r7581hs6.jpeg

そして、下記がGoogle Cloudからのデータ取り込みのパターンの全体像を表示したものになります。

vscode-paste-1742549877325-u9g8kmcitx.jpeg

Pull方式での取り込み方法

Splunk側からGoogle Cloudへデータをポーリングしにいって、データを取得します。
ハンズオンでは主に以下の部分での取り込み方式について学びました。

vscode-paste-1742523086789-felmbpgv73g.png

このアーキテクチャを採用する時のユースケースです。

  • 構成が比較的シンプル
  • 注意点、ポーリング間隔があるためリアルタイム性にかける

Push方式での取り込み方法

Google CloudからSplunkのHTTPエンドポイントへデータを送信し、データを取得します。
ハンズオンでは主に以下の部分での取り込み方式について学びました。

vscode-paste-1742523275914-hj8jrf4p1sm.png

このアーキテクチャを採用する時のユースケースです。

  • リアルタイム性の高いデータ連携
  • 抽出/変換/ロードを担当(特に変換作業が必要な場合)
  • 大規模データの処理に向いている

高度なトピック

これ移行は座学の講義となり、発展型や補足情報について学び、理解を深めていく内容となりました。

Googleログイン情報は、Google Cloudの利用だけでなく、Google WorkspaceやGoogle認証が提供するOAuthやSAMLを経由したログインイベントを共有することができます。

vscode-paste-1742523589146-es5x9d2nk68.jpeg

Google認証詳細情報
Google ID 管理の概要  |  Cloud Architecture Center  |  Google Cloud

Google Workspace Enterprise の共有オプションを設定してイベント情報をGoogle Cloudに送信することができます。
Google Workspaceを利用している環境であれば、統合的に管理でき良さそうですね。

vscode-paste-1742523651984-egvzkx1y9s.jpeg

Workspaceでのデータ共有
Share data with Google Cloud services - Google Workspace Admin Help

Terraformを使って、Push方式で使った Dataflow のデータ送信アーキテクチャをIaCでデプロイ・管理することができます。
テンプレートはSplunkで開発されています。

vscode-paste-1742521999890-lhunhoehmlk.jpeg

Terraform テンプレート
GitHub - GoogleCloudPlatform/terraform-splunk-log-export: Deploy Google Cloud log export to Splunk using Terraform

デモビデオ
Simplify data operations and access to insights with the Splunk Dataflow Template - YouTube

また、Splunk Data Managerを使って同じことが可能ですので、どちらかを使うことでより簡単にログ送信のためのリソース構築ができそうです。

vscode-paste-1742522006946-37g49wpa612.jpeg

GCP prerequisites for Data Manager - Splunk Documentation

補足のコンテンツ

Google Cloudの他のログソースのデータ連携に関する補足情報について、有用なブログリンクのご紹介をいただきました。

Cloud Asset Inventory のデータ取得のアーキテクチャ紹介

Taking Inventory of Your Google Cloud | Splunk

Cloud Audit Logs の概要に関する補足情報

Getting to Know Google Cloud Audit Logs | Splunk

BigQuery のデータを Splunk DB Connect を使って取り込む方法

Configuring Splunk DB Connect for use with Google BigQuery - Splunk Lantern

AWSとGoogle Cloud間でWorkload Identity連携するためのガイド

Deploying Workload Identity Federation between AWS and GCP - Splunk Lantern

最後に、オフライン限定でのミニゲーム

ワークショップの最後には、参加者のためのミニゲームを開いていただきました。

vscode-paste-1742550834894-imr2qr5ya.jpeg

ゲームの内容は、2分間で3大クラウドのサービスのアイコンを当てるというもので、各自の携帯からアクセスして答えていきます。

vscode-paste-1742551031795-5ix4kllrgmc.jpeg

1位のスコアの方はなんと、Splunk Tシャツが景品としてもらえるということで、いざ、はりきってチャレンジ...!

多分20問だったかな?と思うのですが、想像していた以上に即答する必要があり、私は10問くらいでタイムアップになってしまいました。。

1位の方はなんと、80秒で14問正解という驚異の速さで圧巻。
(意外と普段触ってないCloudだと全くわからないんですよね。。。

vscode-paste-1742550930266-wpnm07rzbyl.jpeg

とにかく、みなさん盛り上がって楽しい雰囲気の中ワークショップは終了いたしました。

まとめ

以上、Splunkさん開催のGoogle Cloudデータ取り込みに関する特別ワークショップのレポートをさせていただきました。
今回、Google Cloudの知識を含めて多くのことを学ばせていただきました。
この場を借りて、講師のTravis Kaneさん、Splunkスタッフの皆様にお礼申し上げます。
次回、AWSセキュリティワークショップもお楽しみにしております!ありがとうございました!!

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.