首页 > 其他分享 >KVM

KVM

时间:2024-09-07 13:22:55浏览次数:13  
标签:虚拟化 -- qcow2 虚拟机 KVM virsh

KVM_KVM

 KVM(Kernel-based Virtual Machine)是基于内核的虚拟机。

 KVM本质是Linux内核中的虚拟化功能模块kvm.ko,利用Linux做大量的事,如任务调度、内存管理与硬件设备交互等。是开源软件。

在KVM虚拟化方案中,KVM主要用于管理CPU和内存的虚拟化,IO设备的虚拟化则由QEMU来完成。KVM借助了QEMU的源码。

虚拟化平台管理工具 - LibvirtLibvirt是一套由C语言开发的API,主要目标是提供一种通用并且稳定的软件层,来管理物理主机上多种不同的虚拟化方式和虚拟主机,并支持远程管理。

Libvirt是Linux上的虚拟化库,Libvirt也是一个开源项目,它是一个非常强大的虚拟化平台管理工具,被管理的虚拟化平台可以是KVM,也可以是Xen、VMware以及Hyper-V等。

安装KVM

配置yum源

mount /dev/cdrom /mnt/

[root@yw yum.repos.d]# cat abc.repo

[abc]

name = abc

baseurl = file:///mnt/

gpgcheck = 0

[root@yw ~]# yum groups install "Virtualization*"

了解虚拟化网络类型

仅主机:

VMnet1(虚拟交换机)虚拟机之间能够互通,默认情况下不能出外网。 为了安全起见本地环境之间才能互通。

KVM_KVM_02

你想在本地搭建集群,节点的是手工绑定静态IP,还想去上外网,如果你选择桥接,wife是无线网络,无线网络可以获取IP地址,更换了网络环境。不同网段之间,就通不了外网了。最好选择NAT。

NAT:

KVM_KVM_03

桥接:

虚拟机可以通过桥接上外网。依赖于物理网络环境,未来创建的虚拟机网段会和桥接的网段相同。

KVM_KVM_04

KVM图形化指定虚拟机存储

图形化创建的虚拟机默认磁盘是存放在该目录下

[root@cen82 ~]# ls /var/lib/libvirt/images/

centos701.qcow2

能否手工指定存储路径呢?在指定的路径下首先创建虚拟机所用的磁盘

[root@cen82 ~]# qemu-img create -f qcow2 /data/centos701.qcow2 20g

Formatting '/data/centos701.qcow2', fmt=qcow2 size=21474836480 cluster_size=65536 lazy_refcounts=off refcount_bits=16

[root@cen82 ~]# ls /data/

centos701.qcow2

之后,通过图形化创建虚拟机的时候可以选择刚才

手工创建的存储磁盘 centos701.qcow2

KVM_KVM_05

KVM命令行创建虚拟机

qemu-img create -f qcow2 /disk/centos3.qcow2 10g

virt-install \

--name ecs03 \

--memory 2048 \

--vcpus 1 \

--disk path=/disk/centos3.qcow2 \

--location /iso/CentOS-7.6.1810-x86_64-DVD.iso \

--network network=default \

--noautoconsoleKVM命令行创建虚拟机-kickstart全自动安装

1. 安装httpd

yum install -y httpd

2. 启动服务

systemctl start httpd

systemctl enable httpd开机自启动

3. 防火墙关闭

systemctl stop firewalld

systemctl disable firewalld

4.生成kickstart文件

yum install -y system-config-kickstart.noarch 安装工具

5.修改repo里面的repoid

[root@yw yum.repos.d]# vim abc.repo

[root@yw yum.repos.d]# cat abc.repo

[development]

name = abc

baseurl = file:///mnt/

gpgcheck = 0

system-config-kickstart  --启动工具,注意禁用udev命名规则

net.ifnames=0 biosdevname=0 cnotallow=ttyS0  并通过 virsh console xxx 方式连接到虚拟机里面,相当于插上了一根console线。

6.将文件保存到/var/www/html/abc/下面

这时候通过网页即可访问到

http://192.168.142.132/abc/ks.cfg

KVM_KVM_06

7.创建硬盘,启动虚拟机

qemu-img create -f qcow2 /disk/centos4.qcow2 15g

virt-install \

--name ecs04 \

--memory 2048 \

--vcpus 1 \

--disk path=/disk/centos4.qcow2 \

--location /root/iso/CentOS-7-x86_64-DVD-2003.iso \

--network network=default \

--noautoconsole \

-x ks=http://192.168.142.132/abc/ks.cfg

8. 插入console线,到时候就可以登录查看IP地址。

[root@cen82 ks]# virsh console centos705

