首页 > 其他分享 >KVM虚拟化

KVM虚拟化

时间:2024-06-17 14:43:31浏览次数:12  
标签:opt kvm 虚拟化 -- qcow2 虚拟机 KVM virsh

KVM虚拟化

=============================================================

0.环境介绍

宿主机:内存4G+ 纯净的系统CentOS-7

1:什么是虚拟化?

虚拟化,通过模拟计算机的硬件,来实现在同一台计算机上同时运行多个不同的操作系统的技术。

2:为什么要用虚拟化?

2.1:虚拟化的软件

阿里云   kvm开源
azure
vmware ESXI商业软件

2.2:使用虚拟化的原因

没有虚拟化之前:相同的服务不能跑在一台机器上,但,随着 计算机的硬件配置越来越高
512G 内存,4路 8核16线程 ,12* PCI-E 1T的SSD;
ntp服务,安装多个mysql,安装多个tomcat,安装....等不可以有端口冲突, linux开源的,很多软件都有依赖包openssl  nginx;

为了充分利用资源,软件运行环境的隔离,只有虚拟化才行实现。

2.3:虚拟化使用场景

场景1:
	同一台物理机运行多个php版本 php5.3(openssl,gd)  php5.5  php7.2

场景2:
	机房的迁移,解决了硬件和系统的依赖

场景3:
	openstack环境,软件发布方式,还有比如zabbix的搭建方式

场景4:
	开发环境和测试环境,使用虚拟化
	只靠一台物理服务器,虚拟30台虚拟机

	产品  -- 开发 -- 运维 -- 测试
	so结尾,linux 库文件

场景5:
	业务的快速部署  
	从头安装系统,安装服务,配置
	克隆虚拟机,改ip,

2.4:虚拟化作用:

提高了资源的利用率,各个服务的安全性隔离,解决了系统和硬件之间的依赖

3:kvm虚拟化管理软件的安装

KVM软件全称:

    	KVM:Kernel-based Virtual Machine  	#属于内核的命令

下载KVM需要的软件包

    yum install libvirt virt-install qemu-kvm -y

软件介绍:

	libvirt  作用:虚拟机的管理软件,管理虚拟机的生命周期
 		libvirt可以管理的虚拟机: kvm,xen,qemu,lxc....

	virt   virt-install virt-clone   作用:虚拟机的安装工具和克隆工具
	qemu-kvm :依赖包 qemu-img (qcow2,raw) 作用:管理虚拟机的虚拟磁盘
	qemu      软件纯模拟全虚拟化软件,特别慢!AIX,兼容性好!
	xen(半)   性能特别好,需要使用专门修改之后的内核,兼容性差!  redhat 5.5  xen
	KVM(linux)    全虚拟机,它有硬件支持cpu,基于内核,而且不需要使用专门的内核 
    
centos6 kvm
    性能较好,兼容较好	

4:基于KVM安装一台虚拟机

环境准备

    分发软件:
	TightVNC或者VNC Viewer 4.exe
    
    软件介绍:
	vnc软件:远程的桌面管理工具,相当于向日葵,跟微软的远程桌面更相似,输出KVM的图形化界面

将iOS镜像上传到宿主机中

    第一步:
    	在阿里云上下载需要的镜像 centOS7.5
    	将镜像下载到winds本地,然后进行上传
    第二步:
    	将centOS镜像进行上传到宿主机中,可以使用光盘挂载运用dd命令进行上传,还可以使用XFtp命令进行上传

第一种:使用光盘+dd命令上传ISO镜像

    第一步:
    	现将宿主机进行关机
    第二步:
    	挂载光盘

选择硬件=》处理器=》【勾线】虚拟化 Intel VT -x/EPT 或AMD-V/RVI(V)

选择硬件——>CD/DVD——>[勾选]使用ISO映像文件——>添加ISO镜像存放的路径——>点击确定

开启宿主机,查看光盘是否挂载成功

左下角光盘上带点绿则为挂载成功,
若没有成功则查看上面那操作的步骤是否正确及已生效

刻录ISO镜像

    cd /opt/
    dd if=/dev/cdrom of=Centos-7.5-x86_64-DVD.iso
    	将ISO镜像刻录到/opt目录下,刻录的时间必将长,需要耐心等待,不可以将ISO镜像刻录到root目录下
    ls -lh		进行查看是否刻录成功,ISO镜像大小为4G左右,如有镜像大小差距较大,则为刻录失败,需要重新进行刻录。   

