您的位置:首页 > 其它

ubuntu1404安装xen

2016-06-23 19:44 537 查看
网址:https://help.ubuntu.com/community/Xen

(1)During installation of Ubuntu

During the install of Ubuntu for the partitioning method choose “Guided - use the entire disk and setup LVM”. Then,

when prompted to enter “Amount of volume group to use for guided partitioning:” Enter a value just large enough for the Xen Dom0 system,

leaving the rest for virtual disks. Enter a value smaller than the size of your installation drive. For example 10 GB or even 5 GB should be large enough for

a minimal Xen Dom0 system. Entering a percentage of maximum size (e.g. 25%) is also a reasonable choice.

在安装ubuntu为dom0时,执行到硬盘分区时,选择Guided - use the entire disk and setup LVM,为os选择合适的硬盘大小,不要超过整盘的%25.剩下的盘作为geust VM的lvm存储。

(2)Installing Xen

Install a 64-bit hypervisor. (A 64-bit hypervisor works with a 32-bit dom0 kernel, but allows you to run 64-bit guests as well.)

$ sudo apt-get install xen-hypervisor-amd64

As of Ubuntu 14.04, GRUB will automatically choose to boot Xen first if Xen is installed. If you’re running a version of Ubuntu before 14.04, you’ll have to

modify GRUB to default booting to Xen; see below for details.

Now reboot:

$ sudo reboot

And then verify that the installation has succeeded:

$ sudo xl list

Name ID Mem VCPUs State Time(s)

Domain-0 0 945 1 r—– 11.3

(3)Network Configuration

(i) It’s assumed that you are using a wired interface for your network configuration. WiFi networks are tricky to virtualize and many times not even possible.

If you are feeling adventurous, please start here Xen in WiFi Networks.

For this example, we will use the most common Xen network setup: bridged. You will also find an example on how to set up Open vSwitch which has been available since Xen 4.3.

禁用Network Manager

Disable Network Manager

If you are using Network Manager to control your internet connections, then you must first disable it as we will be manually configuring the connections.

Please note that you are about to temporarily lose your internet connection so it’s important that you are physically connected to the machine.

As documented in NetworkManager:

sudostopnetwork−manager echo “manual” | sudo tee /etc/init/network-manager.override

Using bridge-utils

sudoapt−getinstallbridge−utilsInabridgedsetup,itisrequiredthatweassigntheIPaddresstothebridgedinterface.Configurenetworkinterfacessothattheypersistafterreboot:1)配置桥接网络 sudo vi /etc/network/interfaces

auto lo eth0 xenbr0

iface lo inet loopback

iface xenbr0 inet dhcp

bridge_ports eth0

iface eth0 inet manual

Restart networking to enable xenbr0 bridge:

$ sudo ifdown eth0 && sudo ifup xenbr0 && sudo ifup eth0

The brctl command is useful for providing addition bridge information. See: man brctl

2)如果打算使用openvswitch,则进行以下的设置

Using Open vSwitch

$ sudo apt-get install openvswitch-switch

In a bridged setup, it is required that we assign the IP address to the bridged interface. Configure network interfaces so that they persist after reboot:

$ sudo vi /etc/network/interfaces

interfaces(5) file used by ifup(8) and ifdown(8)

auto lo eth0

iface lo inet loopback

iface eth0 inet manual

allow-hotplug ovsbr0

iface ovsbr0 inet dhcp

Set up Open vSwitch

sudoovs−vsctladd−brovsbr0 sudo ovs-vsctl set Bridge ovsbr0 stp_enable=false other_config:stp-max-age=6 other_config:stp-forward-delay=4

sudoovs−vsctllistBridge sudo ovs-vsctl add-port ovsbr0 eth0

Now bring the interfaces up and acquire an IP address through DHCP. You should have your internet connection back at this point.

sudoiplinkseteth0up sudo dhclient ovsbr0

Recommended Bridge Settings

For performance and security reasons, it’s highly recommended2 that netfilter is disabled on all bridges.

$ sudo vi /etc/sysctl.conf

