テスト環境を構築する
【連載コラム:Linuxでサーバーを構築してみよう(10)」
今回のテーマはテスト環境構築。テスト環境だからといって侮らず、しっかり理解しながら手順を進めることが重要です。
サーバー構築の連載コラムの第10回目となる今回は、いよいよテスト環境の構築についてのお話です。基本は、これまでの連載で扱った事柄を、VirtualBox上に構築していくということになりますが、それだけに留まらないこともここでは書いていきたいと思います。
VirtualBoxのインストール
VirtualBoxをマシンにインストールします。
VirtualBoxをインストールするコンピューターのOSはLinuxである必要はなく、WindowsやmacOS(Intel CPU)でも構いません。ただし、マシンのスペックは可能な限り高いもの(できればデュアルコア以上のCPU、8GB以上のメモリ、ストレージに30GB以上の空き容量)を利用してください。
多少古いPCでも大丈夫ですが、メモリは増設できればそれに越したことはありません。
VirtualBoxをインストールしたら、VirtualBox上に仮想マシンを作成し、ゲストOSをインストールします。
スナップショットの活用
インストールが終わったら、スナップショットを作成しておきましょう。この時点でのスナップショットを作成しておけば、何らかの失敗をした場合ややり直しをしたくなった場合であっても、スナップショットをもとにしてこの後の作業のやり直しができるようになります。
スナップショットは、仮想マシンの状態を保存しておく機能です。
スナップショットを作成しておけば、ゲストOSに変更を加えても、仮想マシンをスナップショットを作成した時点まで戻すことができます。スナップショットは、要所要所で作成しておくと、やり直しをしたいときにすぐに元に戻すことができますので、積極的に活用しましょう。
スナップショットの作成方法は簡単です。仮想マシンのメニュー「仮想マシン」から「スナップショット作成」を選択するだけです。
すると、スナップショットの名称の入力を求められますので、「OSインストール直後」など、スナップショットの意味がわかるような名称を入力します。これで、その時点の仮想マシンの状態がスナップショットとして保存されます。
OpenSSHのセットアップと利用
ゲストOSをインストールし終わったら、まずはOpenSSHを使えるようにしておきましょう。
Linuxディストリビューションに依りますが、OSインストール時点ですでにインストールされているケースが多いようです。インストールされていない場合は、yumコマンド(Red Hat系)もしくはaptコマンド(Debian系)でOpenSSHサーバーをインストールします。
OpenSSHサーバーをインストールしたら、TeraTermなどのクライアントからOpenSSH経由で仮想マシンにログインし、公開鍵認証でOpenSSHにアクセスできるようにします。この場合、VirtualBoxをインストールしたPCと同じPCからログインすることになるかもしれません。
こうなると一見意味がないように思うかもしれませんが、本番環境ではリモートで作業することになるのであれば、テストと予行演習を兼ねて、同じPCからであってもOpenSSH経由で作業するようにするのがお勧めです。
アクセス制限の設定
OpenSSHのセットアップが終了してから、アクセス制限の設定を行います。アクセス制限は、ソフトウェアをインストールしている最中にも調整を行うことになりますが、その前に基本的なアクセス制限の設定を行っておきます。
たとえば、パケットフィルタリングであれば、「基本的にはアクセス制限を許可せず、必要なものだけを許可する」の原則に則るのであれば、できるだけ早く設定をかけておくべきと言えます。なお、レンタルサーバやVPSを利用する場合、アクセス制限は既にかかっているケースがありますが、この場合も設定はどのようなものなのかを確認した上で必要に応じて調整を行います。
ソフトウェアのインストール
ここまでの作業が終わったら、いよいよソフトウェアをインストールして設定を行います。WordPressを用いたWebサイトを構築するのであれば、まずApache WebサーバとPostgreSQLをインストールし、テストページは適切に表示されるか?RDBMSは適切に動作するのか?をチェックします。
この際、設定ファイルはどこにあるのか?ソフトウェアが利用するファイルはどのディレクトリにあるのか?などもきちんと把握しておきましょう。これも、テスト環境の構築を通して行っておくべき作業です。
WordPressのような応用的なソフトウェアは、ベースとなるApache WebサーバやPostgreSQLがきちんと動作することを確認してからインストールします。WordPressをインストールし終わったら、Webサイトを構築してみます。
テスト環境の構築は調査・学習の一環
テスト環境の構築で重要なことは、テスト環境の構築は、その作業自体がシステム管理者の調査であるということです。
システム管理者のスキルが未完成である場合は「勉強」だと言っても良いでしょう。システムの構築を試しにやってみるということによって、気づいたこと、つまづいたポイントなどが出てくるはずです。そのようなことは、1つ1つノートなどに書き留めておきましょう。
書き留めなくても大丈夫だろうと思っても、人は簡単に忘れてしまうものです。本番環境の構築はできるだけスムーズに行えるように構えておくことも、テスト環境を構築する目的の1つなのです。また、わからないことはmanコマンド、ドキュメント、書籍、ネットなどを駆使して積極的に調べましょう。
わからないことはなあなあで済ませることなく、きちんと解決してから先へ進むということを、テスト環境の構築から実践してください。
テスト環境は訓練でもあります。本番環境ではインターネットに直接接続することになりますので、LAN内とは比べ物にならない危険があります。VirtualBoxなどの仮想環境において十分な練習を積んだ上で本番環境の構築に当たってください。
- 筆者紹介
川原 龍人 氏
1975年生まれ。
著書に「BIND9によるDNSサーバ構築」、「シェルスクリプト ポケットリファレンス Bash編(技術評論社)」など。
予備校講師としても活躍中。Linuxとのつきあいは20年を超える。
バックナンバー
第14回:バックアップ
第13回:異常発生時の対応
第12回:サーバー構築という仕事
第11回:ユーザー教育の重要性
第10回:テスト環境を構築する
第9回:ログローテーションとは
第8回:ログの取得と管理
第7回:アクセス制限
第6回:OpenSSHの活用
第5回:ユーザーアカウントとアクセス制限
第4回:テスト環境を構築する
第1回:Linuxでサーバーを構築しよう