第二种:使用XFtp进行上传镜像

在xshell中点击,进行打开xftp,进行传输

将本地镜像镜像的位置放在搜索框中,在接收的地址进行更改,点击鼠标进行来回拖拽就可以了

4.1 在KVM宿主机中创建虚拟机

1.启动ibvirtd.service

在宿主机上进行执行
systemctl start libvirtd.service
systemctl status libvirtd.service		#检查状态

10.0.0.11 宿主机

2.在KVM中创建虚拟机

建议虚拟机内存不要低于1024M,否则安装系统特别慢!

在KVM上创建虚拟机命令
    
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-DVD-1708.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    参数介绍:
    	--virt-type kvm    虚拟化的类型(qemu)
    	--os-type=linux    系统类型
    	--os-variant rhel7 系统版本  Redhat企业版7
    	--name centos7     虚拟机的名字 
    	--memory 1024      虚拟机的内存
    	--vcpus 1          虚拟cpu的核数
    	--disk /opt/centos2.raw,format=raw,size=10	磁盘创建的路径,类型,磁盘大小:默认单位G
    	--cdrom /opt/CentOS-7-x86_64-DVD-1708.iso  iso镜像存放的位置,不可以放在、root目录下
    	--network network=default   使用默认NAT的网络
    	--graphics vnc,listen=0.0.0.0 
    	--noautoconsole		不自动连接,在你执行完上面的命令后就会推出,不加此参数,执行完命令后会夯在命令行,只有等你将虚拟机配置完成后才会退出
    
    	raw:	此磁盘格式不支持做快照,性能好
    	qcow2:   此磁盘格式支持快照,但性能没有raw好

此图为创建虚拟机命令成功的样例

检查虚拟主机是否创建成功

[root@oldboy opt]# netstat -lntup
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
    tcp        0      0 0.0.0.0:5900            0.0.0.0:*               LISTEN      2485/qemu-kvm    

    有5900端口,表示成功

4.2 使用VNC连接创建好的虚拟机

双击打开VNC进行连接

服务器:宿主机的IP地址,端口为KVM的默认端口5900

加密:选择默认

最后点击确认就可以连接了	
	示例图:

4.3 初始化虚拟机系统

这是在KVM中查找centOS系统镜像,按ESC键进行退出,不去查找centOS镜像,如果没有这个界面可以直接进行下一步

安装系统的界面即为成功,接下来就是安装系统,选择系统的语言,我选择的是English

更改以下地方





然后点击安装系统,设置root密码即可

4.4 登录创建的虚拟机

	安装完系统后,VNC会自动断开,重新连接也将连接不上

原因:安装系统后,虚拟主机会成为关机状态,需要开启,才可以连接

    查看KVM中所有的虚拟主机
    
    [root@oldboy opt]# virsh list --all
     Id    Name                           State
    ----------------------------------------------------
     -     centos2                        shut off
    开启centos2虚拟机
    
    [root@oldboy opt]# virsh start centos2 
    Domain centos2 started
    查看开启的虚拟主机
    [root@oldboy opt]# virsh list 
     Id    Name                           State
    ----------------------------------------------------
     3     centos2                        running

4.5安装centOS系统时出错解决方法

推到重来,重新安装,直接以下命令即可重新安装

    virsh list --all	
    virsh undefine  centos7	
    virsh destroy   centos7		
    rm -fr   /opt/centos2.raw

5:kvm虚拟机的virsh日常管理和配置

常用命令:

    	列表list(--all)		
    		virsh list --all	#查看KVM中所有的虚拟主机
    		virsh list 			查看KVM中开启虚拟主机
    
    	开机start
        	virsh start centos2 
    
    	正常关机shutdown
    		virsh shutdown centos2 
    
    	拔电源关机destroy
    		virsh destroy centos2 
    
    	导出配置,备份配置文件 dumpxml	  
    		virsh dumpxml centos7	#查看配置文件,内存,cup磁盘,镜像等,虚拟主机的配置信息
    		virsh dumpxml centos7 >centos7-off.xml	#导出配置文件
    
    	删除虚拟机undefine  
    		virsh undefine web03
    
    
    	导入配置,恢复配置文件define   
    		 virsh define web02.xml
    
    	修改配置edit(自带语法检查)
    		 virsh edit centos7 	#修改位置文件
    
    	重命名domrename (低版本不支持)
    		虚拟主机只有在关机的状态下才可以修改
    		 virsh domrename centos7 centos2	将centos7主机名修改为centos2,和磁盘名称一致
    		或者就修改配置文件,来修改名称
    
    	挂起suspend
    		virsh suspend centos2
    
    	恢复resume
    		virsh resume centos2 
    
    	查询vnc端口号vncdisplay,可以使用这个端口进行登录
    		[root@oldboy opt]# virsh vncdisplay centos2 	
    		:0