net.bridge.bridge-nf-call-ip6tables = 0

net.bridge.bridge-nf-call-iptables = 0

net.bridge.bridge-nf-call-arptables = 0

$ sudo sysctl -p /etc/sysctl.conf

Note: These settings are created in /proc/sys/net. The bridge folder only appears to be created after first creating a bridge with the ”brctl’ command.

(4)Creating vms

There are many options for installing guest images:

virt-builder: A program for building VM disk images; part of the libguestfs set of tools

xen-tools: A set of scripts for creating various PV guests

virt-manager: A management system using libvirt

Converting an existing installation

Downloading pre-build guest images (e.g. http://wiki.xen.org/wiki/Guest_VM_Images)

Or you can manually create one, as described below.

Manually Create a PV Guest VM

In this section we will focus on Paravirtualized (or PV) guests. PV guests are guests that are made Xen-aware and therefore can be optimized for Xen.

As a simple example we’ll create a PV guest in LVM logical volume (LV) by doing a network installation of Ubuntu (other distros such as Debian, Fedora,

and CentOS can be installed in a similar way).

List your existing volume groups (VG) and choose where you’d like to create the new logical volume.

$ sudo vgs

Create the logical volume (LV).

$ sudo lvcreate -L 10G -n lv_vm_ubuntu /dev/

Confirm that the new LV was successfully created.

$ sudo lvs

Get Netboot Images

Choose an archive mirror https://launchpad.net/ubuntu/+archivemirrors.

sudomkdir−p/var/lib/xen/images/ubuntu−netboot/trusty14LTS cd /var/lib/xen/images/ubuntu-netboot/trusty14LTS

wgethttp:///ubuntu/dists/trusty/main/installer−amd64/current/images/netboot/xen/vmlinuz wget http:///ubuntu/dists/trusty/main/installer-amd64/current/images/netboot/xen/initrd.gz
Set Up Initial Guest Configuration

cd/etc/xen cp xlexample.pvlinux ubud1.cfg

$ vi ubud1.cfg

name = "ubud1"

kernel = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/vmlinuz"
ramdisk = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/initrd.gz"
#bootloader = "/usr/lib/xen-4.4/bin/pygrub"

memory = 1024
vcpus = 1

# Custom option for Open vSwitch
vif = [ 'script=vif-openvswitch,bridge=ovsbr0' ]

disk = [ '/dev/<VGNAME>/lv_vm_ubuntu,raw,xvda,rw' ]

# You may also consider some other options
# [[http://xenbits.xen.org/docs/4.4-testing/man/xl.cfg.5.html]]


Start the VM and connect to the console to perform the install.

$ sudo xl create -c /etc/xen/ubud1.cfg

Once installed and back to command line, modify guest configuration to use the pygrub bootloader. These lines will change

$ vi /etc/xen/ubud1.cfg

#kernel = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/vmlinuz"
#ramdisk = "/var/lib/xen/images/ubuntu-netboot/trusty14LTS/initrd.gz"
bootloader = "/usr/lib/xen-4.4/bin/pygrub"


Now let’s restart the VM with the new bootloader. (If the VM didn’t shutdown after the install above, you may manually shut it down.)

sudoxlshutdownubud1 sudo xl create -c /etc/xen/ubud1.cfg

Quick XL Console Tips

Connect to the VM console

$ sudo xl console ubud1

Disconnect from the console

Ctrl+]

Manually installing an HVM Guest VM

Download Install ISO.

http://www.ubuntu.com/download/desktop

sudo pvs

choose your VG

Create a LV

sudo lvcreate -L 4G -n ubuntu-hvm /dev/

Create a guest config file /etc/xen/ubuntu-hvm.cfg

builder = “hvm”

name = “ubuntu-hvm”

memory = “512”

vcpus = 1

vif = [”]

