
今までヘルプデスクで培ってきた知識やスキルを十分に発揮しながら、新しい世界でもあるサーバエンジニアとして成長して行くためのポイントをチェックしていきましょう。
転職サイト経由でサーバエンジニアに転職する前のヘルプデスク業務については以下に纏めていますので、併せてご覧頂けますと幸いです。
関連記事
初任務!サーバを安定稼働させること
サーバとは1台だけで機能やサービスを提供しているものもあれば、2台で同時に同じサービスを提供して負荷の偏りを防ぐ仕組みを用意したり、同じ役割を持つサーバを複数台集めて一つの機能を提供することも可能です。
特に、災害時のバックアップ用として本番環境と似たような、最低限の機能だけを提供できる予備環境用サーバもあります。
サーバというだけで本当に多くの機能やサービスを提供しているわけです。このサーバを管理運用するのが、サーバエンジニアの運用担当の仕事となります。
ヘルプデスクでは利用者から問い合わせや障害などのトラブルが連絡を受けてから行動を起こしますが、サーバエンジニアになると一般的な利用者ではなく情報システム担当者やシステム管理者といった各会社の専門的分野の人から、問い合わせや障害連絡が入るようになります。それに加えて、サーバ自身からも、イベントログという形で現在の稼働状況がメールアドレスや監視ツールから通知されるようになります。この監視ツールはサーバが突然使えなくなった場合でも、きちんとアラート上げてサーバエンジニアに異常が発生したことを通知できるようになっています。
毎日、サーバの状況を知らせてくれる通知をチェックしてサーバに異常がないことを確認する業務の傍ら、新しい機能の追加や利用されているミドルウェアのバージョンアップ、OSのセキュリティアップデートなど、ちょっと間違えてしまうとサーバを停止しかねない状況の中、本当に幅広く様々な作業や設定を実施しなくてはならないことが多いため、しっかり決められた手順や作業内容を把握して正確な作業ができるようなることが、サーバエンジニアとしての最初のミッションです。
はじめてのことがいっぱい!だったらGoogle先生に尋ねるべし
サーバが通知してくるログは、OSを開発している人にしかわからないような言葉や内容になっていることが大半です。
しかも、サーバに採用されているOSの多くは、パソコンにインストールされているようなOSと違って、詳細部分があまり正しく翻訳されていないことがあります。
そうなってしまうと、内容を正しく理解するためには、専門書やインターネットで情報を収集するしかありません。
サーバエンジニアは現状を的確に捉えなくてはいけないので、サーバから通知されるイベントIDをGoogleで検索します。
表示されている単語などやコードIDなどを利用して検索すると、ある程度のサイトがヒットします。場合によっては英語サイトしかない場合もあるので、翻訳サイトも利用して調べるようにしましょう。
特に、Microsoftが提供しているOSやサービスであれば、Microsoftのコミュニティサイトを利用するといろいろな情報が検索できます。ただ、専門的な内容であったり、機械翻訳情報であったり、ちょっと難しい内容になっていることもあるので、そういう時は先輩に確認するようにしましょう。もしかすると、すでに対応方法ができていて、対応手順などが用意されている場合もあるからです。
手順がない場合は、確認したログを自分なりのドキュメントとして残しておくようにしましょう。そうしておけば普、段から見ているログの中でも対応が必要か不要かを短い時間で判断できるようになっていきます。さらに、ちょっとした確認ポイントも合わせて記載しておけば、さらに早い判断ができるからです。このようなドキュメントを残しておけば、後輩に業務を引き継ぐ時も改めてドキュメントを作成する必要もなくなります。
ヘルプデスクと比べると、「ログをチェック」したり、イベントログを採取したるするなど、あまり経験をしたことがないようなことが作業として登場します。もしかすると、指示を受けてイベントログを取得しなくてはいけなくなるかもしれません。
その方法がわからない場合でも、Googleで検索すればたいていのことは出てきます。ただ、検索する文言に気をつければ良いだけです。
先輩方が対応している内容もしっかり復習して作業内容を確認した後に、自分なりに操作方法をおさらいし、必要であればドキュメントを作成して確実に自分のものにしていきましょう。
覚えておくのも良い手段だと思いますが、これからたくさんのことを覚える必要があるサーバエンジニアであれば、覚えるのではなく「ドキュメントをわかりやすく残せるか」が勝負になってきます。