5.1 虚拟主机目录迁移

第一步:关闭虚拟机
    	virsh shutdown centos2 
第二步:将磁盘迁移目录
    	mv /opt/centos2.raw /data/
第三步:修改虚拟主机配置文件
    	virsh edit centos2
    	配置文件
        <disk type='file' device='disk'>
          <driver name='qemu' type='qcow2'/>
          <source file='/data/centos2.qcow2'/>
          <target dev='vda' bus='virtio'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
        </disk>
        
    	搜索disk关键字,修改 <source file 的路径,改为data目录,保存退出即可
第四步:启动虚拟主机
    	virsh start centos2
磁盘目录迁移成功

6:kvm虚拟机开机启动和console 控制台 登录

6.1 设置KVM开机自启

kvm运行业务程序背景

    在突然断电后,所有程序就会被关闭,当再次通电之后之后,真实主机可以自己启动,但是KVM中所有的虚拟主机不会启动,假如在半夜突然断电后,再次通电,不仅需要你登录KVM进行开启主机,还会耗费大量时间,特别是在虚拟主机量特别大的情况下,会耽误业务的运行,所以要设置开启自启动
    前提:设置libvirtd开机自启
    	systemctl enable libvirtd
    
    开机启动autostart,
    	virsh autostart centos2
    
    取消开机启动autostart --disable
    	virsh autostart --disable  centos2
    	
    查看是否开机自启,
    	ll /etc/libvirt/qemu/autostart/			#查看这个目录下的内容,KVM的开启自启,其实就是通过常见软连接实现的,你也可以自己创建链接
    	total 0
    	lrwxrwxrwx 1 root root 29 May 20 11:54 centos2.xml -> /etc/libvirt/qemu/centos2.xml

6.2 console控制台登录

配置命令行版虚拟主机

    centos7的kvm虚拟机:
    要实现console控制台登录,需要修改系统内核参数
    在命令行执行:
    grubby --update-kernel=ALL --args="console=ttyS0,115200n8"
    
     --update-kernel=ALL	帮助我们修改内核参数
    --args="console=ttyS0	修改的内容:通过console可以输出一份
    115200n8	比特率,可以加或不加,

你不修改系统内核参数,在执行参数的时候,会进不去,卡在那个页面

		内核参数重启生效

    重启KVM宿主机
    	reboot
作业1:实现centos6的kvm虚拟机,console命令行登录?
安装一台centos6的kvm虚拟机
console命令行登录

作业2:centos6实现没有swap分区,启动进系统

7:kvm虚拟机虚拟磁盘格式转换和快照管理

7.1 在KVM中创建虚拟机的两种磁盘格式

第一种raw格式:

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-DVD-1708.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

第二种qcow格式:

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /data/oldboy.qcow2,format=qcow2,size=10 --cdrom /data/CentOS-7.2-x86_64-DVD-1511.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole

kvm两种格式介绍:

    raw:  裸格式,占用空间比较大,不支持快照功能,性能较好,不方便传输     一次新分配所有空间,占用空间大	
    
    qcow2:cow  (copy on write)占用空间小,支持快照,性能比raw差一点,方便传输  会根据自身的文件的大小去一点点中宿主机拿去

7.2 查看磁盘的格式:

    qemu-img info  test.qcow2
    [root@oldboy ~]# qemu-img info /opt/oldboy.qcow2 
    image: /opt/oldboy.qcow2				磁盘名称
    file format: qcow2						磁盘类型
    virtual size: 10G (10737418240 bytes)	 磁盘总大小
    disk size: 196K							磁盘空间占用大小
    cluster_size: 65536						簇大小,就是block大小
    Format specific information:
        compat: 1.1
        lazy refcounts: false				

