OpenVZ · 4 min read · Jan 17, 2026

OpenVZのインストールと使用方法(Ubuntu 13.04 (AMD64)) - ページ 2

3 OpenVZの使用

OpenVZで仮想マシンを作成する前に、仮想マシンで使用したいディストリビューションのテンプレートを/var/lib/vz/template/cacheディレクトリに用意する必要があります。そのテンプレートから仮想マシンが作成されます。

事前に作成されたテンプレートのリストはhttp://wiki.openvz.org/Download/template/precreatedで見つけることができます。例えば、最小限のDebian Wheezyテンプレート(x86_64)を次のようにダウンロードできます。

cd /vz/template/cache  
wget http://download.openvz.org/template/precreated/contrib/debian-7.0-amd64-minimal.tar.gz

(ホストがi386システムの場合、amd64テンプレートは使用できません - その場合はi386テンプレートを使用する必要があります!)

ここでは、OpenVZを使用するための基本的なコマンドを示します。

debian-7.0-amd64-minimalテンプレートからVPSをセットアップするには(/vz/template/cacheにあります)、次のコマンドを実行します。

vzctl create 101 --ostemplate debian-7.0-amd64-minimal --config basic

101はユニークなIDでなければなりません - 各仮想マシンは独自のユニークなIDを持つ必要があります。仮想マシンのIPアドレスの最後の部分を使用できます。例えば、仮想マシンのIPアドレスが192.168.0.101の場合、101をIDとして使用します。

仮想マシンをブート時に起動したい場合は、次のコマンドを実行します。

vzctl set 101 --onboot yes --save

仮想マシンのホスト名とIPアドレスを設定するには、次のコマンドを実行します。

vzctl set 101 --hostname test.example.com --save  
vzctl set 101 --ipadd 192.168.0.101 --save

次に、ソケットの数を120に設定し、いくつかのネームサーバーを仮想マシンに割り当てます。

vzctl set 101 --numothersock 120 --save  
vzctl set 101 --nameserver 8.8.8.8 --nameserver 8.8.4.4 --save

(vzctl setコマンドを使用する代わりに、/etc/vz/confディレクトリに保存されている仮想マシンの設定ファイルを直接編集することもできます。仮想マシンのIDが101の場合、設定ファイルは/etc/vz/conf/101.confです。)

仮想マシンを起動するには、次のコマンドを実行します。

vzctl start 101 

仮想マシンのルートパスワードを設定するには、次のコマンドを実行します。

vzctl exec 101 passwd

これで、SSH(例:PuTTY)を介して仮想マシンに接続するか、次のようにして仮想マシンに入ることができます。

vzctl enter 101 

仮想マシンのコンソールを離れるには、次のように入力します。

exit

仮想マシンを停止するには、次のコマンドを実行します。

vzctl stop 101

仮想マシンを再起動するには、次のコマンドを実行します。

vzctl restart 101

ハードドライブから仮想マシンを削除するには(停止してから実行する必要があります)、次のコマンドを実行します。

vzctl destroy 101 

仮想マシンのリストとそのステータスを取得するには、次のコマンドを実行します。

vzlist -a
root@server1:~# vzlist -a  
CTID      NPROC STATUS    IP_ADDR         HOSTNAME  
101          8 running   192.168.0.101   test.example.com  
root@server1:~#

仮想マシンに割り当てられたリソースについて知るには、次のコマンドを実行します。

vzctl exec 101 cat /proc/user_beancounters
server1:~# vzctl exec 101 cat /proc/user_beancounters  
Version: 2.5  
uid  resource           held    maxheld    barrier      limit    failcnt  
101:  kmemsize         500737     517142   11055923   11377049             0  
lockedpages           0          0        256        256             0  
privvmpages        2315       2337      65536      69632             0  
shmpages            640        640      21504      21504             0  
dummy                 0          0          0          0             0  
numproc               7          7        240        240             0  
physpages          1258       1289          0 2147483647             0  
vmguarpages           0          0      33792 2147483647             0  
oomguarpages       1258       1289      26112 2147483647             0  
numtcpsock            2          2        360        360             0  
numflock              1          1        188        206             0  
numpty                1          1         16         16             0  
numsiginfo           0          1        256        256             0  
tcpsndbuf         17856      17856    1720320    2703360             0  
tcprcvbuf         32768      32768    1720320    2703360             0  
othersockbuf       2232       2928    1126080    2097152             0  
dgramrcvbuf           0          0      262144      262144             0  
numothersock          1          3        120        120             0  
dcachesize           0          0    3409920    3624960             0  
numfile             189        189       9312       9312             0  
dummy                 0          0          0          0             0  
dummy                 0          0          0          0             0  
dummy                 0          0          0          0             0  
numiptent            10         10        128        128             0  
server1:~#

failcnt列は非常に重要で、ゼロのみが含まれているべきです。そうでない場合、仮想マシンは現在割り当てられているリソース以上のリソースを必要としています。/etc/vz/confにある仮想マシンの設定ファイルを開き、適切なリソースを増やしてから、仮想マシンを再起動してください。

vzctlコマンドの詳細を知るには、次のコマンドを実行します。

man vzctl 

3.1 コンテナ内のクォータ設定

コンテナ内でクォータを有効にするには(この例ではID 101のコンテナ)、ホストから次のコマンドを実行します。

