はじめに
先日、既存のインフラ基盤調査のお仕事があり、入社3年目くらいの子と一緒に作業したのですが、調査といっても未知のシステムに対して何をどう調べていったらよいか分からんと途方に暮れられてしまいました。
言われてみると私も今回のような調査を行う際、あまりプロセスをきっちり決めてやっていなかったと思い、せっかくなので、私があまり意識せずやっていることをまとめてみようと思います。
私の個人的なやり方なので、参考程度でお願いします。
対象
サーバ・ネットワーク系インフラエンジニアを対象にします。
アプリ系は門外漢なので対象外です。
調査方法の検討
何はともあれ、調査をするということは何か目的があって調査をするので、調査の目的を考え、目的に対して何を調べれば達成できるかを考えます。
ちなみに前述のお仕事では、お客様より今後保守をお願いしたいということで仕事を頂いたので、保守するのに最低限必要となる情報をまとめ、調査を行いました。
- 保守定例で報告する内容の調査
- 監視方法の調査
- システム構成の調査
- 障害時のアラート方法の調査
- 提供サービスの調査
調査(全体)
設計書があるのであれば、設計書に従って設計内容や設定箇所を確認していきます。
管理用パスワードなどは設計書があった場合でも載っていないことが多いと思うので、早めに確認するのが良いです。
また、設計書があった場合でも実機の設定は必ず確認するようにしましょう。
私も経験がありますが、設計書と実機の設定が合っていないことは以下の様に様々な理由により発生するため、設計書だけで調べていくとハマります。
- 単純な誤記
- 設計書への反映忘れ
- 古い設計書を修正して反映してしまった
- お客様から渡された設計書が古い
- 費用の関係で見積時に設計書修正費用を削られた
- 開発部門と運用保守部門で持っている設計書が異なる
私が経験して覚えている限りでもこれだけあるので、知らないシステムを調査する際には設定が記載されたパラメータシートがあった場合でも設計概要・設計方針を頭に入れる程度にしましょう。
調査(AWSサービス)
どのようなサービスが使われているかもわからない場合、AWSコンソールでポチポチ確認していくのも大変なので、どのようなサービスが使われているかの当たりをつけるために、Tag Editor
でAll regions
、All supported resource types
を指定してリソースを検索するだけでも、使われているタグやリソースが確認できるので、"当たり"が付けられます。
ユーザアクセス権等ある場合は、AWS Perspective
やCloudMapper
で構成を確認してみるのも良いと思います。
調査(Unix系サーバ)
サーバ内の構成を調べる際には、タイムスタンプから変更されているファイルに当たりをつけて、設定が変更されているコンフィグなどを追っていくことをよくやっています。
最初に構築した時期が分かるなら、構築時期~現在までに更新されたファイルをタイムスタンプから追っていきます。
/proc
や/sys
などはそうそう人が触る場所でもないので、find
コマンドで以下の様にすれば、予め不要だと思われるファイル・ディレクトリは外した上で結果が出力できるので、あとは出力されたファイルから詳細確認したいコンフィグファイル等を取得して確認しましょう。
find / -mtime -730 -mtime +365 -ls 2>/dev/null | egrep -v " /proc| /sys| /dev| /run| /var/run"
コンフィグファイルにコメント行等含まれていて、実際に設定されている内容が分かりづらい場合は以下の様にコメント行等除外して設定を確認することをおすすめします。
以下は「先頭が"#"で始まる行」または「空行」または「先頭から空白が続いた後に"#"で始まる行」を除外した内容を表示できます。
egrep -v "^#|^$|^ .*#" [ファイル名]
調査(ネットワーク)
ネットワーク系機器は設定方法が様々なので難しいですが、Ciscoで言えばshow tech-support
、F5ならqkview
などまとめて情報を取得できるコマンドがあることが多いので、まずはまとめて情報を取得してみるのが良いかと思います。
取得した情報を基に、以下の様なことをベースとして簡単に絵にまとめると、システム内のネットワーク構成や通信先が見えてくるかと思います。
- IPアドレス、セグメント構成
- ルーティング
- ACL
通信要件の一覧があれば各サービスのシーケンス等を追っていき、無いようなら設定されているルーティングやACLからどのような通信があるのか追っていくのが良いと思います。
終わりに
今回は私の一例として調査方法を紹介しましたが、調査の内容は様々なので、何かあった場合でも困らないように調査のネタを増やしていきましょう。