--- layout: old_post title: Rails環境の整備-CentOSにLinuxVServerを入れてみる permalink: /tatsuya/show/339-rails-centos-linuxvserver ---
最近実験用にサーバを追加した、どうせなのでOS仮想化して環境を作ろうと思う。仮想化しとけばハードさえ買ってくれば環境のセットアップが楽なので
最近の流行りからいうとXenが良さそうだけど、ちょっと大げさな気もするなーと思ってたらVServerってのが良さそうだ
dara日記 - Debian etch + Linux-VServer で Rails向きのVM環境を構築する
Z手帖 - OpenVZについて
現在の仮想化技術は大きく3種類に分かれて
1) Virtual machines (仮想マシン)
Vmware、Parallels、Virtual Server等
2) Paravirtualization(準仮想化)
Xen、UML等
3) Virtualization on the OS level(OSレベルの仮想化)
OpenVZ、Linux-Vserver、Solaris Zone
で仮想化レベルは1が一番高い、1は完全にハードウェアをエミュレートするのでクライアントは何でもOK
逆に仮想化に必要なオーバヘッドが高いのでパフォーマンスが悪い、らしい。
Vserverが属する3は逆にオーバヘッドが低く、その代わり仮想化レベルも低い(カーネルは共有)。
ということでVServerセットアップをメモ、ベースはCentOS5
1) CentOS5を普通にインストール
GUIで楽々インストール、適当に
2) RPMでVServer対応カーネルへ差し替えて再起動(参考:http://linux-vserver.org/Installation_on_CentOS)
wget -c http://rpm.hozac.com/dhozac/fedora/6/vserver/i386/kernel-2.6.20-1.2936.fc6.vs2.2.0.1.i686.rpm
rpm -ivh kernel-2.6.20-1.2936.fc6.vs2.2.0.1.i686.rpm
reboot
3)ホスト環境のsshd設定(参考:http://d.hatena.ne.jp/darashi/20070328/1175089122)
ListenAddressをホスト環境のIPに変更しておく
vi /etc/ssh/sshd_config
ListenAddress 192.168.1.99 と追加して保存(ホスト環境のIP)
4) util-vserver を入れる(参考:http://opentechpress.jp/developer/article.pl?sid=06/06/25/0257254)
準備dietlibcとbeecrypt-develを入れておく
yum install -y dietlibc beecrypt-devel
util-vserverのソースを落としてくる
wget http://ftp.linux-vserver.org/pub/utils/util-vserver/util-vserver-0.30.212.tar.bz2
tar -zxvf util-vserver-0.30.212.tar.bz2
cd util-vserver-0.30.212
./configure
make && make install && make install-distribution
インストールの結果を確認
wget http://vserver.13thfloor.at/Stuff/SCRIPT/testme.sh
chmod 700 testme.sh
./testme.sh
次のように表示されればOK
Linux-VServer Test [V0.15] Copyright (C) 2003-2006 H.Poetzl
chcontext is working.
・・・・・・・・・・・・・・
[000]# succeeded.
[001]# succeeded.
[011]# succeeded.
[031]# succeeded.
[101]# succeeded.
[102]# succeeded.
[201]# succeeded.
[202]# succeeded
5) ゲスト環境をセットアップ(参考:http://www.ne.jp/asahi/open/gallery/linux/vserver/vserverfc5/vserverfc5.htm)
sudo vserver template build -m yum --hostname=template --interface eth0=eth0:192.168.1.100/24 -- -d fc6
で自分の環境だと /vservers/template が作られる。
これ以後割と自分の環境用メモへと
cp /etc/resolv.conf /vservers/template/etc/. #ホストからゲストへコピー
vyum template -- install yum #ゲスト環境へyumをセットアップ
vserver template start #開始
yum install openssl-server
yum install rootfiles
yum instlal emacs
・・・・・・普段使用するツールを入れていく
yum install mysql-server
yum install ruby
wget http://rubyforge.org/frs/download.php/20989/rubygems-0.9.4.tgz
gem install rails
・・・・・・・・・続く
ホスト起動時にゲスト環境も自動で立ち上げるには以下のように
echo default > /etc/vservers/basil/apps/init/mark
これであとは /vserver/template 配下をtarで固めて持って行けば、サーバ追加しても同じ環境が動く、で良いんだよね?実験用にサーバ追加も簡単。
よし、セットアップを続けよう。基本になる環境ができたら保管しておこうかな。