vzctl stop 101  
vzctl set 101 --diskquota yes --save  
vzctl set 101 --diskspace 10G --save  
vzctl set 101 --diskinodes 200000:220000 --save  
vzctl set 101 --quotatime 0 --save  
vzctl set 101 --quotaugidlimit 1000 --save  
vzctl start 101

diskspaceとdiskinodesの値は必要に応じて調整できます。quotaugidlimitは、コンテナ内でディスククォータが計算されるユーザー/グループIDの最大数を設定します。

コンテナが起動した後、コンテナ内にquotaとquotatoolパッケージをインストールする必要があります。

apt-get install quota quotatool

その後、次のコマンド…

repquota -avug

…は現在のクォータを表示するはずです。

root@test:~# repquota -avug  
* ユーザークォータのレポート  
デバイス /dev/simfs  
ブロックの猶予時間: 00:00; inodeの猶予時間: 00:00  
ブロック制限                ファイル制限  
ユーザー            使用    ソフト    ハード  猶予    使用    ソフト    ハード  猶予  
----------------------------------------------------------------------  
root      --  325500       0       0          14301     0     0  
man       --     360       0       0              35     0     0  
libuuid   --       4       0       0              1     0     0  
messagebus --       4       0       0              1     0     0  
  
統計:  
合計ブロック: 131590  
データブロック: 2  
エントリ: 4  
使用平均: 2.000000  
  
* グループクォータのレポート  
デバイス /dev/simfs  
ブロックの猶予時間: 00:00; inodeの猶予時間: 00:00  
ブロック制限                ファイル制限  
グループ            使用    ソフト    ハード  猶予    使用    ソフト    ハード  猶予  
----------------------------------------------------------------------  
root      --  325112       0       0          14251     0     0  
adm       --      36       0       0              23     0     0  
tty       --      40       0       0              9     0     0  
disk      --       0       0       0              17     0     0  
mail      --       4       0       0              1     0     0  
kmem      --       0       0       0              3     0     0  
shadow    --     124       0       0              5     0     0  
utmp      --      16       0       0              4     0     0  
staff     --      68       0       0              18     0     0  
libuuid   --       4       0       0              1     0     0  
ssh       --     128       0       0              1     0     0  
messagebus --     292       0       0              2     0     0  
crontab   --      44       0       0              3     0     0  
  
統計:  
合計ブロック: 131590  
データブロック: 4  
エントリ: 13  
使用平均: 3.250000  
  
root@test:~#

3.2 ploopコンテナの作成

ploopコンテナの作成は、通常のディレクトリベースのコンテナの作成とそれほど違いはありません - コンテナを作成する際に–layout ploopスイッチを使用し、diskspace(例:–diskspace 10G)を指定することを確認してください。

vzctl create 102 --layout ploop --diskspace 10G --ostemplate debian-7.0-amd64-minimal --config basic 

他のすべてのオプションの設定は同じです。

vzctl set 102 --onboot yes --save
vzctl set 102 --hostname test2.example.com --save  
vzctl set 102 --ipadd 192.168.0.102 --save
vzctl set 102 --numothersock 120 --save  
vzctl set 102 --nameserver 8.8.8.8 --nameserver 8.8.4.4 --save
vzctl start 102
vzctl exec 102 passwd

ploopコンテナ内でクォータを有効にするには、quotaugidlimitオプションを設定するだけです。

vzctl stop 102  
vzctl set 102 --quotaugidlimit 1000 --save  
vzctl start 102

コンテナが起動した後、コンテナ内にquotaとquotatoolパッケージをインストールする必要があります。

apt-get install quota quotatool

その後、次のコマンド…

repquota -avug

…は現在のクォータを表示するはずです(表示されない場合は、コンテナを再起動してください)。

root@test:~# repquota -avug  
* ユーザークォータのレポート  
デバイス /dev/simfs  
ブロックの猶予時間: 00:00; inodeの猶予時間: 00:00  
ブロック制限                ファイル制限  
ユーザー            使用    ソフト    ハード  猶予    使用    ソフト    ハード  猶予  
----------------------------------------------------------------------  
root      --  325500       0       0          14301     0     0  
man       --     360       0       0              35     0     0  
libuuid   --       4       0       0              1     0     0  
messagebus --       4       0       0              1     0     0  
  
統計:  
合計ブロック: 131590  
データブロック: 2  
エントリ: 4  
使用平均: 2.000000  
  
* グループクォータのレポート  
デバイス /dev/simfs  
ブロックの猶予時間: 00:00; inodeの猶予時間: 00:00  
ブロック制限                ファイル制限  
グループ            使用    ソフト    ハード  猶予    使用    ソフト    ハード  猶予  
----------------------------------------------------------------------  
root      --  325112       0       0          14251     0     0  
adm       --      36       0       0              23     0     0  
tty       --      40       0       0              9     0     0  
disk      --       0       0       0              17     0     0  
mail      --       4       0       0              1     0     0  
kmem      --       0       0       0              3     0     0  
shadow    --     124       0       0              5     0     0  
utmp      --      16       0       0              4     0     0  
staff     --      68       0       0              18     0     0  
libuuid   --       4       0       0              1     0     0  
ssh       --     128       0       0              1     0     0  
messagebus --     292       0       0              2     0     0  
crontab   --      44       0       0              3     0     0  
  
統計:  
合計ブロック: 131590  
データブロック: 4  
エントリ: 13  
使用平均: 3.250000  
  
root@test:~#

4 リンク

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。