linuxやるブログ

linuxができなくて悔しい思いしてるので、linuxやるぞ~ 初歩的なやつから少しずつ。 OSはCentOS5.3がメインだす。正確性は保障できませぬ。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

PageTop

xen NIC追加

xen ゲストOSに複数NICを割り当てる。

xenではホストOSで複数のNICを認識していても、デフォルトではゲストOSでは
1枚のNICしか認識しません。そこで2枚目のNICを認識させる方法をやります。

まず、ホストOS側の設定
network-scriptsファイルをリネームします。
# mv /etc/xen/scripts/network-bridge /etc/xen/scripts/network-bridge.xen

次に、新たに↓の内容のnetwork-scriptsファイルを作成します。
ここはコピペで。
# vi /etc/xen/scripts/network-bridge
------------------------------------
#!/bin/sh

set -e

OP=$1
shift
script=/etc/xen/scripts/network-bridge.xen
case ${OP} in

start)
$script start vifnum=0 bridge=xenbr0 netdev=eth0
$script start vifnum=1 bridge=xenbr1 netdev=eth1
;;

stop)
$script stop vifnum=0 bridge=xenbr0 netdev=eth0
$script stop vifnum=1 bridge=xenbr1 netdev=eth1
;;

status)
$script status vifnum=0 bridge=xenbr0 netdev=eth0
$script status vifnum=1 bridge=xenbr1 netdev=eth1
;;

*)
echo 'Unknown command: ' ${OP}
echo 'Valid commands are: start, stop, status'
exit 1
esac
-----------------------------------------------

作成したらパーミッションも変更します。
# chmod 700 /etc/xen/scripts/network-bridge

次に、Xendをリスタートしてxenbr1というものが確認します。
# /etc/init.d/xend restart
# ifconfig xenbr1
xenbr1 Link encap:Ethernet HWaddr FE:FF:FF:FF:FF:FF
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:1046 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:312236 (304.9 KiB) TX bytes:0 (0.0 b)
こんな感じでできていたらokっす。

次は、ゲストOSの設定です。とりあえずゲストOSを起動していない場合は起動しておき、
↓のような感じでゲストOSにeth1を追加します。
# vi /etc/sysconfig/network-scripts/ifcfg-eth1
-----------------------------------------
# Xen Virtual Ethernet
DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.11.15 ←eth1用のIP。適当に変えてください
NETMASK=255.255.255.0
HWADDR=00:16:3E:5C:99:A4 ←00:16:3EまではXenの仮想用です。それ以降は自由に決めてください。
ONBOOT=yes
-----------------------------------------

そして、ホストOSの設定に戻って、ゲストOSの設定ファイルを編集します。
vi /etc/xen/linux5 ←ここではlinux5がゲストOSの設定ファイルになります。
-----------------------------------------
    ・
    ・
vif = [ 'mac=00:16:3e:5c:99:a3, bridge=xenbr0','mac=00:16:3e:5c:99:a4, bridge=xenbr1' ]

*赤字の部分を追加。macの値はゲストOSのeth1で設定した値です。
-----------------------------------------

あとは、ゲストOSを再起動すればOKっす。

スポンサーサイト

PageTop

Xen ゲストOS自動起動

Xen ゲストOS自動起動

ホストOS起動時に、ゲストOSを自動起動させる。
例:ゲストOS linux14を自動起動にする。


まず、/etc/xen/auto/ にシンボリックリンクを春。
# ln -s /etc/xen/linux14 /etc/xen/auto/linux14

次に、chkconfigでxendomainsを on に設定する。
# chkconfig xendomains on

これで、おわりっす。

PageTop

Xen インストール

Xen インストール 

Xenインストールやることになりました。
ホストOS(親=Domain-Oとも言う)とゲストOS(子=Domain-Uとも言う)のインスールを
やろうかと思ったのですが、CentOS5.2の場合、ホストOSのインストールは、
最初のOSインストール時に「仮想化」にチェックを入れるだけなので、
ホストのインストール手順は省きします。