次に、一人でも作業できるぐらいの精度でドキュメントをGoogle先生と一緒に作り上げていきましょう。
障害発生!最優先事項は○○だ
日々のイベントログチェックや稼働状況の確認を行っていく中で、万が一、サーバで障害が発生しサービスが停止してしまうとどうなるのでしょうか?
サーバが停止してしまうと、サーバ運用を委託している各企業のサービス提供が停止し、エンドユーザにも多大な影響を与えてしまいます。
- オンライン決済ができなくなったり
- WEBサイトへのアクセスができなくなってしまったり
- メールが送受信できなくなり
- インターネットさえ接続できなくなる
という事態です。
すぐに解決してサービス提供も元通りになれば良いのですが、復旧までの時間がかかりすぎてしまうようなことがあると、エンドユーザからは各企業にクレームが入り、「いつ復旧するのか」という問い合わせが、サーバ運用を引き受けているIT会社に上がってきます。
こうなると、IT会社と各企業の信用は失墜し、損害賠償請求などの事態に発展することがあります。この最悪なケースを回避するためにも障害が発生した場合は、すぐさまいろいろな方法を使って復旧することを最優先で行動しなくてはならないのです。
サーバが止まってしまう理由は様々で、
- サーバを構成しているハードウェアの故障だったり
- OSのバグだったり
- サーバを収容している設備の電源故障だったり
します。
その予兆をイベントログや監視ツールのアラート状況から掴んでおけば、「挙動がおかしい」というのに気付くはずです。
そして、復旧最優先のため、過去に障害発生時に実施した作業を行っていきます。
サーバが安定動作しない場合、特に何か設定を変更したり、アプリケーションをインストールしたり、OSの脆弱性対応モジュールを適用したりなど、事前になにか作業をしていなければサーバ再起動がもっとも効果的だったりします。サーバの動作状況をリセットして、初めから立ち上げ直すからです。
そして、障害が復旧したら、今度はその時点で取り出せるログ情報を抽出して、OSや原因に至ったミドルウェアなどを開発しているベンダーへログ解析を依頼して、原因を追求していきます。
ハードウェアの故障などであればすぐにわかるので交換対応を実施すれば復旧するのですが、OSやミドルウェアになってしまうと、原因がわかるまでに時間がかかったり、調査してもらったけど原因は不明だったりすることがあります。
そういった場合は、次に同じようなことが起きないように、イベントログやダンプと呼ばれるOSの情報をチェックして、できる限りの原因を追求していくのです。
最初は何もできず、いろいろな指示をうけても、行動までに時間がかかってしまうかもしれません。経験が増えていけば、いろいろな判断やどこをチェックすれば良いのかがわかってきます。
そのレベルに達するようにその時起こった事象を、時間を作って自分なりにしっかり学びましょう。そうしてサーバエンジニアとしてのスキルを磨いていくのです。ここで学んだ経験や考え方は、サーバエンジニアの設計担当になったとしても十分に活かせるスキルです。

サーバの状態を知るツールをどんどん利用しよう
サーバの状態の確認はイベントログや監視ツールなどから把握することができますが、それ以外にも、調査するツールが提供されています。
- OSを提供しているMicrosoft謹製
- サーバを製造しているハードウェアメーカーが提供しているツール
- 自分でスクリプトを作成して必要な情報を効率よく抽出
- 自動処理を実行
なそ、様々なツールが運用管理をやり易くしてくれています。
ただし、フリーツールなどは後から脆弱性問題に発展することもあるので、できるだけインストールするタイプのものは使わず、実行型のアプリケーションを利用するようにしましょう。
また、サーバへの勝手なインストールはすでに納品している設計書などと不一致になり、後から調査する際に問題になったりします。さらに、アプリをインストールしたことで、システムが不安定になりサーバが再起動を繰り返してしまうという事態が発生することも、十分に考えられるのです。
自分で良さそうなツールを見つけたら、必ず上司に相談することです。それからサーバで利用するようにしましょう。間違っても自分勝手にインストールするようなことはしないでください。
中にはセキュリティ事故として扱うケースもあり、疑いを書けられてしまうと、せっかくサーバエンジニアとして活躍できる場所があっても、失ってしまうことになるからです。許可なく勝手に行動するのは、一番の間違いであることを理解しておいてください。
サーバエンジニアってサーバだけ知っていればいいの?答えはノーです!

サービスを提供するには、サーバ以外にも、スイッチやネットワークに関する知識も必要になってきます。
また、先ほどのツールのところにも出てきたスクリプトは、作成する言語を理解している必要があります。WindowsであればVBスクリプトやPowerShellなどがあります。
こういったサーバだけに必要な知識だけではなく、さまざまな分野に知識を広げていくようにしましょう。
さらに、機能を提供するサーバも多く、SQLサーバやADサーバなどは基本として利用されているサーバになるので、サーバとしてもしっかりマスターしてネットワークもしっかり理解しておけば、サーバエンジニアとして優位に立ち回れるようになるでしょう。

コメント