OpenNebula/ゲストOSの構築
の編集
http://eucalyptus.linux4u.jp/wiki/index.php?OpenNebula%2F%E3%82%B2%E3%82%B9%E3%83%88OS%E3%81%AE%E6%A7%8B%E7%AF%89
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
-- 雛形とするページ --
BracketName
Ceph/install
Ceph/memo
Ceph/mount
Ceph/概要
ChangeLog_v1.5.2
CloudStack
CloudStack/インストール方法
CloudStack/ネットワーク解説
CloudStack/ネットワーク設定
CloudStack/メモ
CloudStack/仮想マシン
CloudStack/初期設定
CloudStack/概要
Doc/EucalyptusImageManagement_v1.5.2
Documents
DynamicDNSGuide
Elasticfox
Euca2ools と EC2 Tools との違い
Euca2oolsCentosInstall
Euca2oolsGuide
Euca2oolsImageManagement
Euca2oolsInstallJaunty
Euca2oolsLennyInstall
Euca2oolsNetworking
Euca2oolsOpensuseInstall
Euca2oolsSourceInstall
Euca2oolsSqueezeInstall
Euca2oolsStorage
Euca2oolsUsing
Euca2oolsVmControl
Eucalyptus (OSS Elastic Computing) 日本語情報
Eucalyptus + Euca2ools + Elasticfox で作るプライベートクラウド環境
Eucalyptus - OSS Elastic Computing
Eucalyptus - Ubuntu 9.04 で作るプライベートクラウド環境
Eucalyptus 1.5.2
Eucalyptus 日本語情報 wiki - OSS Elastic Computing
Eucalyptus-Upgrade-1.6.1
Eucalyptus-Upgrade-1.6.2
EucalyptusAdministratorGuide_v1.5.2
EucalyptusAdministratorGuide_v1.6
EucalyptusAdvanced_v1.6
EucalyptusBlockStoreInteracting_v1.5.2
EucalyptusConfiguration_v1.5.2
EucalyptusFeatures_v1.5.2
EucalyptusGettingStarted_v1.5.2
EucalyptusImageManagement_v1.5.2
EucalyptusImageManagement_v1.6
EucalyptusInstall_v1.5.2
EucalyptusInstall_v1.6
EucalyptusInstallationCentos_v1.5.2
EucalyptusInstallationCentos_v1.6
EucalyptusInstallationDebianLenny_v1.5.2
EucalyptusInstallationDebianSqueeze_v1.5.2
EucalyptusInstallationDebianSqueeze_v1.6
EucalyptusInstallationOpensuse_v1.5.2
EucalyptusInstallationOpensuse_v1.6
EucalyptusInstallationUbuntuJaunty_v1.5.2
EucalyptusInstallationUbuntuJaunty_v1.6
EucalyptusKnownBugs_v1.5.2
EucalyptusKnownBugs_v1.5.2)
EucalyptusManagement_v1.5.2
EucalyptusManagement_v1.6
EucalyptusMonitoring_v1.6
EucalyptusNetworking_v1.5.2
EucalyptusNetworking_v1.6
EucalyptusOverview
EucalyptusPrerequisites_v1.5.2
EucalyptusRocksInstallation_v1.5.2
EucalyptusSourceCodeInstallation_v1.5.2
EucalyptusTroubleshooting_v1.5.2
EucalyptusTroubleshooting_v1.6
EucalyptusUpgrade_v1.5.2
EucalyptusUserGuide_v1.5.2
EucalyptusUserImageCreatorGuide_v1.5.2
EucalyptusWalrusInteracting_v1.5.2
FAQ
FormattingRules
FrontPage
Help
Hibari
Hibari/インストール
Hibari/データモデル
Hibari/データ操作
Hibari/特徴
InterWiki
InterWikiName
InterWikiSandBox
Links
MenuBar
OpenNebula/その他
OpenNebula/クラスタノードの構築
OpenNebula/ゲストOSのネットワークの設定
OpenNebula/ゲストOSの構築
OpenNebula/フロントエンドノードの構築
OpenNebula/仮想ネットワークの構築
OpenNebula/概要
OpenStack
PHP
Presentations
PressRelease/2010_Feb_9
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RHEL5 にセットアップ(RPM)
RecentDeleted
RightScale
S3_Compatibility_1.5.2
SandBox
Scalaris/JSON APIの利用
Scalaris/Java-API用CLIツール
Scalaris/インストール方法
Scalaris/分散環境の設定
Scalaris/利用方法
Scalaris/概要
Sheepdog/インストール方法
Sheepdog/インストール方法(SL6)
Sheepdog/デザイン
Sheepdog/ユーザ会
Sheepdog/利用方法
Sheepdog/問題点
Sheepdog/概要
Swift/Rings
Swift/memo
Swift/インストール方法
Swift/サーバの起動とテスト
Swift/メッセージの流れ
Swift/使い方
Swift/概要
Swift/設定ファイルの作成
Swift/起動用スクリプトの作成
ToolsEcosystem
ToolsEcosystem_EC2Dream
ToolsEcosystem_Elasticfox
ToolsEcosystem_boto
ToolsEcosystem_cloud42
ToolsEcosystem_right_aws
ToolsEcosystem_s3cmd
ToolsEcosystem_s3fs
ToolsEcosystem_tAWS
ToolsEcosystem_typica
UEC/CDInstall
UEC/CreateYourImage
Ubuntu 9.04 Server Edition のダウンロード方法
Ubuntu Enterprise Cloud 入門
Ubuntu Enterprise Cloudで作るプライベートクラウド環境
Ubuntu/Eucalyptus
Ubuntu/Eucalyptus+bridge
Ubuntu/Eucalyptus+environment
Ubuntu/KVM
Ubuntu/libvirt
Ubuntu/ubuntu-vm-builder
UbuntuEnterpriseCloud
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
backup-eucalyptus-16
configuration
first-time-setup-16
hypervisor-configuration
installation-distribution-specific-binary-packages
installing-eucalyptus-source-16
s3curl
sample-s3cmd-config
sample-s3cmd-config-s3
トラブル事例
*ゲストOSの構築 [#v8030a98] 実際にOpenNebulaを用いてゲストOSを構築してみましょう。 このページはOpenNebula公式の、[[A VM with Context & Network 1.4>http://www.opennebula.org/documentation:rel1.4:vmg]]を参考にしています。 *動作環境 [#xe032677] [[フロントエンドノードの構築>OpenNebula/フロントエンドノードの構築]]、 [[クラスタノードの構築>OpenNebula/クラスタノードの構築]]、 [[仮想ネットワークの構築>OpenNebula/仮想ネットワークの構築]]は何れも終わっているものとします。~ またクラスタノードはKVMノードとして登録しているものとします。 *ゲストOS用のイメージ [#ifa56b1b] ゲストOSのイメージはttylinuxを使用します。~ 公式ドキュメントで使用しているイメージは、設定ファイルのテンプレートなどもあるので、 ここでも同じ物を使用します。 フロントエンドノード上で、下記のコマンドを実行します。 # mkdir -p one-template # cd one-template # wget http://dev.opennebula.org/attachments/download/170/ttylinux.tar.gz # tar xvzf ttylinux.tar.gz *ゲストOS用の定義ファイル [#p99cc8c1] ttylinux.tar.gzを解凍したファイルの中に、ttylinux.oneがあります。 これがゲストOSの定義を行うファイルです。 NAME = ttylinux CPU = 0.1 MEMORY = 64 DISK = [ source = "/path/to/ttylinux.img", target = "hda", readonly = "no" ] NIC = [ NETWORK = "Small network" ] FEATURES=[ acpi="no" ] #CONTEXT = [ # hostname = "$NAME", # ip_public = "PUBLIC_IP", # files = "/path/to/init.sh /path/to/id_dsa.pub", # target = "hdc", # root_pubkey = "id_dsa.pub", # username = "opennebula", # user_pubkey = "id_dsa.pub" #] #はコメントです。今回は、コメントアウトしたまま使用します。~ まずはDISKの項目にある、"/path/to/ttylinux.img"を適切な値に変更します。~ 例えば、/home/nanodayo/one-templateに、イメージをダウンロードした場合は "/home/nanodayo/one-template/ttylinux.img"に書き換えます。~ ここで指定したファイルが、後でクラスタノードの適切な場所にコピーされるため、 フロントエンドノード上のパスを指定すればOKです。 続いて、NICの項目も変更します。~ デフォルトの設定では、付属のsmall_network.netを元に作ったネットワークを使用していますが、 ここでは[[仮想ネットワークの構築>OpenNebula/仮想ネットワークの構築]]で構築した、vnet0を使用します。 そしてテンプレートにはありませんが、OSという項目も必ず必要になります。 変更後のttylinux.oneは以下のようになります。 NAME = ttylinux CPU = 0.1 MEMORY = 64 OS=[ BOOT = "hd" ] DISK = [ source = "/home/nanodayo/one-template/ttylinux.img", target = "hda", readonly = "no" ] NIC = [ NETWORK = "vnet0" ] FEATURES=[ acpi="no" ] GRAPHICS = [ type = "vnc", listen = "0.0.0.0", port = "5910" ] #CONTEXT = [ # hostname = "$NAME", # ip_public = "PUBLIC_IP", # files = "/path/to/init.sh /path/to/id_dsa.pub", # target = "hdc", # root_pubkey = "id_dsa.pub", # username = "opennebula", # user_pubkey = "id_dsa.pub" #] NAMEはOpenNebula上で取り扱う名前を記述します。~ 省略可能で、省略した場合はone-<id>のルールで自動的に名前がつけられます。 GRAPHICSという項目も追加してあります。~ 指定したIPとポートに対して、VNCで接続することができます。~ 必須ではありませんが、画面の出力を見ることができるので、 トラブルシューティングがしやすくなります。~ またsshと異なり、ゲストOSへの接続性がなくても使用できるというメリットもあります。~ listenとportの項目では、クラスタノードが待ち受けるIPアドレスとport番号をそれぞれ指定します。~ *ゲストOSの作成と配置 [#l540676c] ファイルから、ゲストOSをフロントエンドノードへ登録します。下記のコマンドを実行します。 # onevm create ttylinux.one 登録後、onevm listでゲストOSの一覧を確認できます。 # onevm list ID NAME STAT CPU MEM HOSTNAME TIME 1 ttylinux pend 0 0 00 00:03:46 仮想ネットワーク同様、個々のゲストOSの情報はonevm show <ゲストOS>で参照できます。 ゲストOSの指定は、IDでもNAMEでも行えます。 # onevm show ttylinux VID : 1 UID : 0 STATE : PENDING LCM STATE : LCM_INIT DEPLOY ID : MEMORY : 0 CPU : 0 LAST POLL : 0 START TIME : 07/02 16:17:18 STOP TIME : 01/01 09:00:00 NET TX : 0 NET RX : 0 ....: Template :.... CPU : 0.1 DISK : READONLY=no,SOURCE=/home/nanodayo/opennebula/ttylinux.img,TARGET=hda FEATURES : ACPI=no MEMORY : 64 NAME : ttylinux NIC : BRIDGE=virbr0,IP=192.168.1.2,MAC=00:03:c0:a8:7a:02,NETWORK=vnet0,VNID=1 OS : BOOT=hd ゲストOSに割り当てられたIPアドレスも表示されています。~ 後でログインする際に必要になるので覚えておきましょう。 *クラスタノードへの配置 [#r0fe79bd] 実際にクラスタノードでゲストOSを起動させるには、onevm deployコマンドを使用します。~ # onevm deploy <vm_id> <host_id> <vm_id>にはゲストOSのID、<host_id>にはクラスタノードのIDをそれぞれ指定します。~ onevm deployを実行すると、実際にファイルのコピーなどが行われます。 *ゲストOSの起動確認 [#fd50903a] onevm deploy実行後、起動を確認します。 sshでログインできます。 # ssh root@192.168.122.2 root@192.168.122.2's password: Chop wood, carry water. # パスワードは password となっています。 ログイン出来れば成功です。 sshでログインできない時には、VNCで調べてみましょう。~ この例では、クラスタノードのport 5910版に対してVNCで接続することができます。 *リンク [#h938071e] [[A VM with Context & Network 1.4>http://www.opennebula.org/documentation:rel1.4:vmg]]~ [[Virtual Machine Definition File 1.4>http://www.opennebula.org/documentation:rel1.4:template]]
タイムスタンプを変更しない
*ゲストOSの構築 [#v8030a98] 実際にOpenNebulaを用いてゲストOSを構築してみましょう。 このページはOpenNebula公式の、[[A VM with Context & Network 1.4>http://www.opennebula.org/documentation:rel1.4:vmg]]を参考にしています。 *動作環境 [#xe032677] [[フロントエンドノードの構築>OpenNebula/フロントエンドノードの構築]]、 [[クラスタノードの構築>OpenNebula/クラスタノードの構築]]、 [[仮想ネットワークの構築>OpenNebula/仮想ネットワークの構築]]は何れも終わっているものとします。~ またクラスタノードはKVMノードとして登録しているものとします。 *ゲストOS用のイメージ [#ifa56b1b] ゲストOSのイメージはttylinuxを使用します。~ 公式ドキュメントで使用しているイメージは、設定ファイルのテンプレートなどもあるので、 ここでも同じ物を使用します。 フロントエンドノード上で、下記のコマンドを実行します。 # mkdir -p one-template # cd one-template # wget http://dev.opennebula.org/attachments/download/170/ttylinux.tar.gz # tar xvzf ttylinux.tar.gz *ゲストOS用の定義ファイル [#p99cc8c1] ttylinux.tar.gzを解凍したファイルの中に、ttylinux.oneがあります。 これがゲストOSの定義を行うファイルです。 NAME = ttylinux CPU = 0.1 MEMORY = 64 DISK = [ source = "/path/to/ttylinux.img", target = "hda", readonly = "no" ] NIC = [ NETWORK = "Small network" ] FEATURES=[ acpi="no" ] #CONTEXT = [ # hostname = "$NAME", # ip_public = "PUBLIC_IP", # files = "/path/to/init.sh /path/to/id_dsa.pub", # target = "hdc", # root_pubkey = "id_dsa.pub", # username = "opennebula", # user_pubkey = "id_dsa.pub" #] #はコメントです。今回は、コメントアウトしたまま使用します。~ まずはDISKの項目にある、"/path/to/ttylinux.img"を適切な値に変更します。~ 例えば、/home/nanodayo/one-templateに、イメージをダウンロードした場合は "/home/nanodayo/one-template/ttylinux.img"に書き換えます。~ ここで指定したファイルが、後でクラスタノードの適切な場所にコピーされるため、 フロントエンドノード上のパスを指定すればOKです。 続いて、NICの項目も変更します。~ デフォルトの設定では、付属のsmall_network.netを元に作ったネットワークを使用していますが、 ここでは[[仮想ネットワークの構築>OpenNebula/仮想ネットワークの構築]]で構築した、vnet0を使用します。 そしてテンプレートにはありませんが、OSという項目も必ず必要になります。 変更後のttylinux.oneは以下のようになります。 NAME = ttylinux CPU = 0.1 MEMORY = 64 OS=[ BOOT = "hd" ] DISK = [ source = "/home/nanodayo/one-template/ttylinux.img", target = "hda", readonly = "no" ] NIC = [ NETWORK = "vnet0" ] FEATURES=[ acpi="no" ] GRAPHICS = [ type = "vnc", listen = "0.0.0.0", port = "5910" ] #CONTEXT = [ # hostname = "$NAME", # ip_public = "PUBLIC_IP", # files = "/path/to/init.sh /path/to/id_dsa.pub", # target = "hdc", # root_pubkey = "id_dsa.pub", # username = "opennebula", # user_pubkey = "id_dsa.pub" #] NAMEはOpenNebula上で取り扱う名前を記述します。~ 省略可能で、省略した場合はone-<id>のルールで自動的に名前がつけられます。 GRAPHICSという項目も追加してあります。~ 指定したIPとポートに対して、VNCで接続することができます。~ 必須ではありませんが、画面の出力を見ることができるので、 トラブルシューティングがしやすくなります。~ またsshと異なり、ゲストOSへの接続性がなくても使用できるというメリットもあります。~ listenとportの項目では、クラスタノードが待ち受けるIPアドレスとport番号をそれぞれ指定します。~ *ゲストOSの作成と配置 [#l540676c] ファイルから、ゲストOSをフロントエンドノードへ登録します。下記のコマンドを実行します。 # onevm create ttylinux.one 登録後、onevm listでゲストOSの一覧を確認できます。 # onevm list ID NAME STAT CPU MEM HOSTNAME TIME 1 ttylinux pend 0 0 00 00:03:46 仮想ネットワーク同様、個々のゲストOSの情報はonevm show <ゲストOS>で参照できます。 ゲストOSの指定は、IDでもNAMEでも行えます。 # onevm show ttylinux VID : 1 UID : 0 STATE : PENDING LCM STATE : LCM_INIT DEPLOY ID : MEMORY : 0 CPU : 0 LAST POLL : 0 START TIME : 07/02 16:17:18 STOP TIME : 01/01 09:00:00 NET TX : 0 NET RX : 0 ....: Template :.... CPU : 0.1 DISK : READONLY=no,SOURCE=/home/nanodayo/opennebula/ttylinux.img,TARGET=hda FEATURES : ACPI=no MEMORY : 64 NAME : ttylinux NIC : BRIDGE=virbr0,IP=192.168.1.2,MAC=00:03:c0:a8:7a:02,NETWORK=vnet0,VNID=1 OS : BOOT=hd ゲストOSに割り当てられたIPアドレスも表示されています。~ 後でログインする際に必要になるので覚えておきましょう。 *クラスタノードへの配置 [#r0fe79bd] 実際にクラスタノードでゲストOSを起動させるには、onevm deployコマンドを使用します。~ # onevm deploy <vm_id> <host_id> <vm_id>にはゲストOSのID、<host_id>にはクラスタノードのIDをそれぞれ指定します。~ onevm deployを実行すると、実際にファイルのコピーなどが行われます。 *ゲストOSの起動確認 [#fd50903a] onevm deploy実行後、起動を確認します。 sshでログインできます。 # ssh root@192.168.122.2 root@192.168.122.2's password: Chop wood, carry water. # パスワードは password となっています。 ログイン出来れば成功です。 sshでログインできない時には、VNCで調べてみましょう。~ この例では、クラスタノードのport 5910版に対してVNCで接続することができます。 *リンク [#h938071e] [[A VM with Context & Network 1.4>http://www.opennebula.org/documentation:rel1.4:vmg]]~ [[Virtual Machine Definition File 1.4>http://www.opennebula.org/documentation:rel1.4:template]]
テキスト整形のルールを表示する