サーバー管理者の目/管理・監視・アーキテクト
管理者としてシステムを見る
まずは定常業務の「管理」について考えてみます。
管理とは、システム・サービス・機器の状況を把握し、維持保全することです。主に実施すべきことを挙げてみます。
○システム・サービス・機器情報の把握・維持・共有
○システム・サービス・機器設定の把握・維持・共有
○アカウント追加削除・セキュリティーパッチ適用などの維持管理業務
システム・サービス・機器を管理するのは、おのおのが適切な役割を果たしているかを確認するため、そして、適切な役割が果たせなくなったときに復旧を迅速に実施するためです。
きちんと管理された情報は、引き継ぎやシステム構成変更、トラブル発生時に生きてきます。
具体的には、以下のような情報を把握・維持・共有しておきます。
・機器型番
・ファームウエアバージョン
・シリアル番号
・サポート番号
・登録名義
・問い合わせの連絡先
-URL、メールアドレス、電話番号など
・構成情報(詳細スペック)
-CPUの型番、RAIDの種類、ディスクの容量・規格・回転数、電源容量など
・購入時期
・OS名・バージョン・設定
-WindowsであればSPいくつ、Linuxであればカーネルバージョンまで
-特別なチューニングを実施しているのであれば、その情報
-定期実行タスクのスケジュール、内容
-自動起動プログラム
・ID・パスワード
-ユーザーログイン、管理者ログイン、SSL証明書のパスフレーズなど
・ミドルウエアなどのソフトウエア設定
-コンパイルオプション
-プラグイン・オプショナルモジュール・アドオンなど
・システム構成情報
-物理ネットワーク図
-論理ネットワーク図
-アプリケーション構成図
・機器・プログラム・サービスの状況
-CPU負荷、メモリ/SWAP使用量、ディスク空き容量、セッション数など
検討ベースとしてのドキュメント・資料は非常に重要です。力を抜いて、正確で的確な情報を集めてみましょう。
監視者としてシステムを見る
次に定常業務の「監視」について考えてみます。
監視とは、システム・サービスの状況を確認し、システム・サービスの停止にいち早く気づき、異常を検知したときに迅速に対応することです。監視によって障害の発生を防ぐことはできません(大障害になる前に、早い段階で検知して手を打てることはあります)。
サーバー、機器によって監視すべきポイントは異なりますが、主に以下のようなポイントをチェックすることになります。
・L1~L3:ネットワーク死活監視
・L4~L7:サービス監視
-HTTP
-HTTPS
-POP3(S)
-SMTP(S)
-DNS
-SSH
-(S)FTP
-PostgreSQL/MySQLなどの接続可否・内部状態
・システムリソース
-ロードアベレージ
-プロセス死活
-ログインユーザー数
-ディスク空き容量
-メモリ・SWAP使用量
-ログ出力内容
-その他システム・サービスの計数
システムに監視を導入するときには、どこをどれだけ監視するかがポイントになります。
よくある失敗は、厳密さを求めるあまり監視項目数を増やしすぎてしまうことです。複数の監視項目の結果を組み合わせないと、何が起きているのかわからないほどまで分解してしまうことがあります(例:項目Aと項目BがOKで項目CがエラーだったらDBの異常……など)。
監視項目を絞り込むときのポイントは、ユーザー視点で監視すること、対応が明確に想定できる項目を監視することです。
そのために、監視項目ごとに対応方法・対応フローを確定し、その方法を共有することで、ひとりで抱え込まないように気をつけましょう。