设为首页 收藏本站
查看: 1493|回复: 0

[经验分享] squeeze+xen

[复制链接]

尚未签到

发表于 2015-4-13 12:13:22 | 显示全部楼层 |阅读模式
  http://www.iyunv.com/Linux/2010-04/25351.htm
  =========================
  http://www.liaoxuefeng.com/archives/143
Debian Squeeze上安装xen

廖雪峰 | 2011-02-16 - 2:54 PM
  现在服务器虚拟化趋势越来越明显了,一方面服务器硬件越来越强大,一台服务器只跑一个系统非常浪费,另一方面虚拟机管理比物理机方便得多,而且迁移非常容易。
  为了搭建测试环境,决定把一台测试服务器变为运行xen的虚拟服务器。服务器硬件配置:
  Intel Core 2 Quad 2.66 GHz,4核8线程,4GB 内存,500GB 硬盘
  操作系统:Debian 6.0 Squeeze AMD64,因为Debian的维护和管理非常方便,而且6.0已经将xen升级到4.0版本了,在Squeeze上创建xen非常容易。
  主要参考官方文档:
  http://wiki.debian.org/Xen
  1. 安装Debian 6 Squeeze AMD64:
  分区:全部分给LVM,VG:vg001
  /分区:vg001-linux–root
/home分区:vg001-linux–home
/srv分区:vg001-linux–srv
  ext4格式,各10GB。
  swap分区:4GB
  注意:强烈推荐使用lvm,因为xen运行在lvm上的IO效率比文件高好几倍,而且便于管理。
  2. 安装xen image:
  aptitude -P install xen-hypervisor-4.0-amd64 linux-image-xen-amd64
  3. 修改grub
  由于xen kernel不是默认启动的kernel,修改grub,把xen kernel排到第一位:
  mv -i /etc/grub.d/10_linux /etc/grub.d/50_linux
update-grub2
  另外,根据Debian的官方wiki,如果内存大于32GB,需要设置dom0_mem=32G,否则xen无法启动。为了避免dom0过多占用内存导致domU内存不够,建议加上dom0_mem参数。我直接复制一份20_linux_xen,然后在此基础修改:
  cp /etc/grub.d/20_linux_xen /etc/grub.d/10_linux_xen_modified
vi /etc/10_linux_xen_modified
  找到
xen_args=”$6″
改为
xen_args=”dom0_mem=256M”
  再次运行update-grub2。
  4. 关闭save模式
  修改/etc/default/xendomains,这样dom0停止时所有的domU都将正常shutdown而不是save:
  将
XENDOMAINS_RESTORE=true
改为
XENDOMAINS_RESTORE=false
  将
XENDOMAINS_SAVE=/var/lib/xen/save
改为
XENDOMAINS_SAVE=”"
  5. 启动bridge模式
  修改/etc/xen/xend-config.sxp:
  (network-script ‘network-bridge’)
  如果某些xen不在你的控制之内,则domU的IP设置错误可能会导致整个网络工作不正常,所以可以加上:
  (network-script ‘network-bridge antispoof=yes’)
  这样确保domU无法将IP设置为dom0的IP或网关IP。
  6. 安装xen-tools
  xen-tools用于简化domU的安装:
  aptitude install xen-tools
  xen-tools提供了一系列脚本来管理和简化xen的创建,需要修改/etc/xen-tools/xen-tools.conf:
  设置使用lvm:
  lvm = vg001
  vg001是我的VG名称,在安装分区时指定的,你需要替换成你的VG名称。
  设定虚拟机大小:
  size = 50Gb
memory = 512Mb
swap = 1Gb
fs = ext4
  设置网络:
  gateway = x.x.x.x
netmask = 255.255.255.0
  设置安装squeeze的镜像,为了避免网络下载,强烈推荐用ISO光盘做本地镜像,也可避免某些源缺少重要包导致domain安装后无法启动:
  mirror_squeeze = http://localhost/
  创建时输入root口令:
  passwd = 1
  7. 创建mirror源
  为了使用ISO镜像,可以先将ISO挂载:
  mkdir /srv/iso_install
  mount -o loop /path/to/the_iso_file.iso /srv/iso_install
  然后将nginx或apache配置www指向上述目录即可变成一个http源,端口号我设置为80,所以mirror地址就是http://localhost/。
  也可略过此步骤使用debian官方源,如http://ftp.us.debian.org/debian,缺点是安装xen虚拟机需要从网络下载,时间长达15-30分钟。
  8. 重启
  查看kernel已经变成xen kernel:
  # uname -a
