Centos7 kvm环境制作qcow2 格式镜像
#注意需要开启虚拟化引擎
1.0 安装kvm 环境
#在宿主机安装kvm环境:
[root@localhost data]# yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python virt-* libvirt-client #启动服务
[root@localhost data]# systemctl start libvirtd
[root@localhost data]# systemctl enable libvirtd
[root@localhost data]# echo "net.ipv4.ip_forward =1">>/etc/sysctl.conf
[root@localhost data]# sysctl -p#创建源镜像目录
[root@localhost data]# mkdir /data
2.0 将centos 镜像上传到data 目录
#上传原版Centos iso镜像文件到/data目录
[root@localhost data]# ls /data
CentOS-7-x86_64-DVD-2009.iso#CentOS7镜像阿里云下载地址
http://mirrors.aliyun.com/centos/7/isos/x86_64/
2.1 创建qcow2 格式镜像文件
[root@localhost data]# qemu-img create -f qcow2 /data/CentOS7_YF.qcow2 100G#创建qcow2 格式 容量为 100G的文件用于之后的操作,此设置,设置了镜像文件启动之后,磁盘大小
3.0 创建kvm虚拟机
virt-install --name CentOS_YF --virt-type kvm \ #创建kvm虚拟机的名字 虚拟化类型
--ram 2048 \ #内存大小 随意设置
--vcpus=2 \ #cpu 个数 随意设置
--cdrom=/data/CentOS-7x86_64-DVD-2009.iso \ #源镜像文件位置
--disk paht=/data/CentOS7_YF.qocw2 \ #数据盘位置
--network bridge=br0 \ #使用br0 网络
--graphics vnc,listen=0.0.0.0 \ #使用vnc登录
--noautoconsole
3.1 使用vnc 链接 下载地址 Download VNC Viewer | VNC® ConnectControl VNC® enabled computers with VNC® Viewer.https://www.realvnc.com/en/connect/download/viewer/3.1.1 虚拟机链接后可进行初始化设置,安装所需要的环境
#关闭网卡图形化设置模式
[root@localhost data]#systemctl stop NetworkManager
[root@localhost data]#systemctl disable NetworkManager#防火墙优化
[root@localhost data]#systemctl disable firewalld
[root@localhost data]#systemctl stop firewalld#下载常用命令
[root@localhost data]#yum -y install vim lrzsz wget lsof net-tools tree screen tcpdump gcc gcc-c++ make telnet ntpdate acpid#更改源
[root@localhost data]#curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
[root@localhost data]#curl -o /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo
[root@localhost data]#sed -i '/UUID/d' /etc/sysconfig/network-scripts/ifcfg-eth*
[root@localhost data]#sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0#容器环境搭建脚本如下:
#!/bin/bash# 安装依赖包yum -y install yum-uitls device-mapper-persistent-data lvm2yum -y install gcc gcc-c++ makeif [ $? -eq 0 ];then
yum -y install docker-ce
else
continue
#!/bin/bash# 安装依赖包yum -y install yum-uitls device-mapper-persistent-data lvm2yum -y install gcc gcc-c++ makeif [ $? -eq 0 ];then
yum -y install docker-ce
else
continue
fiif [ $? -eq 0 ];then
systemctl start docker
systemctl enable docker
else
echo "docker安装成功"
fi[ -f /etc/docker/daemon.json ] || touch /etc/docker/daemon.json
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors":[ "https://registry.docker-cn.com" ]
}
EOFecho "重新加载配置"
systemctl daemon-reload
systemctl restart docker# docker-compose 下载
if [ $? -eq 0 ];then
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose
if [ $? -eq 0 ];then
chmod +x /usr/bin/docker-compose
else
echo "重新加载"
fi
else
echo "重新加载docker-compose"
continue
fiif [ $? -eq 0 ];then
echo " docker 安装成功\n docker-compose 安装成功"
else
echo " 安装失败 "
fi
注意: 如果需要修改docker版本可直接修改脚本中版本号
3.2 安装完成关机,清理虚拟机碎片
清理机器信息 virt-sysprep -d CentOS7_YF
[root@localhost data]# virt-sysprep -d CemtOS_YF
[ 0.0] Examining the guest ...
[ 4.7] Performing "abrt-data" ...
[ 4.7] Performing "backup-files" ...
[ 5.9] Performing "bash-history" ...
[ 5.9] Performing "blkid-tab" ...
[ 5.9] Performing "crash-data" ...
[ 5.9] Performing "cron-spool" ...
[ 6.0] Performing "dhcp-client-state" ...
[ 6.0] Performing "dhcp-server-state" ...
[ 6.0] Performing "dovecot-data" ...
[ 6.0] Performing "logfiles" ...
[ 6.0] Performing "machine-id" ...
[ 6.0] Performing "mail-spool" ...
[ 6.0] Performing "net-hostname" ...
[ 6.1] Performing "net-hwaddr" ...
[ 6.1] Performing "pacct-log" ...
[ 6.1] Performing "package-manager-cache" ...
[ 6.2] Performing "pam-data" ...
[ 6.2] Performing "passwd-backups" ...
[ 6.2] Performing "puppet-data-log" ...
[ 6.2] Performing "rh-subscription-manager" ...
[ 6.3] Performing "rhn-systemid" ...
[ 6.3] Performing "rpm-db" ...
[ 6.3] Performing "samba-db-log" ...
[ 6.3] Performing "script" ...
[ 6.3] Performing "smolt-uuid" ...
[ 6.3] Performing "ssh-hostkeys" ...
[ 6.3] Performing "ssh-userdir" ...
[ 6.3] Performing "sssd-db-log" ...
[ 6.3] Performing "tmp-files" ...
[ 6.3] Performing "udev-persistent-net" ...
[ 6.3] Performing "utmp" ...
[ 6.3] Performing "yum-uuid" ...
[ 6.3] Performing "customize" ...
[ 6.3] Setting a random seed
[ 6.3] Setting the machine ID in /etc/machine-id
[ 6.7] Performing "lvm-uuids" ...
3.3 virt-sparsify compress 压缩镜像
mkdir /data/tmp
chmod 1777 /data/tmp/
export TEMP=/data/tmp
export TMPDIR=/data/tmp
echo 'export TEMP=/data/tmp' >> /etc/profile
echo 'export TMPDIR=/data/tmp' >> /etc/profile
source /etc/profile压缩镜像;
[root@localhost data]#virt-sparsify --compress /data/CentOS7_YF.qcow2 /data/CentOS7_YF_allinone.qcow2
[ 0.1] Create overlay file in /data/tmp to protect source disk
[ 0.2] Examine source disk
◓ 25% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒═══════════════════════════════════════════════════════════⟧ --:--
100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ --:--
[ 24.8] Fill free space in /dev/centos/root with zero
100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
[ 504.3] Clearing Linux swap on /dev/centos/swap
100% ⟦▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒⟧ 00:00
[ 511.3] Fill free space in /dev/sda1 with zero
[ 511.7] Fill free space in volgroup centos with zero
[ 515.2] Copy to destination and make sparse
[1540.3] Sparsify operation completed with no errors.
virt-sparsify: Before deleting the old disk, carefully check that the
target disk boots and works correctly.
4.0 执行命令创建虚拟机
#测试镜像文件
[root@localhost data]#virt-install \
--virt-type kvm \
--name test01 \
--ram 2048 \
--vcpus=1 \
--import \
--disk path=/data/test.qcow2 \
--network bridge=br0 \
--graphics vnc,listen=0.0.0.0,port=8899 \
--os-type=linux注意:模板机创建的网路类型,通过模板文件启动的时候,需要和创建模板机时的网络类型一至,如果不一致,会导致网卡启动不起来;
5.0 kvm常用命令
#virt-install [选项]
-h 查看帮助
--connect=CONNECT #连接非默认的hypervisor,默认为qemu:///system
-n name #新的虚拟机主机实例名称
--virt-type kvm #虚拟化的类型
--os-type=linux #系统类型
--os-variant fhel7 #系统版本
-r MEMORT #虚拟机内存设置
--arch=ARCH cpu #架构
--machine=MACHINE #虚拟机模拟机类型,Xen或者KVM等。
--vcpus=VCPUS #虚拟主机CPU个数
-c CDROM #设置光盘镜像或光盘设备路径
-l LOCATION #指定安装源路径
--pxe #使用pxe协议启动
--import #导入现有的虚拟机
-x EXTRA #附加的内核参数,如-x "ks=http://server/server.ks"
--os-type=Type #操作系统类型,如linux、windwos等
--disk=DISKOPTS #设置虚拟机磁盘,如--disk /dev/storage/path
-w NETWORK #设置虚拟机网络,如-w bridge=br0
--noneworks #虚拟机不设置任何网络接口
-m MAC #设置虚拟机MAC地址
--vnc #设置通过vnc查看虚拟机
--hvm #使用全虚拟化
--paravirt #使用半虚拟化技
--soundhw MODEL #设置声卡设备
--autostart #设置虚拟机为开机启动
--disk /opt/centos2.raw,format=raw,size=10 #设置硬盘大小,位置
--cdrom /opt/centos-7-x86_64-DVD.iso #设置镜像
#kvm虚拟机管理工具的部分常用命令;
virt-install # 建立kvm虚拟机
virsh list --all # 查看正在运行的KVM虚拟机
virsh list --all # 查看所有KVM虚拟机
virsh start name # 启动KVM虚拟机
virsh shutdown name # 正常关闭KVM虚拟机(一般要等几分钟)
virsh destroy name # 强制关闭KVM虚拟机(类似于直接断电)
virsh suspend name # 挂起KVM虚拟机
virsh resume name # 恢复挂起的KVM虚拟
virsh dumpxml name # 查看KVM虚拟机配置文件
virsh edit name # 编辑KVM虚拟机的xml配置文件(虚拟机关机后生效)
virsh undefine name # 彻底删除KVM虚拟机,建议先用virsh dumpxml name > xxx.xml 保存配置文件)
virsh define xxx.xml # 根据xxx.xml文件定义虚拟机
virsh console name # 字符界面控制虚拟机
virsh domiflist name # 显示虚拟机的网卡信息
virsh attach-interface name --type bridge --source br0 --medol virtio--config
# 给虚拟机增加网卡,后面是网卡参数,根据 domiflist 查看情况来确定(虚拟机关机后生效,宿主机重启后失效,需要保存到配置文件中,在重新define)
virsh detach-interface name --type bridge --mac 物理地址
# 删除虚拟机网卡,参数根据 domiflist 查看情况来
Centos7 kvm环境制作qcow2 格式镜像相关推荐
- 【OpenStack(Train版)安装部署(十二)】之win7系统安装,qcow2格式镜像制作
文章目录 本文章由公号[开发小鸽]发布!欢迎关注!!! 1.win7系统qcow2格式镜像制作 (1)概述 (2)-失败-安装ISO镜像到qcow2磁盘. (3)vnc viewer连接虚机 (4)C ...
- linux系统制作qcow2,制作centos的qcow2格式镜像
首选创建虚拟磁盘 qemu-img create -f qcow2 CentOS-6.3-x86_64.qcow2 10G 其次从iso启动镜像 virt-install --name centos- ...
- openstack在dashboard用iso制作qcow2的镜像【制作linux为例】、linux重封装
文章目录 说明 制作流程 1.上传iso镜像到dashboard 2.创建源为刚上传的ISO的volume 3.创建一个空的volume,后续做系统盘 4.创建一个实例,boot from 步骤2所创 ...
- VMware环境下修改Centos qcow2格式镜像
1.创建centos7宿主机 使用VMware环境,宿主机创建成功后,需要CPU开启虚拟化,需要关机才能开启. 2.配置yum镜像源 yum install wget wget -O /etc/yum ...
- ISO格式云主机创建QCOW2格式镜像
1: 找到ISO镜像,创建的可运行云主机 2:点击右边下拉框 3:镜像列表观察,镜像创建情况 镜像创建中, 格式为ISO 镜像创建完成,格式为RAW,即qcow2镜像在ceph中的格式: 4:拿镜像直 ...
- windows个人电脑上用vmware作为宿主机制作qcow2镜像
通常云服务商提供的多为基础镜像主机,无法定制系统环境. 本篇主要为了解决项目上云过程有自定义镜像需求以达到快速部署集群需求以节约时间成本的场景 如:项目镜像需要集成k8s.agent脚本等各种集成场景 ...
- [zz]kvm环境快照(snapshot)的使用方法
实例一 使用qemu-img命令使用快照 kvm环境下qcow2的镜像支持快照 1 确认镜像的格式 [root@nc1 boss]# qemu-img info test.qcow2 im ...
- 制作openstack镜像(qcow2格式的win10系统)
制作openstack镜像(qcow2格式的win10系统) 1.准备KVM虚拟机 1.1 所需工具 1.2 安装KVM虚拟机详细步骤 1.3 制作qcow2系统 1.准备KVM虚拟机 搭建opens ...
- 使用iso制作qcow2镜像
(1)首先用qemu-image创建ISO需安装在的系统盘centos.qcow2, (2)在执行以下以下virt-install 启动虚拟机 # qemu-img create -f qcow2 / ...
最新文章
- sql语句的简单记录
- MFC DLL对话框调用
- 【数字信号处理】相关函数 ( 相关系数与相关函数 | 相关函数定义 )
- webstorm中自动插入的代码和ts冲突的解决办法
- python赋值01_python学习笔记1-赋值与字符串 | 学步园
- 【01】如何在XMind中排列自由主题
- PipeMapRed.waitOutputThreads(): subprocess failed with code N
- 洛谷OJ P2356 弹珠游戏 维护前缀和
- Ubuntu下载Linux源码 编译Linux源码
- windows kafka安装
- html用css美化表格
- 基于python的RGB图像转灰度图
- 台式计算机屏幕扩展,台式机屏幕如何扩展
- 云梦四时歌服务器维护,《云梦四时歌》服务器已满怎么解决 服务器排不了队伍解决方法...
- js中RGB与十六进制颜色转换
- (三)5.自动控制原理 Time domain analysis and correct 稳态误差
- 七夕有哪些送女朋友的小众又高级的礼物?小众又高级的礼物推荐
- Unity 获得周边最近的物体
- 家族关系查询系统程序设计算法思路_数据结构课程设计(家族关系查询系统)..doc...
- jdbc+servlet+jsp来写个mysql分页案例