Microsoft MVP for C#
ユージーソフトウェア 代表
中 博俊氏

著者紹介
 フリーのソフトウエア・エンジニアとして.NET FrameworkをはじめとするMicrosoft製品を中心に扱うIT業界の日々を楽しんでいる。開発分野だけでなく,開発プロセスや運用も含めたより良いシステム開発を目指している。
 

 私は.NET Framework用の標準開発言語である「C#」の分野でMS MVPに認定されていますが,実際の仕事はC#での開発に限らず,広く一般企業向けのシステム開発をやっています。今回は開発者の立場から,現在のシステム開発において「運用」の視点がおざなりになっている現状について,警鐘を鳴らしたいと思います。

 私はこれまで様々なシステム開発を手掛けてきました。数名程度が利用する小規模なものから,数十人程度が利用する中規模なもの,数百~数千人が利用する大規模なものまでいろいろありましたが,それぞれ運用面に興味深い特徴がありました。

 まず小規模システムの場合,現場に専門の運用担当者が置かれること自体がまれです。エンドユーザーがサーバーのバックアップ・テープの管理をしている程度なので,ちょっとしたトラブルが発生しただけでもわれわれのようなシステムを構築した人間がユーザー企業に呼び出されます。とはいえ,開発者が運用まで面倒を見ているのですから,的確な運用がなされているといえるでしょう。

 一方,大規模な基幹システムでは,専任の運用担当者や保守担当者が置かれて,プロによる監視が行われています。24時間即応体制が敷かれていることも珍しくありません。すべての大規模システムがそうとはいいませんが,トラブル対応には細心の注意が払われています。大規模システムでも,あまり深刻なトラブルを体験したことがありません。

 私の経験上,運用時に深刻なトラブルが最も発生しやすいのは,中規模なシステムでした。

個人の力量次第ではトラブル多し
 中規模なシステムの場合,運用はその企業のシステム管理者が行うことになります。しかし,トラブルが起きるか否かは,システム管理者個人の力量次第になっていることがほとんどなのです。

 そもそもシステム全般を横断的に管理するためには,現在のWindowsシステムにはまだまだ機能が足りません。そのため,高価な運用管理ソフトを導入できない中小企業にとって,運用管理の自動化は難しいのが現状です。

 しかも中規模システムでは,運用を担当するシステム管理者に対して,運用をする上での十分な情報がもたらされないケースも珍しくありません。

 もしあなたが中規模システムを担当するシステム管理者であるなら,あなたの会社に業務システムが納品されるときに,具体的にはどのようなものが納品されてくるか思い出してみてください。

 設計書,ソフトウエア,利用マニュアル,初期設定シート——これぐらいではないでしょうか?

運用マニュアルがない中規模システム
 残念ながら中規模システムの場合,運用マニュアルが納品されることはまれです。そもそも初期設定ですらも,ネットワークの環境などによってかなり変わってしまうため,ベンダーもあまり運用側に立ち入ることなく「運用はよろしくお願いします」と,及び腰になっているのが実情ではないでしょうか。運用上重要なポイントが分からないまま納品され,手探りで運用せざるを得なかった——というシステム管理者は少なくないでしょう。

 このような状況になってしまうのは,ベンダーだけが悪いとは限りません。運用マニュアル作成には,それ相応のコストがかかります。こういったコストを認めない発注者が多いのも偽らざる現状なのです。またわれわれ開発者も,運用マニュアルの重要性をクライアントに訴えていくと同時に,自身が運用マニュアルに力を注ぐべきだと感じています。

 われわれ開発者全般に言えることですが,「システムをどう開発するか」や新しい技術には興味がある開発者は多くても,「どのように運用するか」など運用しやすいシステムにするためには構築時にどういう配慮が必要か——という点に興味をもって取り組んでいる開発者が少ないように感じているからです。

イベント・ログの活用が進んでいない
 例えば,プログラムには,問題が発生した場合の原因究明に役立つよう「足跡」を残す機能があるべきです。Windowsにはそれを実現する「イベント・ログ」という機能が用意されていますが,これが活用されているケースは少ないようです。多くの開発者が「プログラムから出力するのに連続的なログとして利用できない」「イベント・ログには情報を盛り込めない」と思っているようです。

 これはMicrosoftも同じで,イベント・ログを有効活用できているとはとてもいえない状況です。Windows XPからは,イベント・ログの[説明]の項目に,「詳細な情報は,http://go.microsoft.com/fwlink/events.aspの[ヘルプとサポートセンター]を参照してください」というリンクが記載されるようになりました。本来ここでリンクをクリックすると,イベント・ログに記されているトラブルを解決する情報が出てくるはずなのです。しかし残念ながらリンク先に飛んでも,ほとんど情報が登録されておらず,放置されているのが実情です。

 実は,Microsoftのサポート技術情報には,Windowsの各エラー・メッセージに対応する情報がかなり存在するのですが,これとイベント・ログがうまく結びつけられていません。

 またイベント・ログのリンク機能には,われわれのような外部のベンダーは情報を登録できません。オープン系と呼ばれるシステムは,単一のベンダーの製品だけで成り立っているわけではありません。ベンダーの枠を超えて,統一的にシステムを管理できる仕組みが必要であり,そのためにはイベント・ログのリンク機能の開放が必要だと思います。

 イベント・ログ以外では「Microsoft Operations Manager(MOM)」に期待しています。MOMは,サーバーの監視やログの収集など,様々な運用管理を手伝ってくれる製品です。

 MOMには,サーバーを監視するために必要な設定を簡単に施せる「管理パック」という機能が備わっています。あるアプリケーションを動作させているサーバー(MOMの管理対象)に対して,そのアプリケーション用の管理パックを適用してやれば,セキュリティ管理やパフォーマンス管理,必要なログの収集などが自動化されるのです。

MOMの管理パックで情報伝達
 今は,システム管理者に正しい運用管理をしてもらおうと思ったら,ベンダーは詳細な運用マニュアルを作成する必要があります。MOMと管理パックを使えば,納品するシステムに適した管理パックを提供するだけで,正しい運用が実現します。私はMOMに非常に注目しています。システムを納品する際に,管理パックを一緒に納品できれば,どれだけすてきかと思っています。

 もっとも,管理パックを作成するための開発者向けの情報は,まだまだ不足しています。そのため自社製品用の管理パックを提供しているベンダーは,米Veritas Softwareのような大手に限られています。Microsoftの情報提供は,Consumer(消費者),IT Professional(システム管理者),Developer(開発者)と色分けされていて,これらの壁を乗り越えた情報提供があまりありません。管理パックは,システム管理者と開発者のどちらにとっても重要な情報です。より一層の情報提供を望んでいます。

(日経Windowsプロ2005年7月号より)



Microsoft MVPとは…
 Microsoft MVP(Most Valuable Professional)とは,MS製品のユーザー会やメーリングリストなどでユーザーのサポートをしている人の中でも,特に貢献度が高いとMSが認定したプロフェッショナル。Windows ServerやSQL Serverなど部門ごとに認定されている。