Linux debian-test 2.6.32-5-xen-amd64 #1 SMP Wed Jan 12 05:46:49 UTC 2011 x86_64 GNU/Linux
  9. 安装第一个xen虚拟机
  将命名为xen-test-mysql,用于运行MySQL服务器:
  xen-create-image --hostname xen-test-mysql --ip 192.168.1.211 --vcpus 2 --dist squeeze --verbose
  参数说明:
  --hostname 虚拟机名称
  --ip 指定IP地址
  --vcpus 指定虚拟机可以使用的CPU个数
  --dist 指定安装的linux发行版,和dom0一致的发行版(这里是Squeeze)安装最简单也最容易配置
  –verbose 生成详细的日志
  如果domain已经存在,加上--force参数重新创建(覆盖已有的配置和虚拟机磁盘)。
  然后开始安装,会看到提示,创建了/dev/vg001/xen-test-mysql-swap和/dev/vg001/xen-test-mysql-disk卷,分别用于xen的swap和磁盘。
  安装过程大概2-5分钟,安装完成后提示输入root口令,然后安装结束,提示log文件保存在/var/log/xen-tools/xen-test-mysql.log。
  10. 启动xen domU
  刚才创建的虚拟机配置文件位于/etc/xen/xen-test-mysql.cfg,启动该虚拟机的命令为:
  xm create -c /etc/xen/xen-test-mysql.cfg
  加入-c参数后可以立刻连接到该domain的console,就可以登录到该domain中。如果没有加-c参数,可以先查看当前运行的domain:

root@debian-test:~# xm list
Name                                        ID   Mem VCPUs      State   Time(s)
Domain-0                                     0   249     4     r—–    515.0
xen-test-mysql                               1   512     2     -b—-     18.3  然后用xm console xen-test-mysql连接到该domain的console。
  要退出domain的console并回到dom0的console,只需按下Ctrl+]。
  默认的domU会复制dom0的配置,所以apt的配置还需要修改,修改后就可以正常安装软件了。
  11. domU自动启动
  要使domU随dom0启动时自启动,可以在/etc/xen/auto目录下创建对应cfg的软连接:
  mkdir /etc/xen/auto
ln -s /etc/xen/xen-test-mysql.cfg /etc/xen/auto
  总结:
  配置如何将一台Debian Linux虚拟成多台Linux,由于主要运行web,所以不考虑图形界面,也不考虑虚拟运行Windows。
  
  http://hi.baidu.com/hpercy/blog/item/0c454c674c34d5770c33fa1d.html

