85500790 2011-09-13
服务器环境:
ubuntu 11.04 amd64, 已在bios中把cpu的vt打开。
sudo apt-get install kvm libvirt-bin python-vm-builder
auto br0 iface br0 inet static address 192.168.0.10 network 192.168.0.0 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 bridge_ports eth0 bridge_stp off bridge_fd 0 bridge_maxwait 0 #网络ip什么的针对具体情况修改 post-up ip link set br0 address f4:6d:04:08:f1:5f #eth0的硬件地址 #重起网络服务 sudo service networking restart
sudo vmbuilder kvm ubuntu \ --suite natty \ --flavour virtual \ -o \ -v \ --arch amd64 -m 1024 --cpus 2 \ --libvirt qemu:///system \ --mirror http://apt-cacher代理ip:3142/ubuntu.cn99.com/ubuntu \ --bridge br0 \ --ip 客户机ip \ --hostname myvm \ --part vmbuilder.partition \ #这个文件里是硬盘分区的信息,需要自己创建 --user user \ --name user \ --pass xxxx \ --addpkg apache2 apache2-mpm-prefork \ apache2-utils apache2.2-common \ dbconfig-common libapache2-mod-php5 \ mysql-client php5-cli \ php5-gd php5-ldap \ php5-mysql wwwconfig-common \ mysql-server unattended-upgrades \ acpid openssh-server lsof iptables\ --ppa nijaba
virsh #到virsh命令界面 list --all #显示所有的虚拟机 define /etc/libvirt/qemu/myvm.xml #定义虚拟机,让virsh可以知道虚拟机状态 start myvm #启动域为myvm的虚拟机
由于我并没有安装openssh-server所以,启动之后并不能通过ssh去直接访问虚拟机。但查看虚拟机启动日志(sudo less /var/log/libvirt/qemu/myvm.log),可以发现,虚拟机开放了一个vnc的端口绑定到127.0.0.1,可以访问到虚拟机。我使用的是远程服务器来配置虚拟机,远程服务器里没有安装图形界面,所以不能用vncviewr进入虚拟机。使用vnc远程访问吧,在本地计算机上,先建立ssh tunnel,再用vncviewer连接。
ssh -L 5900:127.0.0.1:5900 username@serverip #这样会直接进入到客户机了,不要退出,否则就连接就失效了。 vncviewer #在弹出的框中输入127.0.0.1即可连接到客户机了