OpenNebula

OpenNebula 允许虚拟机动态放置或者重新放置在一个物理资源池上。这让虚拟机在任意有效的位置上驻留。
这段将详细描述用三台机器配置OpenNebula cluster:一台 Front-End主机,和两台运行虚拟机的 Compute Nodes 。Compute Nodes需要一个bridge配置,来允许虚拟机访问本地网络。更详细的信息参考 “Bridge“ https://help.ubuntu.com/10.04/serverguide/C/network-configuration.html#bridging 。
安装
首先,在 Front-End 的终端输入 :
sudo apt-get install opennebula
在每一台 Compute Nodes 安装:
sudo apt-get install opennebula-node
为了拷贝 SSH keys,oneadmin用户需要一个密码。在每一台机器上执行:
sudo passwd oneadmin
下一步,拷贝 oneadmin 用户的 SSH key 到 Compute Nodes,和到 Front-End的 authorized_keys 文件:
sudo scp /var/lib/one/.ssh/id_rsa.pub oneadmin@node01:/var/lib/one/.ssh/authorized_keys
sudo scp /var/lib/one/.ssh/id_rsa.pub oneadmin@node02:/var/lib/one/.ssh/authorized_keys
sudo sh -c “cat /var/lib/one/.ssh/id_rsa.pub >> /var/lib/one/.ssh/authorized_keys
为了让除了 oneadmin 以外的其他用户能ssh到每一台 Compute Node,给 Compute Nodes 的 SSH key 需要增加到Front-End的 /etc/ssh/ssh_known_hosts 文件。然后退出 SSH 会话,执行下面拷贝 SSH key 从 ~/.ssh/known_hosts 到 /etc/ssh/ssh_known_hosts:
sudo sh -c “ssh-keygen -f .ssh/known_hosts -F node01 1>> /etc/ssh/ssh_known_hosts”
sudo sh -c “ssh-keygen -f .ssh/known_hosts -F node02 1>> /etc/ssh/ssh_known_hosts”
注意:用适当的主机名字替换掉 node01 和 node02。
这允许 oneadmin 在不用交互输入密码的情况下使用scp,来部署一个镜像到 Compute Nodes.
在 Front-End 上创建一个目录,用来存储 VM镜像。你可以使用vmbuilder来创建 Ubuntu虚拟主机, 参考 “JeOS and vmbuilder” https://help.ubuntu.com/10.04/serverguide/C/jeos-and-vmbuilder.html 获得更详细的信息。
配置
OpenNebula Cluster 开始配置了,增加虚拟机到 cluster。
从终端提示符那里输入:
onehost create node01 im_kvm vmm_kvm tm_ssh
onehost create node02 im_kvm vmm_kvm tm_ssh
下一步,创建一个虚拟网络模板文件,名为 vnet01.template:
NAME = “LAN”
TYPE = RANGED
BRIDGE = br0
NETWORK_SIZE = C
NETWORK_ADDRESS = 192.168.0.0
注意:确保修改 192.168.0.0 为你的本地网络。
使用 onevnet 工具,增加这个虚拟网络给 OpenNebula :
onevnet create vnet01.template
现在,创建一个VM模板文件,名字为 vm01.template:
NAME = vm01
CPU = 0.5
MEMORY = 512
OS = [ BOOT = hd ]
DISK = [
source = "/var/lib/one/images/vm01.qcow2",
target = "hda",
readonly = "no" ]
NIC = [ NETWORK = "LAN" ]
GRAPHICS = [ type="vnc", listen="127.0.0.1", port="-1" ]
使用 onevm 启动虚拟机:
onevm submit vm01.template
用 onevm list 选项来查看虚拟机的信息。同样, onevm show vm01 选项将显示更多关于一个指定虚拟机的细节。
This entry was posted in 虚拟化. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>