DEVOPS

組織内ネットワークへの外形監視でオブザーバビリティを向上

ITシステムのオブザーバビリティを高める施策として、特に素早く始められ、効果が高いものがSynthetic Monitoring(外形監視)です。外形監視とは一言で説明すると、ITシステム外からのテスト通信によるブラックボックステストです。

Splunkの外形監視では大きく分けて3種類の機能が提供されています。

  • ブラウザーテスト:ユーザージャーニーのシミュレーション。シナリオ実行し正常に処理できたかおよびCore Web Vitals(ユーザーエクスペリエンス指標)を監視。
  • APIテスト:REST APIの正常性テスト。ステータスコード、レイテンシー、返り値を監視。
  • Uptimeテスト:HTTP / TCP / UDPによるポーリングテスト。ステータスコード、レイテンシーを監視。

いずれもITサービス利用のユーザーエクスペリエンスの能動的監視であり、問題(エラー発生、レイテンシー悪化)をユーザーが気付く前に検知、対応にあたることで、ユーザーへの影響を最小限に抑えることにつながります。

参考:

外形監視とは?

東京証券取引所様事例

監視はどこから実施するのか?

リアルなユーザーエクスペリエンスの測定には様々なロケーションからの監視が必要です。SplunkのSynthetic Monitoringでは世界中にある拠点から監視が行えます(一覧はこちら)。

一方で、これが本記事の主題ですが、組織内ネットワークからしか行えない監視もあります。例えば以下のようなユースケースです。

  • テスト環境へ実行しリリース前にユーザーエクスペリエンスをモニターしたい
          ◦ 早期問題発見: リリース前に問題点を早期に発見し、ユーザーやSLOへの影響を防ぎたい。
          ◦ 開発効率の向上: 開発チームがフォーカスすべき問題点を明確化したい。
  • 組織外に公開していないAPI(パートナーへVPN経由で提供しているAPIなど)をテストしたい
          ◦ SLA遵守: SLAに記載された品質を担保したい。
          ◦ 問題切り分け: API自体の問題なのか、それ以外の問題なのか切り分けたい。
  • 重要な組織内システムを監視したい
          ◦ 業務継続性の確保: システムダウンやパフォーマンス劣化が業務に与える影響を最小限に抑えたい。
          ◦ トラブルシューティング効率化: 問題が発生した場合、その原因を速やかに特定し、解決したい。

もしかすると「わざわざ外形監視ソリューションを使用する必要はあるのか」と思われるかもしれません。

個別の監視ツールを使うことももちろんできます。しかし、問題があったことまでは分かりますが、それより先の調査は別の方法が必要になるはずです。

一方、Splunkの外形監視ソリューションの大きな特長の一つとして、APM(アプリケーションパフォーマンスモニタリング)やインフラモニタリングと相関分析ができます。例えばAPIテストでエラーやレイテンシーを検出したとき、問題はアプリなのか、アプリであればどのコードか、またはDBか、はたまたホストリソースか、多くの可能性が考えられます。Splunk Observability Cloudでは、APIテストのトランザクションと、アプリ側で処理されたトランザクションを自動的に紐づけることができ、バックエンド側の処理まで追跡でき、問題の切り分けがシームレスに可能になります。これによりオブザーバビリティを高め、より素早い解決につながります。

組織内ネットワークから外形監視を行うためにPrivate Locationという機能が提供されています。本記事の残りでは、この機能の概要と実際のインストール方法を見ていきましょう。

Private Locationとは?

外形監視エージェント(Runnerと呼びます)をコンテナで動作させることができる機能です。Dockerなどで動作させたRunnerが組織内のAppやREST APIに対してテスト実行し、その結果をSplunk Observability Cloudに送信します。

概要は以下図の通りです。

Private Location

RunnerのインストールはDocker環境があれば即座に完了します。

Private Locationのセットアップページで、このようにコンテナ起動用のコマンドが発行されるので、これを実行するとRunnerが起動します。

Private Locationのセットアップ

RunnerからObservability Cloudへの通信が成功するとOverviewで一覧が確認できます。一つのPrivate Locationに複数のRunnerを紐づけることができ、冗長構成を取ることができます。

一覧

後は通常のテスト作成の流れで、Locationsに作成したPrivate Locationが追加されているので、それを指定するだけです(LocationsではPrivate Locationだけ選択するようにしてください)。

Locationの指定

Private Locationに関する詳細な設定方法、必要なリソース、通信などについてはこちらのドキュメントをご参照ください。

まとめ

外形監視のPrivate Locationによる組織内ネットワークへのテスト方法をご紹介しました。これにより、外部公開されていないシステムに対しても外形監視が可能になり、バックエンド、インフラとのエンド・ツー・エンドのオブザーバビリティが適用できます。

お客様に影響が出る前に問題を把握し、不満をもたれる前に阻止しましょう。

Splunk Synthetic Monitoringにご関心のある方は無料トライアルを始めてみませんか?

是非ご連絡ください!

山村 悟史
Posted by

山村 悟史

データに翻弄されることなく価値を引き出すSplunkのData-to-Everythingの思想に共感し2020年Splunk Services Japan合同会社入社。現在は幅広いお客様へSplunkとは?を知って頂くためプリセールス活動として提案、検証、ワークショップなどを実施。
入社前は主にITサービスマネジメントプラットフォーム構築、データセンタ管理などを経験。

TAGS
Show All Tags
Show Less Tags