アラートもないし機器も正常だけど「なんか遅い」

ITインフラにおける運用管理の現場では、システムの稼働状況を把握するためにネットワークやサーバの監視が一般的に行われている。しかし担当者は、システムに張り付いて監視するわけにはいかないので、何か異常があればアラートが出るように設定しておき、普段は企画や設計などの業務を行っている。

ただ、アラートも上がっておらず、ハードウェア機器やサーバなどのソフトウェアも正常に動作しているのに「なんか遅いんだけど」とユーザーから指摘されることがある。しかし、監視ログを見返しても何かトラブルがあったわけではない。自分で確認してみても特に遅いと感じるわけではない。症状も再発せず、原因もわからないので放置せざるをえず、忘れた頃にまたユーザーから「なんか遅いんだけど」と指摘される。

CTCテクノロジー サービス営業推進部 Avail営業推進課 村井 恒慶 氏

CTCテクノロジー サービス営業推進部 Avail営業推進課 村井 恒慶 氏

なぜこうした症状が起こるのか。インフラ監視のスペシャリストが揃うCTCテクノロジーサービス営業推進部Avail営業推進課の村井恒慶氏は「こうした背景の1つとして、サーバならサーバ、ネットワークならネットワークといったように、コンポーネントごとに監視していることが挙げられます。サービス全体を見ているわけではないため、コンポーネントごとに異常の兆候があっても気づきにくいのです」と説明する。

昨今のITインフラにおけるシステムコンポーネントは多様化、複雑化している。そのため監視体制そのものが限界に達しつつあるのだという。また、同じくCTCテクノロジー マネージメントサービス第2本部クラウドマネージメントサービス部Avail-ProE技術支援サービス課の渡部和氏は、この技術的な監視の限界を次のように指摘する。

「システム監視に一般的に利用されるSNMPは5分毎にデータを取得するケースがほとんどです。1分ごとに監視するには監視を作り込む技術も必要になります。そのため、5分に満たない障害は平均にならされてしまい、監視ログを見ても異常に気づかないのです」

「なんか遅い」というユーザー体験はけっして本人の気のせいではない。実際に障害が起こっているのに、発生時間が短すぎたり、見つける体制が整っていなかったりするせいで「障害に気づかない」のだ。

SNMP監視の限界とは

気づきづらい障害が発生するメカニズムを村井氏と渡部氏にもう少し解説してもらおう。 システムのコンポーネントが少ない場合、機器やOS、ミドルウェア、アプリケーションなどで障害が発生すれば、どこに問題が発生したか把握しやすい。いわゆる「単体障害」として対処できるのだ。この障害の原因としては、CPU、メモリ、電源、ソフトウェアのバグなどであり、検知手段としては、SNMP、リソースやプロセスのログ、アクセスログなどがある。

これに対し、気づきづらい障害は「サイレント障害」などと呼ばれる。正常に動作しているのに反応が鈍る「レスポンス遅延」も、気づきづらい障害の1つだ。

「単体障害の場合、ネットワーク、サーバ、アプリケーション、データベースといったそれぞれの担当者がはっきりと原因を特定し、対処できます。一方、サイレント障害やレスポンス遅延では、ユーザーから指摘があってはじめて気づくため、どこに原因があるか最初はわかりません。それぞれの担当に聞いても『トラップは飛んでいない』『ログには何も出力されていない』『データベースは落ちていない』『アプリケーションはデバッグしてみないとわからない』といった八方塞がりの状況になってしまいます」(村井氏)

CTCテクノロジー マネージメントサービス第2本部 クラウドマネージメントサービス部Avail-ProE技術支援サービス課 渡部 和 氏

CTCテクノロジー マネージメントサービス第2本部 クラウドマネージメントサービス部Avail-ProE技術支援サービス課 渡部 和 氏

システム全体の動きを把握する手段の1つが、ネットワーク監視で用いられるSNMPだ。大きく分けて、SNMPトラップによって機器のステータス変化を検知する方法と、SNMPポーリングによって機器のリソースを収集する2つの方法がある。SNMPトラップでエラー検知がされなければ、SNMPポーリングで、送受信したパケット総数や破棄されたパケット総数、さらにCPUやメモリの使用率を見て、何が起きたかを判断していく。だが、渡部氏が指摘したように、通常はSNMPポーリングが5分間隔であり、平均にならされてしまうと、見た目には障害が発生していないことになってしまう。

「長期にわたって変化を分析していけば気づくことができる場合もあります。ただ、そこまでのログを収集・蓄積しているケースはまれです。また、NetFlowなどの技術もありますが、データをサンプリングして取得することは同じで、サンプリングに引っかからなければやはりパフォーマンスの劣化に気づけないのです」(渡部氏)

重要性を増す「サービスのパフォーマンス監視」

こうした監視体制と監視技術の課題を解消しようと開発されたのがCTCテクノロジーのトラブルシュートサービス「Avail-ProE」だ。村井氏はAvail-ProEのコンセプトを「データの流れそのものをモニタリングすることで、サービスのパフォーマンスをリアルタイムに監視し、ボトルネックとなっている箇所を迅速に特定することでサービスの安定化を実現するサービスです」と説明する。

これまでのトラブルシュートサービスは、一定間隔で機器を監視し、障害対応を行うことが中心だった。これに対し、Avail-ProEは、データの流れをリアルタイムに監視し、サービスの安定稼働を実現していくという新しい切り口から生まれた。また、データを長期に渡って収集し、それをビッグデータ分析の手法を用いて分析することで、障害の発生前に対処することも可能だ。トラブルシュートで豊富な経験を持つ専任エンジニアチームが対処にあたるという特徴もある。

機能的には、ネットワークのパフォーマンス監視を行う「NPM」と、アプリケーションのパフォーマンス監視を行う「APM」、ハードウェア監視を行う「ハードウェア監視」の3つで構成されている。これら3つを組み合わせることで、システムが提供しているサービス全体のパフォーマンスを継続的に監視し、安定稼働を支えていくわけだ。

「サービスレベルがビジネスに直結するECサイトやチケット予約サイト、金融系の取引サイト、各種サービスサイトなどを中心に多くの引き合いがあります。最近では取引の管理や顧客管理といった社内システムでも安定したパフォーマンスを維持することが求められていますから、そうしたケースで検討されることが増えてきました」(村井氏)

最近主流になっているVDIシンクライアント環境においては、原因のはっきりしない障害が発生するケースが多く、Avail-ProEは非常に有益だといえる。

「とある企業の情報システム部門は、ユーザーから『なんか遅いんだけど』という指摘を受けていたのですが、原因がはっきりしませんでした。そこで、Avail-ProEをトライアルで導入してみたところ、今まではっきりしていなかった原因が特定できるようになったのです」(渡部氏)

  • Avail-ProEの提供イメージ

    Avail-ProEの提供イメージ

事例から見えたパフォーマンス監視のメリット

Avail-ProEは1分間の粒度でTCP通信のやり取りをモニタリングし、トラフィックに異変が起こったことを過去にさかのぼって調査することができる。検証を行っていたところ、ちょうど、ある拠点のシンクライアント環境のパフォーマンスが劣化するという事象が再発した。

「ユーザーから遅くなったという指摘を受けて、原因を調査しました。報告を受けた時点では異常が認められなかったのですが、遅くなったという時間にさかのぼって調査してみると、特定のユーザーが業務で行っていたある操作が原因だとわかりました。それは企業間で数GBのファイルのやりとりを特定の手段で行っているときにネットワーク帯域を圧迫し、別のユーザーのシンクライアントの操作に遅延が発生していたのです」(渡部氏)

原因がわかってみると「そんなことで?」と思われるようなケースだが、特定のタイミングで、特定の端末の、特定の操作にしか影響しなかったために発見できなかったという。巨大なファイルのやりとりが終わると、ネットワークの遅延は解消され、何事もなかったようにパフォーマンスが戻るため、原因の追究が困難を極めた。

Avail-ProEでは、今回発生した事象を正確に把握し、原因を特定できたことにより、他拠点においてもスムーズに対処することができた。これにより、同じ問題は二度と再発しなくなり、業務がスムーズに行われるようになった。また、対処を事前に行うことで、障害を未然に防止することもできたという。

「パフォーマンス監視のメリットは、過去に起こっていた目に見えない機会損失を可視化できることです。コスト削減や売上向上に直結するわけではありませんが、今まで失っていたものを可視化し、きちんと管理できるようになるメリットは大きい」と村井氏は話す。

Avail-ProEがビジネスにもたらす価値

デジタルビジネスが本格化するなか、APMやNPMによるサービスのパフォーマンス監視はここにきて急速に盛り上がりはじめている。従来の監視の問題点を解消しようと開発されたAvail-ProEは、ちょうどその波を捉え、導入に一段とはずみがついている状況だという。

渡部氏は、Avail-ProEのようなトラブルシュートサービスを「エンジニアの育成やパフォーマンス監視のスキル獲得に悩む企業を支援できるのでは」と話す。システムが複雑化するなか、エンジニアは複数の領域にまたがって担当するようになり、専門スキルを幅広く身につける必要が出てきた。だが、トラブルシュートのような業務は、高いスキルと経験が求められる一方で収益には結びつきにくい。

そこで、トラブルシュートの一切をCTCテクノロジーのような外部サービス事業者にまかせるわけだ。逆に、CTCテクノロジーが持つ実績やスキルを活用して、内部でパフォーマンス監視のような高度なスキルを蓄積することも考えられる。

パフォーマンス監視は、Webを中心にビジネスを行っている企業以外にはまだまだ認知度が低い状況だ。Avail-ProEのようなサービスを活用して「なんか遅い」という状況を改善していくことが、これからのデジタルビジネスの成功にもつながっていくはずだ。

[PR]提供: CTCテクノロジー