7.3调整磁盘空间容量,扩容

    qemu-img resize /opt/oldboy.qcow2  +1G
    将oldboy.qcow2磁盘上进行扩容1G :
    [root@oldboy opt]# qemu-img resize /opt/oldboy.qcow2  +1G	
    Image resized.
    [root@oldboy opt]# 
    [root@oldboy opt]# qemu-img info  /opt/oldboy.qcow2 
    image: /opt/oldboy.qcow2
    file format: qcow2
    virtual size: 11G (11811160064 bytes)
    disk size: 260K
    cluster_size: 65536
    Format specific information:
        compat: 1.1
        lazy refcounts: false

7.4 创建一块qcow2格式的虚拟硬盘:

    qemu-img create -f qcow2 test.qcow2 2G

7.5 两种磁盘格式转换

raw转qcow2
    转换的示例:
    qemu-img convert -f raw     -O qcow2           oldboy.raw   oldboy.qcow2
    转换的格式:
    		convert [-f fmt]   [-O output_fmt]    filename     output_filename

转换文件格式需要修改配置文件,修配置文件,修改的内容如下

    修改配置文件中的磁盘格式:
    
    virsh edit cemtos2
    
    <disk type='file' device='disk'>
          <driver name='qemu' type='qcow2'/>
          <source file='/opt/centos.qcow2'/>
          <target dev='vda' bus='virtio'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </disk>

压缩磁盘空间

原因:当你删除空间后,空间不会进行释放,必要的时候可以将它进行压缩

压缩命令:

    qemu-img convert -c -f qcow2 -O qcow2 centos2.qcow2 oldboy.qcow2
    
    命令解释:
    	-c		压缩参数
    	-f		原磁盘格式
    	-O		

7.6 KVM虚拟机的快照

    创建快照virsh snapshot-create centos7
    查看快照virsh snapshot-list centos7
    
    还原快照virsh snapshot-revert centos7 --snapshotname 1516574134
    删除快照virsh snapshot-delete centos7 --snapshotname 1516636570

注意:

raw不支持做快照,qcow2支持快照,并且快照就保存在qcow2的磁盘文件中

8:kvm虚拟机克隆

8.1 完整克隆虚拟机

    第一步:
    
    virt-clone -o centos2 -n web01 --auto-clone    
    
    参数介绍:
    	-o 		原虚拟机
    	-n		新虚拟机
    	--auto-clone	克隆

注意:一般情况下克隆指定的名称后,磁盘文件名称会按照指定的主机名称创建,但有时例外

    第二步:生成虚拟机磁盘文件
    qemu-img create -f qcow2 -b 49-web03.qcow2 49-web04.qcow2
    第三步:生成虚拟机的配置文件
    	virsh dumpxml web02 >web03.xml
    修改配置文件
    	修改主机名称
    		  <name>49-web03</name>		
    	删除uuid,因为相同的UUID会出错,删除UUID配置在使用虚拟主机的时候,还是会自动生成的
    		  <uuid>8e505e25-5175-46ab-a9f6-feaa096daaa4</uuid>
    	修改磁盘配置文件路径
    		  <source file='/opt/49-web03.qcow2'/>
    	删除Mac地址,相同的Mac地址在使用的时候也是会出错的,删除Mac在启动服务的时候,系统是会默认生成的
      		  <mac address='52:54:00:4e:5b:89'/>
    第四步:导入虚拟机并进行启动测试
    	 virsh define web03.xml
    进行测试
    	virsh start web03

8.2 kvm链接克隆

基于源磁盘文件,创建链接磁盘文件

    第一步:创建链接磁盘文件
    qemu-img create -f qcow2 -b web03.qcow2 web04.qcow2
    
    	-f 磁盘格式
    	-b 创建链接
    	
    将web03.qcow2磁盘链接到web04.qcow2
    第二步:生成虚拟机的配置文件并修改配置文件
    	virsh dumpxml web03 >web04.xml
    修改配置文件
    	修改主机名称
    		  <name>49-web04</name>		
    	删除uuid,因为相同的UUID会出错,删除UUID配置在使用虚拟主机的时候,还是会自动生成的
    		  <uuid>8e505e25-5175-46ab-a9f6-feaa096daaa4</uuid>
    	修改磁盘配置文件路径
    		  <source file='/opt/web04.qcow2'/>
    	删除Mac地址,相同的Mac地址在使用的时候也是会出错的,删除Mac在启动服务的时候,系统是会默认生成的
      		  <mac address='52:54:00:4e:5b:89'/>
    第三步:导入虚拟机并进行启动测试
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /opt/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    第四步:进行启动测试
    	virsh start web04

