菜鸟玩云计算之十五:在Ubuntu上创建和管理Redhat虚拟机

chedou@hgdb.net

虚拟机给工作带来巨大的便利,不仅仅体现在资源的按需使用,而且配置的迁移特别方便。本文将使用Ubuntu14.04 Desktop版本创建Redhat 64 Enterprise Server(RHEL64)虚拟机。

1 准备好安装光盘镜像

rhel-server-6.4-x86_64-dvd.iso

2 打开虚拟机管理器

尽管可以用命令行的方式创建虚拟机,但是本着简单事情简单做的原则,我使用virt-manager创建虚拟机。在Ubuntu上打开一个终端,输入下面的命令打开虚拟机管理器(一个类似virtual box的东西,如果提示找不到这个东西,就apt-get install吧):

$ sudo virt-manager

3 开始创建安装过程

a. 按 Create a new virtual machine按钮,输入name: RHEL64-origin

我喜欢创建一个干净的虚拟机,用这个作为源,然后以后用到的时候就从这个源克隆。一般我创建好这个虚拟机,只安装jdk和gcc两个东西。因此我把这个机器的名字叫做origin。然后按Forward。

b. 在Use ISO image:栏目里填入你的iso地址,我的是:

c. 然后下一步输入内存大小和CPU数目。这些参数可以在虚拟机创建之后调整。此时我输入4096MB内存和2个CPU。只有此时不比Host机器的物理内存/CPU多,都可以。

d. 然后进入下一步创建磁盘镜像。此时需要谨慎。需要考虑将来的可扩充。比如在这里你指定一个128GB的磁盘镜像,它真的会在你的硬盘上创建出这个128GB的文件来。首先你的硬盘必须有这么大的空间容纳这个镜像文件。这个镜像文件是RAW格式的,因此它不会压缩。那么如果我们需要创建10个虚拟机怎么办?先留着这个待解决的问题。假定物理硬盘可用空间是700GB,我们准备将来存放10到20个虚拟机,每个虚拟机硬盘空间128GB。此时我们可以输入128GB。选中Allocate entire disk now。按下一步。然后弹出一个统计报告,不用管它,按Finish。进入Redhat安装界面。这个我就不多说了。

e. 一路Next,确认 discard any data。当要求输入hostname,输入RHEL64-origin,按Configure Network,设置eth0网络为Connect automatically。

f. 在 Whick type of installion would you like?出现时,选择Create Custum Layout。也就是自己分区。128GB的总数分区为:

1024MB---/boot----Primary
16384MB---swap
8192MB---/tmp
余下的都是 --- /

g. 安装完成之后,配置如下:

/etc/sysconfig/network-scripts/ifcfg-eth0
        DEVICE=eth0
        TYPE=Ethernet
        UUID=XXXXXXXXXXXXXXXXXXXXXXXXXXXX
        ONBOOT=yes
        NM_CONTROLLED=yes
        IPADDR=192.168.122.101
        BOOTPROTO=static
        BROADCAST=192.168.122.255
        NETMASK=255.255.255.0
        HWADDR=52:54:00:47:92:3D
        DEFROUTE=yes
        PEERDNS=yes
        PEERROUTES=yes
        IPV4_FAILURE_FATAL=yes
        IPV6INIT=no
        NAME="System eth0"

/etc/sysconfig/network
        NETWORKING=yes
        HOSTNAME=rhel64-origin.pepstack.com
        GATEWAY=192.168.122.1

/etc/resolv.conf
        nameserver 192.168.122.1

/etc/init/ttyS0.conf
        # ttyS0 - agetty
        stop on runlevel [016]
        start on runlevel [345]
        instance ttyS0
        respawn
        pre-start exec /sbin/securetty ttyS0
        exec /sbin/agetty /dev/ttyS0 115200 vt100-nav

4 转换文件格式

虚拟机的镜像文件为:

/var/lib/libvirt/images/RHEL64-origin.img

这是raw格式的,占用空间=128GB。因此需要转为qcow2格式的。进入RHEL64-origin.img所在目录,运行命令:

$ sudo qemu-img convert -O qcow2 RHEL64-origin.img RHEL64-origin.qcow2

就生成了仅有2GB大小的RHEL64-origin.qcow2。

然后更改虚拟机配置文件:

$ sudo vi /etc/libvirt/qemu/RHEL64-origin.xml

找到:

type='raw'=>type='qcow2'

RHEL64-origin.img=>RHEL64-origin.qcow2

结果如下:

    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/var/lib/libvirt/images/RHEL64-origin.qcow2'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </disk>

$ sudo virsh define RHEL64-origin.xml

$ sudo virsh list --all

$ sudo virsh start RHEL64-origin

给host机器添加ip和hostname映射,加快虚拟机ssh登录速度:

#vi /etc/hosts

# virt-machine

192.168.122.178   rehl64-org

$ ssh@rehl64-org

登录进虚拟机:

[root@RHEL64-origin ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/vda6              94G  1.8G   87G   2% /
tmpfs                 1.9G     0  1.9G   0% /dev/shm
/dev/vda1            1008M   60M  898M   7% /boot
/dev/vda2              16G  172M   15G   2% /home
/dev/vda3             7.9G  146M  7.4G   2% /tmp
[root@RHEL64-origin ~]# 

成功。可以删除文件:

$ sudo rm -fr /var/lib/libvirt/images/RHEL64-origin.img

以上操作完全可以命令行方式,参考:

http://dnscai.com/blog/2013/05/13/virt-command-summary/

菜鸟玩云计算之十五:在Ubuntu上创建和管理Redhat虚拟机的更多相关文章

  1. 菜鸟玩云计算之十八:Hadoop 2.5.0 HA 集群安装第1章

    菜鸟玩云计算之十八:Hadoop 2.5.0 HA 集群安装第1章 cheungmine, 2014-10-25 0 引言 在生产环境上安装Hadoop高可用集群一直是一个需要极度耐心和体力的细致工作 ...

  2. 菜鸟玩云计算之十六:Ubuntu14.04上创建的虚拟机迁移到RHEL6.4

    菜鸟玩云计算之十六:Ubuntu14.04上创建的RHEL6.4虚拟机迁移到RHEL6.4主机上 RHEL6.4 Server作为虚拟机的HOST,执行以下的命令检查配置和安装相关软件: # egre ...

  3. 菜鸟玩云计算之十二:KVM虚拟机更改大小

    菜鸟玩云计算之十二:KVM虚拟机更改大小 参考: http://www.missionfamilybank.org/expanding-resizing-your-qcow2-virtual-mach ...

  4. 菜鸟玩云计算之十四:克隆虚拟机及ssh登录的问题

    菜鸟玩云计算之十四:克隆虚拟机及ssh登录的问题 今天早上,我的Ubuntu12.04.3LTS Desktop提示升级,升级. 从vm-ubuntu12.04克隆出虚拟机vm-thrift: $ s ...

  5. 菜鸟玩云计算之十九:Hadoop 2.5.0 HA 集群安装第2章

    菜鸟玩云计算之十九:Hadoop 2.5.0 HA 集群安装第2章 cheungmine, 2014-10-26 在上一章中,我们准备好了计算机和软件.本章开始部署hadoop 高可用集群. 2 部署 ...

  6. 如何在Ubuntu上创建及管理LXC容器?

    将LXC安装到Ubuntu上 $ sudo apt-get install lxc 安装完毕之后,运行lxc-checkconifg工具,检查当前Linux内核支持LXC的情况.要是一切都已被启用,内 ...

  7. 菜鸟玩云计算之二十:saltstack入门初步

    菜鸟玩云计算之二十 SaltStack 入门初步 0. saltstack 是什么 参考下面的文章: http://docs.saltstack.com/en/latest/topics/tutori ...

  8. 菜鸟玩云计算之廿二: saltstack 配置

    菜鸟玩云计算之廿二: saltstack 配置 要求环境: RHEL6.4+ >=Python2.6.6, < Python 3.0 关闭salt-master/minion服务:   # ...

  9. 菜鸟玩云计算之廿一: saltstack之pillar

    菜鸟玩云计算之廿一: saltstack之pillar 参考: 点击打开链接 查看pillar数据: # salt '*' pillar.items pillar的默认根目录在:/srv/pillar ...

随机推荐

  1. Android Studio 2.2 新功能详解

    Tamic /文 -译 http://blog.csdn.net/sk719887916/article/details/52672688 Android的Studio 2.2 已经可以在官网下载了. ...

  2. Core Python Programming一书中关于深浅拷贝的错误

    该书关于深浅拷贝的论述: 6.20. *Copying Python Objects and Shallow and Deep Copies "when shallow copies are ...

  3. Apache shiro集群实现 (五)分布式集群系统下的高可用session解决方案

    Apache shiro集群实现 (一) shiro入门介绍 Apache shiro集群实现 (二) shiro 的INI配置 Apache shiro集群实现 (三)shiro身份认证(Shiro ...

  4. 18 UI美化之level(等级显示显示)

    根据level显示哪张图片 在工程文件的res/drawable/新建level-list 如下 <?xml version="1.0" encoding="utf ...

  5. hbase高性能读取数据

    有时需要从hbase中一次读取大量的数据,同时对实时性有较高的要求.可以从两方面进行考虑:1.hbase提供的get方法提供了批量获取数据方法,通过组装一个list<Get> gets即可 ...

  6. 实现memcpy函数

    已知memcpy的函数为: void* memcpy(void* dest , const void* src , size_t count)其中dest是目的指针,src是源指针.不调用c++/c的 ...

  7. Download all Apple open source OS X files at once

    While it is well known that Mac OS X contains open source code, how to access and download that sour ...

  8. Android简易实战教程--第七话《在内存中存储用户名和密码》

    首先是配置文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...

  9. Cocos2D结合CoreGraphics实现RPG人物中空黑洞吸入效果

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 之前的博文中我们实现了RPG人物的复古效果. 现在我们再完点h ...

  10. (一〇八)iPad开发之横竖屏适配

    在iPad开发中,横竖屏的视图常常是不同的,例如侧边栏Dock,在横屏时用于屏幕较宽,可以展示足够多的内容,每个按钮都可以展示出标题:而竖屏时Dock应该比较窄,只显示图标不现实按钮标题. iPad比 ...