如何设置Xen 4.3在Debian Wheezy(7.0.2),然后升级到Jessie

如何设置Xen 4.3在Debian Wheezy(7.0.2)然后升级到Jessie

版本1.0
作者:Peter Okupski <okupski [at] widzew [dot] net>

这将是XEN(dom0-hypervisor)和一个虚拟系统(domU-guest)的快速简便的设置。 我想测试XEN是VMware之后的第二个经验,因为许多网页已经过时,并且有许多旧的修复错误和错误。 我已经决定用XEN给它一个旋转。

重要的提示:

谁将从本教程中获益:只有初学者想要测试简单的虚拟机,而不需要任何真正的云设备,如XenOrchestra,Cloudstack,Opencloud以及任何使用XAPI进行Xen Cloud Platform(XCP)的任何操作。我希望这样可以为任何人需要一个真正的云设备,至少具有web gui和几个用于存储/内存/ CPU分配的功能,目前它们不能应用于简单的Xen Xypervisor(或者它太多的工作:)

谁不是:对于任何需要任何高可用性和真正的云设备的用户/公司

我鼓励所有Xen新手观看这个视频,以获得Xen的感受和理解。

教程将分为以下几个部分:
  1. Debian安装快速简单的LVM设置
  2. 升级到Jessie,所以我们将最新的XEN修复
  3. XEN 4.3安装
  4. XEN几个调整提示
  5. XEN简单桥设置
  6. XEN设置使用模板创建主机
  7. 用oneliner创建第一个domU Guest系统;)


    使用LVM设置简单的Debian安装

    我建议使用非官方(但Debian)已经具有Broadcom网卡和其他需要的非免费固件的ISO,这可能会打破这个好的和简单的过程。

    Debian Unoffcial iso的

    debian安装程序初始设置后,请选择如下所示的自定义分区设置:我创建了以下分区:

    装载点 尺寸 评论
    / boot 200 MB (主要)(新分区的位置:开始)(ext3)(可引导标志:on < - 重要,否则您的系统将无法启动!)
    交换 1GB (逻辑)(新分区的位置:开始)(dom0 mem将被切成512M)
    / 6GB (逻辑)(新分区的位置:开始)(ext3)

    我们可以将其余的磁盘设置为LVM。我们需要接受更改并将其写入磁盘。

    您的安装应该完成,您需要将grub写入磁盘。之后安装将重启。

    安装完你的分区应该是这样的:
    root@xen-dom0:~# df -h 
    Filesystem Size Used Avail Use% Mounted on
    /dev/sda6 6.0G 2.0G 2.4G 30% /
    udev 10M 0 10M 0% /dev
    tmpfs 38M 268K 38M 1% /run
    tmpfs 5.0M 0 5.0M 0% /run/lock
    tmpfs 266M 0 266M 0% /run/shm
    /dev/sda1 180M 28M 140M 17% /boot

    现在我们将安装lvm,并创建第一个物理卷。

    apt-get install lvm2
    pvcreate /dev/sda7
      Physical volume "/dev/sda7" successfully created
      root@xen-dom0:/etc/xen-tools# pvscan
      PV /dev/sda7                      lvm2 [273.51 GiB]
      Total: 1 [273.51 GiB] / in use: 0 [0   ] / in no VG: 1 [273.51 GiB]
      root@xen-dom0:/etc/xen-tools# pvdisplay 
      "/dev/sda7" is a new physical volume of "273.51 GiB"
      --- NEW Physical volume ---
      PV Name               /dev/sda7
      VG Name               
      PV Size               273.51 GiB
      Allocatable           NO
      PE Size               0   
      Total PE              0
      Free PE               0
      Allocated PE          0
      PV UUID               1vKp2c-KbmM-w8Ql-noOe-U00J-hlr0-FsKwOM
    

    是时候创建卷组(vg0)(注意在创建之前更改字母p / v!)

    vgcreate vg0 /dev/sda7
    Volume group "vg0" successfully created

    让我们看看,如果一切顺利。

    vgdisplay
    --- Volume group ---
      VG Name               vg0
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  1
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                0
      Open LV               0
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               273.51 GiB
      PE Size               4.00 MiB
      Total PE              70018
      Alloc PE / Size       0 / 0   
      Free  PE / Size       70018 / 273.51 GiB
      VG UUID               2a3kn9-DvVA-3Qac-g4Wz-f2Xo-s5hk-Yh5fBc
    

    设置LVM后,我们可以使用这些不必要的包来移除我们的dom0:

    apt-get remove bsd-mailx exim4 exim4-base exim4-daemon-light nfs-common

    然后我们可以安装很少我们需要/可能需要:

    apt-get install mc screen ssh debootstrap python iproute bridge-utils libcurl3-dev

    纯粹的Debian 7.0.2安装后大约需要760MB。

    rootfs                                                  4.6G  764M  3.7G  18% /
    

    2.升级到Debian Jessie

    现在我们可以升级到测试(Jessie),因为我们需要XEN尽可能的新鲜

    使用这个生成器 - 它会节省你的时间:)和几个错误。 或者在/etc/apt/sources.list中将“wheezy”更改为“jessie”,将“stable”更改为“testing”。

    /etc/apt/sources.list

    deb http://ftp.pl.debian.org/debian testing main contrib non-free
    deb-src http://ftp.pl.debian.org/debian testing main contrib non-free
    deb http://ftp.debian.org/debian/ jessie-updates main contrib non-free
    deb-src http://ftp.debian.org/debian/ jessie-updates main contrib non-free
    deb http://security.debian.org/ jessie/updates main contrib non-free
    deb-src http://security.debian.org/ jessie/updates main contrib non-free
    

    第一:

    apt-get update; apt-get -y upgrade

    在更新过程中,将要求您重新启动服务 - 选择是。 接下来我们将下载我们需要的所有.deb(仅为了安全起见):

    apt-get -y --download-only dist-upgrade

    然后我们可以进行真正的更新。最好在此之后重新启动,所以内核将从3.2变为3.11。

    apt-get -y dist-upgrade

    整理:

    apt-get clean; apt-get autoclean;apt-get autoremove

    3. XEN 4.3安装

    首先我们应该检查我们的CPU是否支持硬件虚拟化

    egrep '(vmx|svm)' --color=always /proc/cpuinfo
    输出应该是这样的
    root@xxxx:~# egrep '(vmx|svm)' --color=always /proc/cpuinfo
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm tpr_shadow vnmi flexpriority
    flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm tpr_shadow vnmi flexpriority

    然后我们可以处理安装XEN:管理程序,xen感知内核和xen工具。 这可以通过metapackage来完成:

    apt-get install xen-linux-system xen-tools

    Debian Wheezy使用Grub 2,默认情况下首先列出正常的内核,然后只列出Xen虚拟机管理程序及其内核。您可以通过更改Grub的Xen配置脚本(20_linux_xen)的优先级来更改此选项以使Grub 2更愿意启动Xen )要高于标准的Linux配置(10_linux)。 这最容易使用dpkg-divert完成:

    dpkg-divert --divert /etc/grub.d/08_linux_xen --rename /etc/grub.d/20_linux_xen

    对Grub配置进行任何更新后,您必须运行以下命令来应用配置:

    update-grub

    Xen调试

    1. 将Dom0内存设置为512Mb并禁用“气球”,因此DomU将永远不会占用Dom0的内存
    2. 防止逻辑卷上的虚拟机出现在引导菜单中
    3. 禁用Xendomains保存并恢复
    4. 仅为dom0设置第一个CPU

    1.将Dom0内存设置为512Mb,并禁用baluning

    /etc/xen/xend-config.sxp

    (dom0-min-mem 512)
    (enable-dom0-ballooning no)
    

    2.防止逻辑卷上的虚拟机出现在引导菜单中

    修改grub:

    / etc / default / grub

    #allocate memory to dom0
    GRUB_CMDLINE_XEN="dom0_mem=512M"
    # Disable OS prober
    GRUB_DISABLE_OS_PROBER=true
    
    update-grub;reboot

    3.禁用Xendomains保存并恢复

    / etc / default / xendomains

    #XENDOMAINS_SAVE=/var/lib/xen/save
    XENDOMAINS_SAVE=                
     
    #XENDOMAINS_RESTORE=true
    XENDOMAINS_RESTORE=false
    

    4.仅限dom0到第1个CPU

    默认情况下,所有CPU在dom0和所有domU(guest)之间共享。 如果客户使用CPU时间太多,可能会破坏dom0的责任。 为了避免这种情况,可以向dom0授予一个(或多个)处理器内核,并将其固定到dom0。

    将以下选项添加到/ etc / default / grub中以将一个cpu内核分配给dom0:

    / etc / default / grub

    # Xen boot parameters for all Xen boots
    GRUB_CMDLINE_XEN="dom0_mem=512M dom0_max_vcpus=1 dom0_vcpus_pin"
    # Disable OS prober
    GRUB_DISABLE_OS_PROBER=true
    

    请记住运行update-grub之后!

    update-grub
    还要在 /etc/xen/xend-config.sxp中进行这些更改:

    /etc/xen/xend-config.sxp

    (dom0-cpus 1)
    

    !! 在重新启动之前,请检查您是否更新了grub ,然后重新启动服务器!

    XEN简单桥设置

    大多数设置将使用BRIDGEed配置,如果您正在计划简单的环境就足够了,但是如果您需要VLAN或任何ACL等,我强烈建议您使用OpenVSwitch。

    这是一个简单的桥梁的简单版本:

    apt-get install bridge-utils

    我们需要编辑: / etc / network / interfaces

    / etc / network / interfaces

     ##The loopback network interface 
    auto lo iface lo inet loopback
    iface eth0 inet manual
    auto xenbr0
    iface xenbr0 inet static address 10.0.9.100 netmask 255.255.255.0 network 10.0.9.0 broadcast 10.0.9.255 gateway 10.0.9.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 10.0.9.2 dns-search yourdomain.net bridge_ports eth0
    #other possibly useful options in a virtualized environment
    bridge_stp off # disable Spanning Tree Protocol bridge_waitport 0 # no delay before a port becomes available bridge_fd 0 # no forwarding delay
    之后,您应该重新启动网络连接
    /etc/init.d/networking restart

    并检查你的桥梁是否已经出现

    brctl show
    bridge name     bridge id               STP enabled     interfaces
    xenbr0          8000.001a6479cd8c       no              eth0
    

    6. XEN-Tools设置为虚拟机使用模板(guest-domU)

    现在让我们用模板创建我们的第一个新的domU的形象。 我们需要编辑文件:

    /etc/xen-tools/xen-tools.conf

    lvm = vg0 # your volume group which we created before
    install-method = debootstrap # This will launch debian installer
    size   = 10Gb      # Disk image size.
    memory = 512Mb    # Memory size
    swap   = 2Gb    # Swap size
    noswap = 1      # Don't use swap at all for the new system.
    fs     = ext4     # use the EXT3 filesystem for the disk image.
    dist   = `xt-guess-suite-and-mirror --suite` # Default distribution to install.
    image  = sparse   # Specify sparse vs. full disk images.
    gateway    = 10.0.9.1 # Your gateway, that dom0 is also using with bridge
    netmask    = 255.255.255.0 # no comments needed;)
    broadcast  = 10.0.9.255 # Your broadcast 
    bridge = xenbr0 # Here we should use the bridge we created, xen will make it into eth0 on domU.
    cachedir = /var/cache/xen-tools/archives/ # Place for *.debs for further use
    passwd = 1 #This will ask for a root password to create on new machine
    kernel = /boot/vmlinuz-`uname -r` #It will use same kernel as dom0 is using( this is crucial, to avoid problems)
    initrd = /boot/initrd.img-`uname -r` #Same here for initrd
    mirror = `xt-guess-suite-and-mirror --mirror` 
    mirror = ftp://ftp.pl.debian.org/debian/ #Enter you mirror of debian
    ext3_options     = noatime,nodiratime,errors=remount-ro #Simple options to apply for new machine
    ext2_options     = noatime,nodiratime,errors=remount-ro
    xfs_options      = defaults
    reiserfs_options = defaults
    btrfs_options    = defaults
    boot = 1 # Do we want to boot our new machine after creating it. Hell yeah!
    

    7.创建第一个domU访客

    现在我们可以创建我们的第一个domU主机:
    xen-create-image --hostname domU-test --dist=jessie --vcpus=4 --ip=10.0.9.101

    这将需要大约3-4分钟,具体取决于连接速度,CPU和磁盘速度。 一旦完成,我们可以查找它,如果它的工作。

    xm list
    Name                                        ID   Mem VCPUs      State   Time(s)
    Domain-0                                     0   512     1     r-----     93.8
    domU-test                                    1   512     4     -b----     23.9
    

    我建议阅读xen-create-image -help ,因为它将给你一个想法,你可以改变它提供选项来创建任何distribution.Example:运行命令后和所有其他的东西,你可能需要。 还可以选择生成图像并将其用于准备启动系统模板,而无需每次运行安装程序3分钟。

    现在,您可以使用ssh登录到新的主机。

    下面你可以找到本教程中使用的链接:

    1. Xen在Debian Wiki
    2. OpenVSwitch
    3. Xen 4在Debian Wheezy
    4. 调整XEN - XEN维基
    5. Apt来源发生器
    6. Xen最佳实践
    7. 如何使用LVM
    赞(52) 打赏
    未经允许不得转载:优客志 » 系统运维
    分享到:

    觉得文章有用就打赏一下文章作者

    支付宝扫一扫打赏

    微信扫一扫打赏