热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS系统快速安装Xen虚拟机

背景描述一台托管在外的服务器,环境为CentOS5.5,跑LAMP。由于运行环境和成本控制的考虑,需要同时配置PHP4+Mysql和PHP5+Mysql两种环境。起初计划采用两个apache环境,不同的端口来解决。考虑到目前Xen技术上已经成熟,于是考虑在真实主机上安装ngnix和mys

背景描述

一台托管在外的服务器,环境为CentOS5.5,跑LAMP。由于运行环境和成本控制的考虑,需要同时配置PHP4+Mysql和PHP5+Mysql两种环境。起初计划采用两个apache环境,不同的端口来解决。考虑到目前Xen技术上已经成熟,于是考虑在真实主机上安装ngnix和mysql。通过xen安装两套虚拟环境分别配置不同的Php版本,前端使用ngnix代理的方式实现多个虚拟主机合并到同一个80号的目的。

本文同样适用于RedHat和小白鼠Fedora.

真实主机(主机名:www)上配置Xen

CentOS的Xen还是比较容易设置的
#yum install kernel-xen xen等待安装,安装结束后,修改grub配置,确保主机通过xen内核启动后,重启主机。

主机启动后,首先确认
#uname -r ,内核版本号后面应该跟随一个xen标记,如:2.6.18-194.11.3.el5xen

需要解释的是,由于这台主机的要求网络结构是“一个出口”,即逻辑上虚拟主机的网络拓扑应该是路由方式,而Centos默认Xen的结构是网桥模式,这里需要修改下相应的配置。
/etc/xen/xend-config.sxp文件中
(network-script network-bridge)
(vif-script vif-bridge)
注释掉
(network-script network-route)
(vif-script     vif-route)
去掉注释
重启xen服务使设置生效,/etc/init.d/xend restart

配置虚拟主机

相比之前参考的很多文档,Centos的虚拟主机配置相对比较容易,至少没有那么复杂,因为Centos提供了一个比较方便的工具virt-install

我准备给虚拟主机都安装CentOS5.5,为了方便,我将光盘挂装到了 /mnt并设置了ngnix可以直接通过http://www/方式访问光盘中的文件,如果您之前通过http或者其他方式网络安装过操作系统,这一步应该很好理解。

正题来了:

 virt-install -n CentOSVM1 -r 512 -f /xen/CentOSVM1.img  -l http://www/  ?network=network:default -p -s 10 ?nographics ?vcpus=2

解释:
-n CentOSVM1 设置虚拟服务器名称
-r 512 设置内存大小
-f /xen/CentOSVM1.img  虚拟磁盘文件的保存路径,如果有重名可以使用?force参数强制重建。
-l http://www/ 安装文件的访问方式,支持nfs http ftp smb等多种方式。如果你对你的带宽比较自信,可以使用http://mirrors.163.com/centos/5.5/os/i386/网易的镜像站
?network=network:default 网络连接方式,我选择的是route中的default
-p 我的机器不支持硬件虚拟化,-p参数不使用类似技术。现在新的CPU连Atom这样的都支持了,-p可以不加。
-s 10磁盘文件的大小,单位是G
?nographics 不使用图形界面,可以不加此参数,然后加入?vnc看看图形效果
?vcpus=2 虚拟CPU的个数

剩下的就是等待安装的过程,由于之前的设置,网络这块直接DHCP就可以通过了。安装过程中报错找不到安装媒体的大多都是网络设置错误。

整个过程中可以通过ctrl+]回到真实主机,通过在真实主机中使用xm console CentOSVM1回到CentOSVM1的控制台。

OK,可以开始第二台主机的安装了,照旧吧:
 virt-install -n CentOSVM2 -r 512 -f /xen/CentOSVM2.img  -l http://www/  ?network=network:default -p -s 10 ?nographics ?vcpus=1

部分操作

xm console 连接到虚拟机控制台
xm create 根据配置文件创建主机,如果您一直follow之前的操作并且完成了虚拟主机的安装,这条命令实际上等于启动一台虚拟机
xm shutdown 关机
xm reboot 重启
xm destroy 删除主机
xentop 各主机之前的资源占用情况

关于Ubuntu的xen

记得Ubuntu 8.04的时候,通过apt-get install ubuntu-xen-server xen的方式可以搭建起xen的环境,但不知出于什么目的,9.04以后,apt源里面移出了linux-xen内核的安装包。你当然可以下载到类似的替代安装包,但这无疑给安装带来了麻烦。

ubunt desktop和server的安装盘都无法通过网络安装程序,如果需要部署Ubuntu的虚拟机,你需要下载alternate安装盘。


推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 使用Vultr云服务器和Namesilo域名搭建个人网站
    本文详细介绍了如何通过Vultr云服务器和Namesilo域名搭建一个功能齐全的个人网站,包括购买、配置服务器以及绑定域名的具体步骤。文章还提供了详细的命令行操作指南,帮助读者顺利完成建站过程。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 在哈佛大学商学院举行的Cyberposium大会上,专家们深入探讨了开源软件的崛起及其对企业市场的影响。会议指出,开源软件不仅为企业提供了新的增长机会,还促进了软件质量的提升和创新。 ... [详细]
  • 解决网站乱码问题的综合指南
    本文总结了导致网站乱码的常见原因,并提供了详细的解决方案,包括文件编码、HTML元标签设置、服务器响应头配置、数据库字符集调整以及PHP与MySQL交互时的编码处理。 ... [详细]
  • CentOS 7 磁盘与文件系统管理指南
    本文详细介绍了磁盘的基本结构、接口类型、分区管理以及文件系统格式化等内容,并提供了实际操作步骤,帮助读者更好地理解和掌握 CentOS 7 中的磁盘与文件系统管理。 ... [详细]
  • 在Ubuntu 16.04 LTS上配置Qt Creator开发环境
    本文详细介绍了如何在Ubuntu 16.04 LTS系统中安装和配置Qt Creator,涵盖了从下载到安装的全过程,并提供了常见问题的解决方案。 ... [详细]
  • 本文详细介绍了VMware的多种认证选项,帮助你根据职业需求和个人技能选择最合适的认证路径,涵盖从基础到高级的不同层次认证。 ... [详细]
  • 本文介绍如何通过更改软件源来提前体验Ubuntu 8.10,包括详细的配置步骤和相关注意事项。 ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 在Ubuntu 8.04中安装美观的Cairo-Dock桌面增强工具
    本文介绍如何在Ubuntu 8.04系统中安装和配置Cairo-Dock,这款桌面增强工具以其精美的界面和高效的功能备受用户青睐。文章将指导您通过简单的步骤完成安装,并提供一些实用的配置建议。 ... [详细]
  • 解决U盘安装系统后无法重启的问题
    本文详细探讨了运维新手常遇到的U盘安装系统后无法正常重启的问题,提供了从问题分析到具体解决方案的完整步骤。通过理解Boot Loader的工作原理和正确配置启动项,帮助用户顺利解决问题。 ... [详细]
author-avatar
不分手得恋爱假的_457
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有