Debian6.0 squeeze安装运行xen--Percy
2011年05月20日 星期五 10:53

  Debian6.0squeeze安装运行xen及实例guest的创建--Percy
  安装系统时,切记要留足LVM空间给VM,否则将创造VM时提示空间不足导致创造失败
  分区:全部分给LVM,VG:xenvg
  
  /分区:xenlv
   /home分区:homelv
   /boot分区:bootlv
  
  ext4格式,各10GB。
  
  swap分区:4GB
  
  注意:强烈推荐使用lvm,因为xen运行在lvm上的IO效率比文件高好几倍,而且便于管理。
  Dom0(host)
  一、首先安装hypervisor , xen kernel和xen-tools
  1、64位操作系统:
  #aptitude -P install xen-hypervisor-4.0-amd64 linux-image-xen-amd64
  2、32位操作系统:
  #aptitude -P install xen-hypervisor-4.0-i386 linux-image-xen-686
  3、Debian Squeeze使用Grup 2他默认启动的内核是linux本身的内核,除非你将xen的内核列到首位。为了使xen hypervisor成为默认启动的内核,必须把它排在第一位。
  #mv -i /etc/grub.d/10_linux /etc/grub.d/50_linux
  #update-grub2
  4、为了避免使用安装在volume group上的每一个虚拟机的引导项,我们禁止GRUP OS探测器。
   编辑/etc/default/grub加入以下语句:
  #vi /etc/default/grub
  # Disable OS prober to prevent virtual machines on logical volumes from appearing in the boot menu.
  GRUB_DISABLE_OS_PROBER=true
  5、为了避免dom0过多占用内存导致domU内存不够,建议加上dom0_mem参数。我直接复制一份20_linux_xen,然后在此基础修改:
  
  #cp /etc/grub.d/20_linux_xen /etc/grub.d/10_linux_xen_modified
  # vi /etc/grub.d/10_linux_xen_modified
  找到
   xen_args=”$6″
   改为
   xen_args=”dom0_mem=256M”
  
  再次运行update-grub2
  6、关闭save。在默认的情况下,当xen dom0关闭或重启,他将会尝试保存实例的状态,当时这也常常出现问题。
  编辑/etc/default/xendomains
  #vi /etc/default/xendomains
  将
   XENDOMAINS_SAVE=/var/lib/xen/save
   改为
   XENDOMAINS_SAVE=""
  
  将
   XENDOMAINS_RESTORE=true
   改为
   XENDOMAINS_RESTORE=false
   7、启动bridge模式
  修改/etc/xen/xend-config.sxp:
   #vi /etc/xen/xend-config.sxp
  (network-script ‘network-bridge’)
  
  如果某些xen不在你的控制之内,则domU的IP设置错误可能会导致整个网络工作不正常,所以可以加上:
  
  (network-script ‘network-bridge antispoof=yes’)
  
  这样确保domU无法将IP设置为dom0的IP或网关IP。
  
  8、安装xen-tools
  # aptitude install xen-tools
  xen-tools提供了一系列脚本来管理和简化xen的创建,需要修改/etc/xen-tools/xen-tools.conf:
   #vi /etc/xen-tools/xen-tools.conf
  设置使用lvm:
  
  lvm = vg001
  
  vg001是我的VG名称,在安装分区时指定的,你需要替换成你的VG名称。
  
  设定虚拟机大小:
  
  size = 50Gb
   memory = 512Mb
   swap = 1Gb
   fs = ext4
  
  设置网络:
  
  gateway = x.x.x.x
   netmask = 255.255.255.0
  
  设置安装squeeze的镜像,为了避免网络下载,强烈推荐用ISO光盘做本地镜像,也可避免某些源缺少重要包导致domain安装后无法启动:
  
  mirror_squeeze = http://localhost/
  
  创建时输入root口令:
  
  passwd = 1
  
  8、重启并查看kernel
  #uname –a
  
  9、创建本地源
  安装apache2
  #aptitude install apache2
  创建文件夹srv iso
  #mkdir /var/srv  /var/iso
  将debian镜像上传到/var/iso
  vi /etc/apache2/sites-available/default
  修改以下两项
  DocumentRoot /var/srv
  
  mount -o loop /var/iso/the_iso_file.iso /var/srv
  然后将nginx或apache配置www指向上述目录即可变成一个http源,端口号我设置为80,所以mirror地址就是http://localhost/。方法如下:
  编辑/etc/apache2/sites-available/default
  
  也可略过此步骤使用debian官方源,如http://ftp.us.debian.org/debian,缺点是安装xen虚拟机需要从网络下载,时间长达15-30分钟。
  
  10创建第一个xen虚拟机
  创建第一个xen虚拟机
  xen-create-image --hostname vm01 --ip 10.3.1.238 --vcpus 4 --dist squeeze –verbose
  参数说明:
  
  --hostname虚拟机名称
  
  --ip指定IP地址
  
  --vcpus指定虚拟机可以使用的CPU个数
  
  --dist指定安装的linux发行版,和dom0一致的发行版(这里是Squeeze)安装最简单也最容易配置
  
  –verbose生成详细的日志
  
  如果domain已经存在,加上--force参数重新创建(覆盖已有的配置和虚拟机磁盘)。
  
  然后开始安装,会看到提示,创建了/dev/xenvg/vm01-swap和/dev/xenvg/vm01-disk卷,分别用于xen的swap和磁盘。
  
  安装过程大概2-5分钟,安装完成后提示输入root口令,然后安装结束,提示log文件保存在/var/log/xen-tools/vmo1.log。
  如果出现Error:  No recognised installation type那是因为没开启lvm支持。见第八条。
  
  11、启动xen domu
  刚才创建的虚拟机配置文件位于/etc/xen/xen-test-mysql.cfg,启动该虚拟机的命令为:
  
  xm create -c /etc/xen/vm01.cfg
  加入-c参数后可以立刻连接到该domain的console,就可以登录到该domain中。如果没有加-c参数,可以先查看当前运行的domain:
  
  root@debian-test:~# xm list
  Name                                        ID   Mem VCPUs      State   Time(s)
  Domain-0                                     0   249     4     r—–    515.0
  first                               1   512     2     -b—-     18.3
  然后用xm console first连接到该domain的console。
  
  要退出domain的console并回到dom0的console,只需按下Ctrl+]。
  
  默认的domU会复制dom0的配置,所以apt的配置还需要修改,修改后就可以正常安装软件了。
  
  12、domU自动启动
  要使domU随dom0启动时自启动,可以在/etc/xen/auto目录下创建对应cfg的软连接:
  
  mkdir /etc/xen/auto
  ln -s /etc/xen/vm01.cfg /etc/xen/auto
  
  
  参考文档:http://www.liaoxuefeng.com/archives/143
            http://wiki.debian.org/Xen
  

  

  

  


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-56650-1-1.html 上篇帖子: xen之基本搭建 下篇帖子: xen创建pvm和hvm的过程
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表