disk = [‘phy:/dev//ubuntu-hvm,hda,w’,’file:/root/ubuntu-12.04-desktop-amd64.iso,hdc:cdrom,r’]

vnc = 1

boot=”dc”

xl create /etc/xen/ubuntu-hvm.cfg

vncviewer localhost:0

After the install you can optionally remove the CDROM from the config and/or change the boot order.

For example /etc/xen/ubuntu-hvm.cfg:

builder = "hvm"
name = "ubuntu-hvm"
memory = "512"
vcpus = 1
vif = ['']
#disk = ['phy:/dev/<VG>/ubuntu-hvm,hda,w','file:/root/ubuntu-12.04-server-amd64.iso,hdc:cdrom,r']
disk = ['phy:/dev/<VG>/ubuntu-hvm,hda,w']
vnc = 1
boot="c"
#boot="dc"


Xen Toolstack Choices

http://wiki.xen.org/wiki/Choice_of_Toolstacks

Xen and xl

xl is a new toolstack written from the ground up to be a replacement for xend and xm. In Xen 4.4, xl is the default toolstack and xend is deprecated.

It is planned to be removed in Xen 4.5.

xl is designed to be command-for-command compatible with xm. You should be able to use the same config file and the same commands you’re used to;

just use “xl” instead of “xm”.

To switch back to xm, do the following:

sudo sed -i ‘s/TOOLSTACK=.*+/TOOLSTACK=”xm”/’ /etc/default/xen

sudo reboot

sudo xm list

xl and xm are very similar in functionality with a few notable exceptions: http://wiki.xen.org/wiki/XL

Xen and Libvirt

Ubuntu 14.04 contains libvirt 1.2.2, which contains support for Xen, both libxl and xend. If you specify “xen:///” as the hypervisor,

it will automatically detect which is the appropriate method to use.

sudo apt-get install virtinst

sudo virt-install –connect=xen:/// –name u14.04 –ram 1024 –disk u14.04.img,size=4 –location http://ftp.ubuntu.com/ubuntu/dists/trusty/main/installer-amd64/

Xen and XAPI

http://packages.ubuntu.com/precise/xcp-xapi

http://manpages.ubuntu.com/manpages/precise/man1/xapi.1.html

http://manpages.ubuntu.com/manpages/precise/man1/xe.1.html

Other tips and tricks

Create and format disk image file

sudo mkdir -p /var/lib/xen/images

sudo dd if=/dev/zero of=/var/lib/xen/images/ubuntu-guest.img bs=1M seek=3096 count=0

sudo mkfs.ext4 -F /var/lib/xen/images/ubuntu-guest.img

Xen and Grub on older versions of Ubuntu

Modify GRUB to default to booting Xen (“Xen 4.1-amd64” should be replaced with the appropriate name, in 12.10 the line is “Ubuntu GNU/Linux, with Xen hypervisor”.

The current string can be obtained by looking for one of the menuentry lines in /boot/grub/grub.cfg. In theory the first element created by the 20_linux_xen script):

sudo sed -i ‘s/GRUB_DEFAULT=.*+/GRUB_DEFAULT=”Xen 4.1-amd64”/’ /etc/default/grub

sudo update-grub

See Also

http://wiki.xen.org/wiki/XenPCIpassthrough

http://wiki.xen.org/wiki/Xen_VGA_Passthrough

External Links

http://wiki.xen.org/wiki/Debian_Guest_Installation_Using_Debian_Installer - Netboot installation of PV guests

http://wiki.xen.org/wiki/HostConfiguration/Networking - Networking configuration details from Xen.org wiki

http://libvirt.org/uri.html#URI_file - Libvirt xend configuration

http://wiki.xen.org/wiki/Xen_Man_Pages - Xen Man pages

http://xenbits.xen.org/docs/unstable/man/xmdomain.cfg.5.html - xm config options

http://xenbits.xen.org/docs/unstable/man/xl.cfg.5.html xl config options

http://xenbits.xen.org/docs/unstable/misc/xl-disk-configuration.txt xl disk configuration

http://serverfault.com/questions/390373/xen-4-1-host-dom0-with-blktap-disks-tapaio-not-connecting blktap issues and fixes.

Xen Wiki: What is the Xen Project Hypervisor (1)

Recommended Bridge Settings: Network Configuration Examples (2)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: