それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

OpenVZの使い方。

OpenVZのマニュアルより

VPSの作り方

VPS(vzではVEと呼ぶ)の作り方

OSの準備

cd /var/lib/vz/template/cache
wget http://download.openvz.org/XXXXXX #precretated(作成済み)OSテンプレートをWGet
VE_ID(サーバー番号)を決める
sudo vzlist  #稼働済みVPS_IDを調べる
#空いてる数字からVPS_IDを選ぶ。
sudo vzlist 1001 -a  #使われてないことを確認する。
仮想OSイメージをインストールする

OpenVZでは仮想イメージはホスト側ファイルシステムに作られます。ホスト側の "/var/lib/vz/private/VE_ID/"が仮想イメージのファイル・ルートになる。

sudo vzctl create 1001 --ostemplate ubuntu-x86_64
#少し時間がかかる。でも3分くらい。
sudo vzctl set 1001 --onboot yes --save #OSが起動時にVPSも一緒に起動する
sudo vzctl set 1001 --hostname hoge.example.com --save #HOST名を追加
sudo vzctl set 1001 --ipadd xxx.xxx.xxx.xxx --save     #IP ADDRを追加
sudo vzctl set 1001 --nameserver xxx.xxx.xxx. --save   #DNSを指定
vzctl set 101 --userpasswd root:$PASSWORD #rootパスワードを設定。(簡単なものにしてログイン後に変更する)

今回は、グローバルIPが10個使えるので仮想サーバーのIPアドレスは静的に割り振った。

起動して動作Check
sudo vzctl start 1001 
sudo vzctl exec 1001 ls / #コマンドをログインせずに実行してみる
sudo vzctl exec 1001 /etc/init.d/apache2 restart #ホスト側からApache起動できる
sudo vzctl enter 1001
#passwd                   #rootのパスワードを変えておく
#vi /etc/ssh/sshd_config  #sshの設定をする。

VPSを終了する方法

sudo vzctl stop 1001 #2分程度かかる
sudo vzctl stop 1001 --fast #強制終了

起動中のVPSを再起動する

sudo vzctl restart 1001 #あまり使うことはない

VZが起動したVPSの情報を知る方法

cat /proc/vz/vzinfo

不要になったVPSをOpenVZから外す

sudo vzctl stop 1001
sudo vzctl destroy 1001 #何も聞かれないので注意する

もし間違って消してしまっても/var/lib/vz/private/1001 にデータはある。但し、同名のVPSを新規で作るとデータ消されます。

ディスク容量を追加する。

HDDのディスク容量を追加する。

sudo vzctl set 1001 -diskspace 8G:10G -save

8GBがソフトリミット。一時的なら超えても許される。10Gがハードリミット。超えることは許されない。

メモリが足りなくて異常終了するとき

apt-get や aptitude などその他いろいろなものが異常終了するときはメモリが足りない事が多い。
コマンド実行中にメモリが足りなくなるなら、メモリを一時的に使える量を増やしてあげればいい。

vzctl set 1001 --privvmpages $((256 * 1024)) --save