COLUMN

コラム

第28回:管理・運用と性能監視

コラム連載版4回目では、運用の立場からインフラ管理のPDCAについてどのように性能監視を活用し、品質を向上することができるかをお伝えしたいと思います。

システムを安定的に運用する為に、様々な手法で監視を行い、異常を早期に検知し、対策を行う。
そんな誰もが理想と考えている監視という手法ですが、今一度その内容を振り返ってみたいと思います。そもそも監視というのは目的を達成する為のひとつの手段であり、なぜその監視手法を取っているのかという目的を考えたことはあるでしょうか。

監視することが当たり前
アラートが発生したら対応することが当たり前

過去のトラブルや様々な経験から運用フローが作られ、実践していることと思います。はたして、そのように作られた運用フローはどのような頻度で見直され、品質・効率の向上が行われているでしょうか。大半が一度作成されたフローは変更されることなく、機械的に対応しているのではないかと考えています。
これでは運用フローは徐々に肥大化・複雑化し、運用負荷は増加する一方です。オペレーターは日々の運用業務に追われ、品質改善などに携わる時間は一向に確保することができません。そのようにして負のスパイラルに陥っているケースが多いように感じられます。

管理・運用を考える際に重要なことは、現在の運用を見直すことだと考えています。システムの可視化の前に運用の可視化を行うべきです。

運用全般に必要な具体的な指標・フレームワークについては、ITSMSやITILといった認証規格や、経済産業省から発表されているSLA導入ガイドライン、共通フレーム等を参考にするとよいでしょう。運用の自動化も最近では導入が進んできていますが、これらも効果的に活用し適用の範囲を広げていく必要があります。

具体的に性能監視、性能管理を行う手法について説明したいと思います。

皆様が運用されているシステムは、どのような業務・サービスでしょうか?

そのシステムはどのように稼働していることが前提ですか?
そのシステムが停止することによって、御社のビジネスにとってどのようなインパクトがありますか?
そのシステムは誰が利用していますか?
・・・

このようなシステムの詳細を理解せず運用を行うことは不可能です。システム運用管理で優先的に取り組んでいきたい項目として、「システム全体構成の可視化」が第一に挙げられています。これは、各サーバーやネットワーク機器のリソースがどのように使われているかということもありますが、システムの特性が把握できていないことに対する課題も大きいと感じています。

システムの安定稼働を実現するために監視を行うわけですが、性能監視を行う目的を改めて考えてみたいと思います。

死活監視では不足?

一台くらい落ちたところで、サービスに影響がないとか、すぐに復旧できる仕組みがあるということであれば、目的にかなった監視手法かもしれません。

なぜ性能監視を行うのか?

サービスを停止させたくない
障害予兆を未然に検知したい
システムの稼働状況を正確に把握したい
適切な設備投資を行いたい

このような目的に対して、以下のような背景が考えられます。

サービスの停止に伴うビジネス/業務への影響度(リスク)が拡大
仮想化等によってシステムが複雑化
機器障害よりもパフォーマンス劣化といった障害原因の特定が困難な事象が増加

様々なシステムやお客様で課題や目的は異なると思いますが、このように今一度監視を行う目的を考え直してみてください。

目的が具体的になってきたところで具体的な監視手法を検討することになります。

個々のデバイスのリソースを把握するだけでなく、システムはネットワーク機器や複数のサーバー間、ロードバランサーなど様々な機器が連携してユーザーへサービスを提供している為、サービスの応答時間やシステム間の関連性を意識して運用を行う必要があります。
品質がいかに重要かについては前回のコラムで記載しているのでそちらを参照頂くとして、性能監視のアプローチとして、2点重要な事柄があります。
それは確実に情報を取得することと、得られた性能情報を定常的に分析(管理)することです。詳細な情報を取得することが目的ではなく、目的を達成するために情報を取得していることを忘れてはいけません。

定常的な分析というと、週次や月次でのレポーティングを行っているお客様も多いと思いますが、報告書のフォーマットは過去作成されたものを継続して実施することが当たり前で、システムの変更に伴って分析手法や報告内容について、内容が目的にかなったものなのかを改めて検討したり、随時変更されているケースは少ないと感じています。
せっかく定常的な分析を行っていても、目的にかなった内容でなくては実施する意味がありません。一度策定した内容を変更することは大変な作業かもしれませんが、品質を維持するだけでなく、さらに向上する為に必ず必要な作業ですので、変化を恐れず取り組んで頂きたいと考えています。

分析手法として、例えば証券や為替のシステムであればその取引量であったり、ECサイトであればキャンペーン時のアクセス数や会員ユーザー数、企業の社内システムではユーザー数や業務時間といった外部要因とシステムの利用状況の相関関係を分析するような手法は取られているでしょうか。

現在の取引量でのシステム負荷状況
取引量が変動した際のシステムの変化
今後目指すべき取引量に必要なシステムリソース(キャパシティ)

このような視点でシステムを分析することによって、システム全体構成の可視化ができ、より一層強固な性能監視を実現することができます。

システムの変更前後のパフォーマンス分析といった視点もあるでしょう。システム変更後はトラブルが多いものです。定常的に分析を行った結果、アプリケーションのチューニングやシステムリソースの追加、機器の変更等を行った後、意図したパフォーマンスが得られているかを確認することはとても重要です。以前と比較して意図した通りのスループットが出ているのか、負荷はどうかといった分析を行ってみてください。

このように、性能監視によって得られた情報によって根拠のある適切なサイジング、対処を行い、その後のパフォーマンスを確認する。このインフラ管理のPDCAをしっかりと管理・運用していくことで安定した運用を実現することが可能となります。

システムが複雑化し、ビジネス/業務へのIT依存度がさらに高まっている現在、運用の果たすべき役割は大きく変わってきています。運用がシステムインフラをコントロールし、運用の品質がそのままビジネス/業務の品質に直結する大事な役割を担っていくと考えられます。

ビジネスを加速する為に新規サービスの迅速なリリースが求められますが、運用と開発部門はより一層信頼関係を築かなければいけません。確実な性能監視を行い、その情報をリアルタイムに共有することで事前にリスクを想定し、万が一問題が発生した場合もそのリスクは最小限に抑えることができます。DevOpsという考え方がありますが、ここでは「変化に伴うリスクをツールとカルチャーによって低減する」と言われています。

DevOpsでも性能監視はなくてはならない重要な位置づけとなっています。目的にかなったツールを効果的に活用し、他部門とのコミュニケーションを活性化することにより、ビジネスを加速する。そんな理想的な運用を目指して頂きたいと考えています。

by 技術部技術課 明星 誠

一覧を見る

CONTACT

お気軽にお問い合わせ下さい