8.2.1 使用脚本一键化执行KVM连接克隆

    第一种方式:
    自动kvm链接克隆  模板机(web02)  新虚拟机
    virsh dumpxml web02 >$new.xml
    old_disk=`virsh dumpxml web02|grep 'qcow2'|grep -oP "(?<=file=')[^']+"`
    dir=`dirname $old_disk`
    qemu-img create -f qcow2 -b $old_disk ${dir}/$new.qcow2
    sed -ri 's#(<name>)(.*)(</name>)#\1'$new'\3#g' $new.xml
    sed -i '/<uuid>/d' $new.xml
    sed -ri "s#(<source file=')(.*)('/>)#\1${dir}/$new.qcow2\3#g" $new.xml
    sed -i '/<mac address/d' $new.xml
    virsh define $new.xml
    virsh start $new


    第二种方式
    	#!/bin/bash
    dir=/data
    #第一步:
    read -p "请输入老虚拟机名称:" name1
    read -p "请输入新虚拟机名称:" name2
    qemu-img create -f qcow2 -b $dir/${name1}.qcow2 $dir/${name2}.qcow2
    #第二步:基于已有磁盘,启动一台新虚拟机
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name $name2 --memory 1024 --vcpus 1 --disk ${dir}/${name2}.qcow2 --boot hd --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    

9:kvm虚拟机的桥接网络

9.1 :创建桥接网卡

    virsh iface-bridge eth0 br0
    
    	会修改我们的网卡配置文件,或者手写配置文件

取消桥接网卡

    virsh iface-unbridge br0

虚拟主机网络默认是NAT模式,网段192.168.122.0/24

    默认NAT模式主机创建
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /opt/web04.qcow2 --boot hd --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    桥接模式主机创建
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web02 --memory 1024 --vcpus 1 --disk /data/web02.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole

变化得地方:--network

修改已存在主机的网卡模式

    virsh edit centos7

    修改的内容:
    <interface type='bridge'>
      <mac address='52:54:00:55:aa:fa'/>
      <source bridge='br0'/>
      
     在宿主机上,重启虚拟机生效
     
     3:测试虚拟机网络

10:热添加技术

kvm虚拟机在线热添加硬盘

临时生效
virsh  attach-disk web04 /opt/oldboy.qcow2 vdb --subdriver qcow2 
永久生效
virsh  attach-disk web04 /opt/oldboy.qcow2 vdb --subdriver qcow2 --config

热扩容

    创建新硬盘
    qemu-img create -f qcow2  /data/web03-add01.qcow2 10G
    附加新硬盘
    virsh attach-disk  web03  --source /data/web03-add01.qcow2 --target vdb --subdriver qcow2
    
    虚拟机中:
    fdisk -l
    mkfs.xfs  /dev/vdb
    mount /dev/vdb  /mnt
    ....
    扩容:
    umount  /mnt
    
    剥离硬盘
    virsh attach-disk  web03  --target vdb
    扩容:
    qemu-img resize /data/web03-add01.qcow2 +10G
    再插上硬盘
    virsh attach-disk  web03  --source /data/web03-add01.qcow2 --target vdb
    
    虚拟机中:
    fdisk -l
    mount /dev/vdb  /mnt
    df -h
    xfs_growfs /dev/vdb
    df -h
    
    ls /mnt
作业3:扩容kvm虚拟机的根分区

kvm虚拟机在线热添加网卡
kvm虚拟机在线热添加内存
kvm虚拟机在线热添加cpu

qemu-img create -f qcow2 add01.qcow2 5G
virsh attach-disk centos7 /data/centos7-add01.qcow2 vdb --subdriver=qcow2
virsh detach-disk centos7 vdb

虚拟机磁盘扩容:
在kvm虚拟机,卸载
virsh detach-disk centos7 vdb
qemu-img resize /data/centos7-add01.qcow2 +5G
virsh attach-disk centos7 /data/centos7-add01.qcow2 vdb --live --cache=none --subdriver=qcow2

