最近はガッツリとサーバを組むこともありませんが、それでも自分のサーバを数台持っているので、最低限の構築と管理はやっています。
というか、構築だけなら前よりもやってるかもしれません・・・
そんな私が今までサーバを構築してきて、自分が心がけていること(心がけてきたこと)を書いてみたいと思います。
・最初はsource makeでインストール
OSは別ですが、apacheやphp、mysqlなどのインストールをする場合、最初は極力Sourceからmakeしましょう。
そうすることで仕組みが分かります。
昔はほぼ全てのサーバアプリをSource makeしていたので、サーバ1台組むのに軽く数日かかることもありました。
でもそのおかげでyumでインストールできなかったり、不具合が起きた場合でもすぐにSource makeに切り替えることができます。
・添付のドキュメントファイルを読む
もちろんこれはSource makeの場合に限られるかもしれませんが、圧縮ファイルを解凍した時に同梱されているテキストファイルは読むようにしましょう。
このファイルには設定のことやインストール時の注意点などが書かれていることも多く、「インストールが出来ない・・・」とさんざん悩んだ挙げ句、ダメ元でこれらのファイルを読んだら答えが書いてあった、ということもありました。
・バックアップはツールを使わず、シェルスクリプトで
これもいろいろなアプリの挙動を知る上で大事なことかもしれません。
バックアップを取得するツールはいくつもありますが、基本的にそういうものは使いません。全てのバックアップ作業をシェルスクリプトで行います。
そうすることで取るべきファイルとリカバリーの方法も頭に描くことが出来るので、何か起きたときの初動対応が早いケースが多いのです。
ツールを使うバックアップは全てを一元管理出来るというメリットはありますが、リカバリーの際にそのツールが必要であったり、うちのようにデータセンターにサーバを借りている場合などはリカバリーが難しいケースもあるので、シェルスクリプトを使っています。
・構築内容は全てノートに書き留めておく
以前もこのブログに書いたと思うが、構築した内容、変更した内容は都度ノートに書き留めておきます。
設定が多少ややこしい時は設定ファイルの内容もノートに書いておきます。
それは後々問題が起きた時に確認するために、という理由もありますが、それよりも書くことで記憶として残る、という理由もあります。
またトラブル対応も併せて書き留めておくことで、同じようなトラブルが発生したときにも「あーこんなトラブル、あったなあ」と思い出しやすくなります。
それと、やはり書き留めておくことで「記憶に頼らない」という意味もあります。人の記憶は曖昧です。記憶に頼るのは非常に危険です。
特に稼働中のサーバに発生したトラブルを解決する際、記憶に頼って何かをする、ということは、もしも記憶に誤りがあったら・・・と考えると恐ろしいです。
・安定するまでのログチェックは欠かさずに、安定してからはツールでログチェックを
サーバへのアタックを知る上でツールの存在は欠かせません。
しかし、サーバを立ち上げてしばらく、サーバが安定動作を始めるまでの間は自分の目でログを毎日確認しましょう。
ログの動きを見ることで、何時頃にアタックが多いのか、どの時間にどのようなログが発生するのかを確認し、以後の管理の手間を多少省くことが出来ます。
安定してきたら、ログ監視ツールでの監視に切り替えて、ツールの画面のチェックだけに切り替えてもいいでしょう。それでもたまに・・・週に1回くらいは生のログを見る癖を付けましょう。
最近はLinuxもyumでのパッケージインストールなど、便利な環境が整ってきました。
そういう環境での構築もいいですが、最初は出来ればこういう面倒なインストールを体験した方がいいかと思います。
これからサーバエンジニアを志す人の参考になれば幸いです。
[tmkm-amazon]4798032484[/tmkm-amazon]