虚拟机的封装

时间:2022-12-24 17:48:21

1)虚拟机的封装:

    封装是为了将虚拟机设置为类似于安装包的东西,使得生成的镜像文件可以快速地在其他主机上安装和使用。也相当于虚拟机的重置。

2)虚拟机的封装过程:

    1、首先下载rhel6.5的镜像

   2、进行虚拟管理界面 --->   virt-manager

   3、点击左上角,新建虚拟机;并选择Local install media(ISO image or CDROM)

    虚拟机的封装

    4、选择自己镜像所在位置

    虚拟机的封装

    5、选择内存大小为:512M;CPU核数为1

    虚拟机的封装

    6、选择分给虚拟机的磁盘的大小:20G

    虚拟机的封装

    7、给安装的虚拟机命名(随便起)

    虚拟机的封装

   8、进入安装界面

    虚拟机的封装

    9、进行磁盘的检测

    虚拟机的封装

    10、检测成功后的界面(选择如下选项)

    虚拟机的封装

    虚拟机的封装

   11、continue

    虚拟机的封装

    12、欢迎使用redhat,点击ok进入安装过程

    虚拟机的封装

    13、选择安装过程的语言(英语)

    虚拟机的封装

   14、选择键盘的类型(美式键盘)

    虚拟机的封装

    15、全部重置磁盘

    虚拟机的封装

    16、选择时区(亚洲/上海)

    虚拟机的封装

    17、设置root用户的密码(两遍)

    虚拟机的封装

    18、密码的强度不够时,出现提示。此时选择Use Anyway即可

    虚拟机的封装

    19、选择OK

    虚拟机的封装

    20、把自己的修改写进磁盘

    虚拟机的封装

    21、选择之后,会进行安装,此时只有243个安装包。(安装完成后,reboot)

    虚拟机的封装

3)对安装好的虚拟机进行配置

    首先,进入base虚拟机,设置虚拟机的ip、yum源、主机名、安全上下文等;让其具有作为母虚拟机的条件。具体配置过程如下:

    1、cd /etc/udev/rules.d    --->   删除以70开头的文件

    2、配置虚拟机的网络

      vi  /etc/sysconfig/network-scripts/ifcfg-eth0            # 修改配置文件(企业6的编辑器为vi)

      虚拟机的封装

     注意:其中的ip为自己真机的一个网段(使用ip addr命令进行查看)。现在网络中ip分为私有ip和公有ip;公有ip用于INTERNET使用,私有ip于局域网中使用。私有IP是一段保留的ip地址。只能用在局域网中。

   3、重启网络服务

     /etc/init.d/network  restart              # 在linux6.5中所有服务的启动或关闭等操作,都在/etc/init.d目录中

   4、配置虚拟机的yum源(安装完成后,可以下载自己想要的安装包)

     ---> vi  /etc/yum.repos.d/yum.repo          

     虚拟机的封装

     注释:baseurl为物理机的共享源地址

     ---> yum  clean  all    

     ---> yum  repolist

     ---> yum install vim lftp openssh-clients  -y

   5、设置本地的主机名和域名解析

     ---> vi  /etc/hosts

     虚拟机的封装

     ---> vi  /etc/sysconfig/network

          HOSTNAME=server1

   6、设置安全上下文为disabled模式(在/etc/sysconfig/selinux文件中修改)

   7、关闭防火墙 (在rhel6.5中火墙使用iptables;最后一条命令是关闭火墙的开机自启动)

    虚拟机的封装

  8、注意设置完成后,必须为poweroff命令;若reboot后,一切配置则会失效  

4)利用封装好的虚拟机产生子虚拟机(快照)

  在真机中进行如操作:

  1、进入虚拟机管理目录: 

  --->   cd  /var/lib/libvirt/images

  2、对刚才配置好的母虚拟机base进行缓存清楚

  --->  virt-sysprep  -d  base    # 若是没有virt-sysprep命令,用yum whatprovides */virt-sysprep查找

  3、清理完成后,利用创建好的母虚拟机进行子虚拟机的创建

  --->  qemu-img  create -f  qcow2  -b  base.qcow2  vm1              # 创建一个名为vm1的子虚拟机

  --->  qemu-img  info  vm1         # 查看子虚拟机vm1的信息

  4、进入虚拟机管理界面。建立子虚拟机(此时可删除出现在当前界面的base虚拟机。但不要删除他的相关存储文件,否则一切就都删除了)

  --->  virt-manager     # 注意,此时建立的虚拟机版本选择6.5

   虚拟机的封装

   虚拟机的封装

   5、此时,子虚拟机就建立成功了。

注意:如果创建的子虚拟机损坏的画,可以用如上办法创建多个。母虚拟机一旦创建之后,不可以轻易地改动;否则,子虚拟机也将会出现问题。

     在建立的子虚拟机中,读的是母虚拟机base,写的是子虚拟机vm1。(和虚拟机快照原理相似)