ホストOSがインストールされているかの確認コマンドは xm list あたりで、

# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 483 1 r----- 1517.7

とこんな感じになってれば、OKです。
で、子のインストールをやります。
細かいことは気にせずとにかく入れてみる。

条件として、
・親=CentOS5.2 子=CentOS5.2
・CentOS5.2のCDイメージファイルを使ってインストール
・NFSを使いインストールする。
・仮想化の種類 準仮想化
・イメージファイルを作成し、そこに子OSをインストール
・イメージファイルサイズ G、メモリ 512M
・事前に、/tmp/isoフォルダにCDのイメージファイルを6個コピーしておく。
 # ll /tmp/iso
  total 3921512
  -rw-r--r-- 1 root root 654061568 Nov 1 23:02 CentOS-5.2-i386-bin-1of6.iso
  -rw-r--r-- 1 root root 666683392 Nov 1 23:03 CentOS-5.2-i386-bin-2of6.iso
  -rw-r--r-- 1 root root 665231360 Nov 1 23:33 CentOS-5.2-i386-bin-3of6.iso
  -rw-r--r-- 1 root root 666519552 Nov 2 00:14 CentOS-5.2-i386-bin-4of6.iso
  -rw-r--r-- 1 root root 667863040 Nov 2 01:08 CentOS-5.2-i386-bin-5of6.iso
  -rw-r--r-- 1 root root 683225088 Nov 2 01:26 CentOS-5.2-i386-bin-6of6.iso

では、スタート。。。。。

①まず、/tmp/iso内の1枚目のisoファイルをループバックマウントする。
 
# mount -o loop /tmp/iso/CentOS-5.2-i386-bin-1of6.iso /mnt/iso1
 これにより、isoファイルの中身が見えるようになる。
# ll /mnt/iso1
total 158
drwxr-xr-x 2 root root 86016 Jun 20 2008 CentOS
-rw-r--r-- 7 root root 212 Jun 15 2008 EULA
-rw-r--r-- 7 root root 18009 Jun 15 2008 GPL
drwxr-xr-x 4 root root 2048 Jun 20 2008 images
drwxr-xr-x 2 root root 2048 Jun 20 2008 isolinux
drwxr-xr-x 2 root root 12288 Jun 20 2008 NOTES
-rw-r--r-- 2 root root 655 Jun 15 2008 RELEASE-NOTES-cs
-rw-r--r-- 2 root root 1401 Jun 15 2008 RELEASE-NOTES-cs.html
 ・
 ・

②nfsでインストールするので、/etc/exportsに以下を追加する。

# vi /etc/exports
---------------/etc/exportsの内容--------
/tmp/iso *(ro)
/mnt/iso1 *(ro)
-----------------------------------------

その後、NFSをスタート
# /etc/init.d/nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS daemon: [ OK ]
Starting NFS mountd: [ OK ]

③virt-installコマンドでインストール!!
# virt-install \ 
--paravirt \ 準仮想化にする。
--nographics \ GUIのサポートをしない
-n linux14 \ この子のXen内での名前
-r 512 \ メモリのサイズ(Mb)
-s 5 \ イメージファイルのサイズ(Gb)
-f /var/lib/xen/images/linux14.img \ イメージファイルの作成場所
-l nfs:localhost:/mnt/iso1 インストールファイルの場所

④あとは、通常のCentOSをインストールのと同様です。
 インストール開始!!
 cent1.jpg
 ちょっとだけ違うのは↓のように怒られるので、
cent2.jpg

「OK」し、以下のように入力する。
「NFS server name」には親のIPアドレスを入れる。localhostとか127.0.0.1ではないのだ!!そりゃそうだ。
cent3.jpg

あとはインストールが終わったらrebootして完了。
子Xenが立ち上がりました。

# xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 483 1 r----- 1637.1
linux14   1 511 1 r----- 21.3

おわり


 




PageTop
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。