Connected to domain centos705

Escape character is ^]

CTRL + ]

KVM基本命令:

virsh --help 查看帮助

virsh list --all 列出所有虚拟机(包括正在运行的和关闭的)

virsh list 列出所有虚拟机(仅运行中的)

virsh start centos705 --启动虚拟机

virsh shutdown centos705 -- 关闭虚拟机

virsh reboot centos705 --重启虚拟机

如果虚拟机关不了,强制关闭,非正常关闭

virsh destroy centos705

清除配置

virsh undefine centos705

标签:虚拟化,--,qcow2,虚拟机,KVM,virsh
From: https://blog.51cto.com/u_16321614/11944769

相关文章

  • kvm虚拟化功能特性及优缺点?
    KVM(Kernel-basedVirtualMachine)是一种基于Linux内核的开源虚拟化技术,它通过将Linux内核转变为一个Type1Hypervisor来提供虚拟化功能。以下是KVM的一些主要功能特性以及它的优缺点:功能特性开源性质:KVM是开源软件,允许用户自由使用、修改和分发。硬件辅助虚拟化:KVM利用CPU的硬件虚......
  • KVM虚拟化
    概述虚拟化是一种技术,可以利用以往局限于硬件的资源来创建有用的IT服务。它让您能够将物理计算机的工作能力分配给多个用户或环境,从而充分利用计算机的所有能力。1.1工作原理一种叫做Hypervisor(虚拟机监控程序)的软件可有效分隔物理资源,并将这些资源分配给不同虚拟环境(也就......
  • 巧用guestfish工具修改kvm镜像
    场景1:KVM虚拟机启动后,如果想ssh这个虚拟机,但是却不知道不知道默认的用户名和密码,这时可以利用guestfish工具把自己的publicsshkey注入到目标虚拟机,从而实现通过sshkey登录的目的。1得到虚拟机启动盘的qcow2镜像的位置virshdumpxml<VMName><devices>   <emulator>/usr/b......
  • KVM修改网络产生报错
    事件描述:用户尝试使用virsh命令启动名为default的虚拟网络,但遇到了错误。错误信息表明default网络无法启动,因为没有.service文件提供org.fedoraproject.FirewallD1这个名称。报错过程及结果:首先编辑了default网络的XML配置文件:[root@localhost~]#virshnet-......
  • KVM网络模式
    在KVM(Kernel-basedVirtualMachine)虚拟化环境中,有几种不同的网络模式可以用来配置虚拟机(VMs)的网络连接。这些模式主要通过libvirt工具来设置,libvirt是一个管理KVM和其他虚拟化技术的工具集。下面是KVM中常用的几种网络模式:Bridge(桥接)模式:描述:在这种模式下,虚拟机与宿......
  • kvm 虚拟化
    KVM(用于基于内核的虚拟机)是适用于x86硬件上的linux的完整虚拟化解决方案,包含虚拟化扩展(InterVT或AMD-V)。它由一个可加载的内核模块kvm.ko和一个处理器特定模块kvm-intel.ko或kvm--amd.ko组成使用KVM,可以运行多个未经修改的linux或windows映像的虚拟机。每个虚拟机都有私有......
  • kvm主机快照
    #默认是以时间戳命名快照,没有备注我们不好区别virshsnapshot-createdomain-name查看快照[root@kafka-1ssh]#virshsnapshot-listauto-clone2-bridge-vmNameCreationTimeState----------------------------------------------------......
  • KVM——存储池与快照
    目录KVM存储池的重要概念和功能KVM存储池的管理方式KVM存储池在虚拟机迁移中的作用制作存储池 存储池相关管理命令 KVM快照KVM快照的概念和作用注意事项在KVM(Kernel-basedVirtualMachine)虚拟化平台中,存储池(StoragePool)是用来管理和存储虚拟机镜像及其相关数据......
  • KVM——虚拟机添加设备与挂载磁盘
    目录一.图形化方式添加设备1. 添加磁盘2.添加网卡二.命令行形式添加设备 方式一: 方式二:磁盘格式raw和qcow2raw格式qcow2格式如何选择挂载磁盘 一.图形化方式添加设备 1. 添加磁盘2.添加网卡先关机给宿主机添加一块网卡查看宿主机新增的......
  • 部署KVM虚拟化平台
    一、基本概述1.KVM原理广义的KVM包含两部分,一部分是基于Linux内核支持KVM内核模块,另一部分是简化和修改Qemu。KVM内核模块处理器和内存支持虚拟机运行,Qemu主要处理I/O为用户提供空间工具进行处理。2.KVM三种工作模式客户模式:执行非I/O的客户代码,虚拟机运行在这个模式下......