在虚拟机中:xfs_growfs /dev/vdb

根分区扩容:

1)在宿主机上关闭虚拟机并调整虚拟机磁盘大小
qemu-img resize oldboy.qcow2 +10G
2)虚拟机中fdisk重新分区
fdisk /dev/vda
3)重启之后,执行xfs_growfs /dev/vda1,
如果虚拟机磁盘文件系统是ext4:resize2fs /dev/vda1

kvm虚拟机在线热添加网卡

virsh attach-interface web04 --type bridge --source br0 --model virtio
detach-interface web04 --type bridge --mac 52:54:00:35:d3:71

kvm虚拟机在线热添加内存

virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048 --vcpus 1 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
临时热添加内存
setmem web04 1024M --live
永久增大内存
setmem web04 1024M --config

kvm虚拟机在线热添加cpu

virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048 --vcpus 1,maxvcpus=10 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
热添加cpu核数
setvcpus web04 4 --live
永久添加cpu核数
setvcpus web04 4 --config

11:virt-manager和kvm虚拟机热迁移(共享的网络文件系统)

冷迁移kvm虚拟机:配置文件,磁盘文件
热迁移kvm虚拟机:配置文件,nfs共享
1):
yum groupinstall "GNOME Desktop" -y
yum install openssh-askpass -y

yum install tigervnc-server -y

vncpasswd
vncserver :1
vncserver -kill :1

2):kvm虚拟机热迁移

1:两边的环境(桥接网卡)
2:实现共享存储(nfs)
3:虚拟机桥接网络
4:在线热迁移

作业3:扩容kvm虚拟机的根分区

作业4:扩展研究EXSI虚拟化和EXSI iso到kvm的虚拟机迁移
http://blog.51cto.com/liqingbiao/1742724

virt-v2v -i ova centos-dev-test01-v2v.ova -o local -os /opt/test -of qcow2

作业5:p2v迁移(物理机到kvm虚拟机的迁移)
http://blog.csdn.net/tantexian/article/details/42869179

老古董:发热量大,配置低 2G ddr 400MHZ 750w
老古董:发热量大,配置低 2G ddr 400MHZ 750w
。。。。

一台新集群 64G ddr4 2400MHZ 550w

iso镜像,U盘 启动盘 win PE
打包所有根目录的文件,上传到kvm服务器,输出一个qcow2格式,替换驱动,

kvm宿主机 2000台
查看每一个宿主机有多少台虚拟机?
查看每一个宿主机还剩多少资源?
查看每一台宿主机,每一个虚拟机的ip地址?
kvm管理平台,数据库工具
信息:宿主机,总配置,剩余的总配置
虚拟机的信息,配置信息,ip地址,操作系统

带计费功能的kvm管理平台,openstack ceilometer计费
自动化管理kvm宿主机,云主机定制化操作

部署openstack
克隆一台openstack模板机:4G内存,开启虚拟化,挂载centos7.4的光盘
上传脚本openstack-mitaka-autoinstall.sh到/root目录
上传镜像:cirros-0.3.4-x86_64-disk.img到/root目录
上传配置文件:local_settings到/root目录
上传openstack_rpm.tar.gz到/opt下,并解压
sh /root/openstack-mitaka-autoinstall.sh
大概10-30分钟左右
访问http://10.0.0.11/dashboard
域:default
用户名:admin
密码:ADMIN_PASS

注意: 在windows系统上修改host解析(10.0.0.11 controller)

添加node节点:
修改ip地址
hostnamectl set-hostname compute1
重新登录让新主机名生效
cd /opt/
rsync -avz 10.0.0.11:/opt/repo .
上传脚本 openstack_node_autoinstall.sh
sh openstack_node_autoinstall.sh <node节点ip>

openstack controller主控制节点,node节点, kvm宿主机
node节点, kvm宿主机
node节点, kvm宿主机
node节点, kvm宿主机
node节点, kvm宿主机

标签:opt,kvm,虚拟化,--,qcow2,虚拟机,KVM,virsh
From: https://www.cnblogs.com/megshuai/p/18252360

