制作云电脑镜像是将一个操作系统、软件、配置和数据等的快照保存为一个文件或者映像,以便在需要时可以快速部署到云服务器或虚拟机上。制作云电脑镜像可以个性化定制操作系统,更快捷方便的部署云电脑,本文将描述制作linux云电脑的过程。
1.创建宿主机
linux和windows是两个截然不同的操作系统,它们有不同的内核,文件系统,软件包管理方式。要想制作Linux云电脑镜像,就需要有Linux制作环境,因为它能理解Linux的文件系统和软件包格式等等。
下载VMware软件以及合适的宿主机镜像文件,这样可以建立Linux环境用于制作云主机镜像,镜像文件一般较大,为了加快速度可以在国内镜像网站中下载
启动前记得勾选虚拟化引擎,不然宿主机上无法运行建立的虚拟机
2.安装虚拟化相关支持
启动虚拟机,安装好ubuntu系统后,下载用于制作linux虚拟机的镜像文件,本文将下载内存占用较小的CentOS-7-x86_64-Minimal-2009.iso作为演示
为了创建虚拟机,需要KVM和QEMU实现虚拟化运行多种操作系统,KVM提供Linux内核虚拟化拓展,QEMU则可以模拟出多种CPU架构和硬件设备,也负责虚拟机的I/O模拟、内存管理等。通过以下指令下载KVM和QEMU
sudo apt-get update
sudo apt install qemu-kvm qemu-utils
3.创建虚拟磁盘
创建QCOW2格式的虚拟机磁盘,用于安装Centos虚拟机,大小设置为5G
qemu-img create -f qcow2 myCentos.qcow2 5G
4.安装虚拟机创建工具和虚拟化管理平台
通过安装相关软件包,可以实现创建,配置,监视虚拟机
sudo apt install virtinst libvirt-daemon-system
5.赋予QEMU进程运行时的权限
创建虚拟机之前需要赋予libvirt QEMU进程相应的权限,不然可能在创建的时候报错提示libvirt-qemu无法访问某个目录
打开/etc/libvirt/qemu.conf文件,添加user="root"和group="root"
6.执行以下脚本
#!/bin/bash
NAME=myCentosVM
ROOT_VDISK=myCentos.qcow2
CDROM=`pwd`/CentOS-7-x86_64-Minimal-2009.iso
sudo virt-install --virt-type kvm --name $NAME --ram 1024 \
--disk $ROOT_VDISK,format=qcow2 \
--network network=default \
--graphics vnc,listen=0.0.0.0 --noautoconsole \
--os-type=linux --os-variant=rhel7.0 \
--cdrom=$CDROM
该脚本利用virt-install指令创建虚拟机,每个选项意义如下:
--virt-type kvm:
指定虚拟化类型为 KVM(Kernel-based Virtual Machine),这是一种基于 Linux 内核的虚拟化技术。
--name $NAME:
指定虚拟机的名称,这里使用了变量 $NAME 来动态设置虚拟机的名字。
--ram 1024:
设置虚拟机的内存(RAM)大小为 1024 MB。
--disk $ROOT_VDISK,format=qcow2:
指定虚拟机的根磁盘,使用了变量 $ROOT_DISK 来动态设置磁盘文件。format=qcow2 表示使用 qcow2 格式的磁盘。
--network network=default:
设置虚拟机的网络配置。network=default 表示使用默认网络配置。
--graphics vnc,listen=0.0.0.0 --noautoconsole:
配置虚拟机的图形显示选项,使用 VNC 来实现图形显示。listen=0.0.0.0 表示 VNC 监听所有可用的网络接口。--noautoconsole 表示 不自动打开控制台。
--os-type=linux --os-variant=rhel7.0:
指定虚拟机的操作系统类型和变体。这里指定操作系统类型为 Linux,变体为 RHEL 7(Red Hat Enterprise Linux 7)。
--cdrom=$CDROM:
指定虚拟机的光驱,使用了变量 $CDROM 来动态设置 ISO 文件的路径。
7.安装virt-manager图形用户界面
执行以下命令安装virt-manager,可以更方便直观的对虚拟机进行创建,配置,删除等操作
sudo apt install virt-manager
8.打开新创建的虚拟机
执行如下命令打开virt-manager
virt-manager
鼠标放置在新创建的Centos虚拟机并右键点击打开
进入Centos系统安装界面安装系统
9.安装云电脑相关服务
安装agent用于和外部qemu进行通信,cloud-init用于虚拟机初始化等等
10.使用痕迹清理
清理使用痕迹,包含用户个人文件,应用程序数据,系统临时文件,程序及系统日志,指令历史记录等等
11.关机
至此,镜像制作完成,后续可上传至云平台