热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

xen半虚拟化与全虚拟化

文章标题:xen半虚拟化与全虚拟化。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  本文只涉及到如何实现xen的全虚拟化与半虚拟化,也就是linux下安装linux,与linux下安装windows。

  原理性的东西,以及优化,本人还在研究中。

  环境centos 5.2 64bit

  安装时候已经包含虚拟化,所以启动系统后已经是带xen的内核,已经安装好xen相关软件。

  xen虚拟机的存储有多种方式,根据官方手册上说的有files,lvm,nfs等。我选择了files作为xen虚拟机的存储,因为这样比较简单,当然会有弱点,后面会说到。

  先说如何实现半虚拟化:

  检查cpu的指令集是否包含pae,这个应该不成问题,我小黑的cpu是T2370都支持。

  1.先dd出一个img文件作为虚拟机的安装空间

  dd if=/dev/zero of=/xen/image/xen1.img bs=1M count=30720 数值大小可以根据自己需要调整。

  2.接着就是安装虚拟机了,安装方式跟宿主机安装一样,可以采取光驱,网络,由于我已经建好了ks的源,方便

  期间我就采用ks来安装虚拟机的系统。

  执行如下命令:

  virt-install -n xen1 -r 256 -p --nographic -f /xen/images/xen1.img  -l http://192.168.32.132/centos32bit -x "ip=192.168.32.31 netmask=255.255.255.0 gateway=192.168.32.1 ks=http://192.168.32.132/centos32bit/ksxen.cfg"

  成功的话就会自动安装完系统,直到重启进入系统。ks文件就不贴了,和宿主机的配置文件基本一样需要做调整的是分区的名字,宿主机是类似sda的形式,而虚拟机是类似xvda的形式。

  那些控制xen的基本命令也不说了,网上一大堆,建议看下官方的xen+man.pdf这本书,很详细。

  接着说全虚拟化:

  linux安装windows前,我有个误区,想windows是图形的,linux不装图形界面怎么装啊,后来才明白过来,是通过vnc连接,即可以看到图形界面。安装vnc配置vnc也不再叙述,配置下很简单,客户端通过vnc连接到linux的时候一定要输入ip:number(number=1,2...)只输入ip就只能看到一片白的屏幕,什么都没有。

  然后先传个iso到宿主机上去,这里要说明下了,网上关于全虚拟化有各种说法,说什么要修改配置文件,修改启动项目,我照着做试了好几遍都不行,后来突然之间找到了个方法解决。

  照样dd出img文件,

  执行 virt-install -n win2003 -r 512 --vcpus=2 --file=/xen/image/win2003.img --vnc -v -c /root/windows2003_sp2.iso  --vnc --vncport=5902  --os-type='windows'

  然后会自动生成win2003的配置文件。

  接着通过vnc可以安装系统,(说明下,当时看到蓝底白字的图像时候,很兴奋啊)

  当windows复制完需要的文件时候,重启,这时候会出问题了。屏幕是会提示一个错误,安装程序不会继续下去了,这时候删除那个在/etc/xen目录下关于win2003的配置文件,再执行上述命令,再自动生成win2003的配置文件,通过vnc查看,安装程序顺利进行。直到重新启动系统,顺利进去win2003系统,这时候安全起见注意开启win2003的远程桌面,关闭宿主机的vnc服务。

  以后通过远程桌面管理win2003.

  上述简单的说明了下如何实现半虚拟化与全虚拟化的步骤,行文不是很好,希望大家可以看懂。

  补充下,采用files作为xen虚拟机的存储,io速度会很慢,基本是宿主机的一半,所以用在生产机器上会有严重问题。听说采取lvm的虚拟分区效果不错,正打算有时间去测试下。


推荐阅读
  • CentOS 7部署KVM虚拟化环境之一架构介绍
    本文介绍了CentOS 7部署KVM虚拟化环境的架构,详细解释了虚拟化技术的概念和原理,包括全虚拟化和半虚拟化。同时介绍了虚拟机的概念和虚拟化软件的作用。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
  • 本文比较了eBPF和WebAssembly作为云原生VM的特点和应用领域。eBPF作为运行在Linux内核中的轻量级代码执行沙箱,适用于网络或安全相关的任务;而WebAssembly作为图灵完备的语言,在商业应用中具有优势。同时,介绍了WebAssembly在Linux内核中运行的尝试以及基于LLVM的云原生WebAssembly编译器WasmEdge Runtime的案例,展示了WebAssembly作为原生应用程序的潜力。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • Linux环境变量函数getenv、putenv、setenv和unsetenv详解
    本文详细解释了Linux中的环境变量函数getenv、putenv、setenv和unsetenv的用法和功能。通过使用这些函数,可以获取、设置和删除环境变量的值。同时给出了相应的函数原型、参数说明和返回值。通过示例代码演示了如何使用getenv函数获取环境变量的值,并打印出来。 ... [详细]
  • 成功安装Sabayon Linux在thinkpad X60上的经验分享
    本文分享了作者在国庆期间在thinkpad X60上成功安装Sabayon Linux的经验。通过修改CHOST和执行emerge命令,作者顺利完成了安装过程。Sabayon Linux是一个基于Gentoo Linux的发行版,可以将电脑快速转变为一个功能强大的系统。除了作为一个live DVD使用外,Sabayon Linux还可以被安装在硬盘上,方便用户使用。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • centos安装Mysql的方法及步骤详解
    本文介绍了centos安装Mysql的两种方式:rpm方式和绿色方式安装,详细介绍了安装所需的软件包以及安装过程中的注意事项,包括检查是否安装成功的方法。通过本文,读者可以了解到在centos系统上如何正确安装Mysql。 ... [详细]
  • CentOS7.8下编译muduo库找不到Boost库报错的解决方法
    本文介绍了在CentOS7.8下编译muduo库时出现找不到Boost库报错的问题,并提供了解决方法。文章详细介绍了从Github上下载muduo和muduo-tutorial源代码的步骤,并指导如何编译muduo库。最后,作者提供了陈硕老师的Github链接和muduo库的简介。 ... [详细]
  • 本文详细介绍了在Centos7上部署安装zabbix5.0的步骤和注意事项,包括准备工作、获取所需的yum源、关闭防火墙和SELINUX等。提供了一步一步的操作指南,帮助读者顺利完成安装过程。 ... [详细]
author-avatar
zeng-abee
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有