Gentoo + KVM で VM 内に Oracle XE をインストールする
またもや Gentoo ネタです。ご了承ください。
KVM のインストール
KVM の正式な Ebuild はまだありません。
http://bugs.gentoo.org/show_bug.cgi?id=157987
から好きなバージョンの Ebuild をダウンロードしてくるか、コメント内に記されている Overlay を利用させてもらって Ebuild を入手しましょう。僕は kvm-44.ebuild をインストールしました。ちなみに kernel の KVM が無効になっていることを事前に確認しておく必要があります。
% echo 'app-emulation/kvm kvm qemu' >> /etc/portage/package.use % emerge kvm % echo kvm_intel >> /etc/modules.autoload.d/kernel-2.6 # amd の CPU の場合は kvm_amd
VM のインストール
Ubuntu Server 7.04 stable を VM としてインストールしてみることにします。
VM 用のディスクイメージを作成します。 KVM はディスクイメージとしてパーティションを割りあてることができますが、パフォーマンスなど特に気にしない場合はファイルのディスクイメージのほうが簡単でしょう。
% mkdir -p /var/vm/ubuntu % qemu-img create -f qcow2 /var/vm/ubuntu/disk.img 20G
これで準備完了です( iso ファイルは公式ページからダウンロードしておく必要があります)。ではインストールを開始しましょう。
% kvm-system-x86_64 -no-kvm -hda /var/vm/ubuntu/disk.img -cdrom /root/ubuntu-7.04-server-i386.iso -boot d -m 512 -localtime &
KVM が有効だと正常にインストールできないらしいので、インストール時だけ KVM を無効にします。純粋な QEMU になるのですごく遅いですが我慢してください。インストールが終われば以下のコマンドで起動することができます。
% kvm-system-x86_64 -hda /var/vm/ubuntu/disk.img -cdrom /dev/cdrom -boot c -m 512 -localtime &
KVM が有効だとものすごく快適です。是非一度体感してください。
ブリッジのセットアップ
ブリッジがセットアップされていない VM だと VM 内から LAN 内マシンにアクセスできなかったり、逆に LAN 内マシンから VM にアクセスできなかったりでいろいろ不便なのでブリッジをセットアップします。
ブリッジに関するカーネルの設定などは以下の URL を参考にしてください。これから書き連ねる文章も基本的にこの URL を参考にしています。
http://gentoo-wiki.com/HOWTO_setup_a_gentoo_bridge
まず bridge-utils をインストールしておきます。
% emerge bridge-utils
次に、 ブリッジ用の設定を書きます。
/etc/conf.d/net:
config_eth0=( "null" ) bridge_br0="eth0" config_br0=( "192.168.1.2 netmask 255.255.255.0 ") routes_br0=( "default via 192.168.1.1 ") depend_br0() { need net.eth0 }
よくわかりませんが DHCP を利用すると IP の取得が不安定になります。固定 IP を割りあててやれば安定したので今のところはこの設定を使っています。
最後に /etc/init.d/ のスクリプトを用意して、 PC 起動時に自動的に始動するようにしておきます。
% ln -fs /etc/init.d/net.lo /etc/init.d/br0 % rc-update add net.br0 default
これでブリッジのセットアップが完了しました。
このブリッジを VM から利用するために起動コマンドを以下のようにします。
% kvm-system-x86_64 -net nic -net tap,script=/etc/kvm/qemu-ifup -hda /var/vm/ubuntu/disk.img -cdrom /dev/cdrom -boot c -m 512 -localtime &
これで VM がブリッジを介して LAN に参加するようになるはずです。
Oracle XE のインストール
実は Gentoo で Oracle XE が動けばわざわざこんなことしなくても良いのですが、どうも(推測ですが) x86_64 な Gentoo ではちゃんと動いてくれないようです(ちなみに Ebuild は以下にあるので挑戦してみたい方はどうぞ)。なので、動作実績のある Debian 系で Oracle XE をインストールするのです。
http://bugs.gentoo.org/show_bug.cgi?id=123663
さて、前置きが長くなりました。 Debian 系での Oracle XE のインストールはとても簡単です。先ほどインストールした VM にログインして以下のコマンドを実行します。
% echo 'deb http://oss.oracle.com/debian unstable main non-free' >> /etc/apt/sources.list % apt-get update % apt-get install oracle-xe-universal % /etc/init.d/oracle-xe configure
これで Oracle XE のインストールは完了です。簡単ですね。
SQL*Plus のインストール
クライアントは Gentoo を想定しています。 Gentoo なら以下のコマンドで SQL*Plus をインストールすることができます。
% echo dev-db/oracle-instantclient-sqlplus >> /etc/portage/package.keywrods % emerge oracle-instantclient-sqlplus
手動でのパッケージの取得を促されるので、
http://www.oracle.com/technology/tech/oci/instantclient/index.html
から必要なパッケージをダウンロードして、 /usr/portage/distfiles に配置しておきましょう。
VM 内の Oracle XE に接続
以下のコマンドで接続することができます。 192.168.1.3 は VM の IP です。
% sqlplus system/password@192.168.1.3/XE
接続できたら無事目標達成です。
- Category(s)
- linux
- The URL to Trackback this entry is:
- http://dev.ariel-networks.com/Members/matsuyama/install-oracle-xe-with-gentoo-kvm/tbping