相关文章

  • 虚拟化 之一 详解 jailhouse 架构及原理、软硬件要求、源码文件、基本组件
      Jailhouse是一个基于Linux实现的针对创建工业级应用程序的小型Hypervisor,是由西门子公司的JanKiszka于2013年开发的,并得到了官方Linux内核的支持,在开源社区中获得了知名度和吸引力。Jailhouse  Jailhouse是一种轻量级的虚拟化技术,可以将多个操作系统(或......
  • 常用的虚拟化技术比较
    基于Linux的虚拟化技术Xen:内核虚拟化,支持高度隔离和安全性,但已经逐渐过时。KVM(Kernel-basedVirtualMachine):内核虚拟化,提供高安全性和隔离性,性能较好且广受欢迎。OpenVZ:平台虚拟化,基于容器的技术,只支持Linux,安全性较好,但逐渐过时。Docker:容器虚拟化,只支持Linux,提供轻量级......
  • SDN VMware NSX网络原理与实践-NSX 网络虚拟化概览【1.3】
    第2章NSX网络虚拟化概览        网络虚拟化技术诞生后,有不少厂商都推出了所谓的网络虚拟化解决方案。这些厂商实现“网络虚拟化”的方式各异,有些是自己研发的项目,有些是通过收购,有些是利用开源项目进行再开发。而VMwareNSX网络虚拟化平台的基本架构到底是怎样......
  • 【BUG】鸿蒙模拟器虚拟化问题的解决方案
    找的大佬的教程,有些区别记录在此,以备忘记:创建记事本文档.txt,键入以下代码:pushd"%~dp0"dir/b%SystemRoot%\servicing\Packages\*Hyper-V*.mum>hyper-v.txtfor/f%%iin('findstr/i.hyper-v.txt2^>nul')dodism/online/norestart/add-package:"%System......
  • 云计算底层技术奥秘、磁盘技术揭秘、虚拟化及云概述
    虚拟化是什么?-虚拟化是一种技术,顾名思义,就是将不可拆分的实体资源变成可以自由划分的逻辑资源,从而实现资源的整合、隔离、再分配,云计算就是利用了虚拟化技术的这个特点。云计算是什么?-云计算是一种服务模式(IAAS),其思想就是把个种资源整合起来,然后租给有需要的用户,其中的资......
  • 【虚拟化平台】选对虚拟化引擎:ESXi, Hyper-V, KVM, VirtualBox优劣全览
    虚拟化平台的官方网站VMwareESXi: WhatisESXI|BareMetalHypervisor|ESX|VMwareMicrosoftHyper-V: PagenotfoundKVM(Kernel-basedVirtualMachine):KVM作为Linux内核的一部分,并没有单一的商业网站,但可以参考Linux内核文档或者使用KVM的发行版如RedHatEnte......
  • windows server系统物理机虚拟化迁移至ESXi 8.0
    项目场景:客户公司服役15年的3台老服务器,因为设备过于老旧,随着数据量的不断增大以及业务复杂程度不断提高,老旧服务器面临升级换代的需求。但是系统提供商已经不再提供老系统的部署服务,更换新版MIS系统造价大约需要20W(只软件升级费用)。于是提出服务器虚拟化的解决方案,总造价......
  • Fortinet FortiOS 6.4.15 (FortiGate For ESXi, Hyper-V, KVM, Xen) 下载
    FortinetFortiOS6.4.15(FortiGateForESXi,Hyper-V,KVM,Xen)下载下一代防火墙(NGFW)、虚拟化NGFW和云原生防火墙请访问原文链接:https://sysin.org/blog/fortios-6/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgFortinetFortiGateNGFWFortiGate:下一......
  • kvm链接克隆虚拟机迁移到openstack机器的实验
     总结如果是完整克隆的那种虚拟机,是可以直接在openstack使用的,如果镜像格式没问题的话。 因为kvm虚拟机大部分都是链接克隆出来的镜像,不可用直接复制使用,所以需要创建新的镜像文件 创建空盘:qemu-imgcreate-fqcow2mcwlink1-new.qcow250G将链接克隆镜像数据导入到空......
  • minos 1.1 内存虚拟化——hyp
    首发公号:Rand_csminos1.1内存虚拟化——hyp内存虚拟化,目前理解主要两方面:内存管理,没有虚拟化的情况时,对于Linux内核运行在物理硬件之上,内核需要管理物理内存,需要管理进程的虚拟内存。类似,type1类型的hypervisor/minos运行在物理硬件上,minos需要对物理内存管理,需要对......