ある日いきなりサーバー管理者に任命されたら
まずはシステム全体を把握する
こんにちは。第3回の記事を担当させていただくsanonosaと申します。7月の特集では本記事以外にも、「「生きてる」自宅サーバー運用」(http://thinkit.jp/article/976/1/)という記事を連載しています。どうぞよろしくお願いします。
さて、連載3回目はちょっと視点を変えて、もしいきなりサーバー管理者に任命されたら、ということを考えてみたいと思います。サーバー管理者の仕事は多岐に亘るため、いきなりサーバー管理者に任命されてもどこから手をつけてよいのかわからず途方に暮れる場合が多いようです。
著者のまわりでも、最近実際に新たにサーバー管理者に任命された新人が途方に暮れていていました。このことから、あらためてサーバー管理者になるための敷居の高さを実感し、今回あえてこのテーマを選んでみました。
さて、現在稼働しているサーバーのことを何も知らずに何かできるわけがありません。この段階ですべきことは現状把握となります。すでに存在しているシステムを理解するところからまずは始めてみましょう。
システム全体を把握するのに有効な手だてとして、まずはドキュメント収集があげられます。ドキュメントを収集するには以下のような方法があります。
・システム構築・運用に携わった/携わっている人から受け取る
・社内グループウェアに掲載されているエンドユーザー向けドキュメントをかき集める、
・購買履歴をたどる
などです。ありとあらゆるルートからドキュメントを集めましょう。
次にシステム構成図やサーバーリストなどのドキュメントを作ります。これらのドキュメントには最低限以下の内容を盛り込むようにします。
・サーバーの名称
・サーバーの役割
・サーバーの詳細情報(マシン名、IPアドレス、OS名、ミドルウエア、アプリケーション等)
・関連付けられているサーバーの種類
・その他特記事項(故障中、今年度中に廃棄など)
その後、各サーバーの管理者IDとパスワードを調べ、実際にサーバーにログインしてどんなサービスやバッチが動いているのかまで確認していきます。
もちろん自分自身の役職や役割によっては、具体的な情報が入手できない可能性があります。その場合でも限られた情報の中でシステムの全体像をつかむ努力をすることは大切なことだと思います。
未経験の技術を補うための対策を考える
システム全体を把握してみると、自分自身がこれまで経験したことのない技術が使われている場合がよくあります。サーバー管理者として未経験の技術をどのように押さえていけばよいかについて考えてみます。
・未経験のOS
サーバーOSとして使われるのは主にWindows系とUNIX系になります。「Windows Serverしか触ったことがない」「Linuxしかわからない」という方も多いと思いますが、Windows系とUNIX系共にサーバーOSでは共通している部分が多く、何でもいいので1つのOSをきちんとマスターしておくと、ほかのOSをマスターするのも比較的容易になります。
むやみやたらと新しいOSに手をつけるよりは、まずは1つのOSについてきちんとマスターした上でほかのOSに対象を広げていくことが重要ですし、逆に言えば1つのOSもきちんとマスターしていない状態でやたら複数のOSに手をつけてもあまり意味がありません。最近はWindows系にしてもUNIX系にしても入門書が容易に手に入りますので、そういったものを参考にしながら自宅などで一度きっちりと構築してみるのがよいでしょう。
・未経験のサーバー機
サーバー機はPCと構造や設計思想が異なるので、もし自由に触ることのできる検証機などがあれば、一度直接触ってみることをお勧めします。特にサーバーはハイエンド機になればなるほどサービス無停止を意識したいろいろな機能が搭載されていることが多いです。例えばすべてのパーツが冗長化されていて、OSが稼働している状態でも片方のパーツを抜き差しできるといった、いわゆるホットスワップなどの機能は実際に触ってみることでよく理解できます。もし残念ながら自由に触ることができない場合は、ホームページ等でそのサーバーのメカニカルな仕組みを押さえておくのがよいでしょう。
・未経験のミドルウエア
ミドルウエアを習得する近道は実際にインストールしてみることだと思います。サーバー管理者にとってミドルウエアはインストールにおいても運用についてもクセが多く、実際に試してみてそのクセをつかむことが重要となります。
・未経験のアプリケーションやソリューション
アプリケーションやソリューションはサーバー管理者の業務範囲を超えることが多いですが、概念だけ勉強しておくだけでもトラブル発生時の問題切り分け時に有効です。例えばマイクロソフト社のSharePoint Server 2007について理解しようとすれば、SharePoint ServerのみならずActiveDirectory、SQL Server、IISなどの知識も必要となります。これらすべてを詳細に理解しようとするのは大変な時間がかかるので、そういった場合は概念だけでも押さえるようにしましょう。