使用KVM命令集管理虚拟机

14.2.1案例分析

     

      案例环境使用一台物理机器,一台服务器安装CentOS7.3的64位系统(即node01),rhel7.1是在宿主机node01中安装的虚拟机。

 14.2.2案例实施

1.安装Linux虚拟机

安装过程同上一案例,使用Xshell 远程控制node01主机。

2.KVM基本功能管理

1)查看命令帮助

[root@node01 ~]# virsh -h

2)查看KVM的配置文件存放目录(rhel7.1.xml是虚拟机系统实例的配置文件)

[root@node01 ~]# ls /etc/libvirt/qemu

3)查看虚拟机状态

[root@node01 ~]# virsh list --all

4)虚拟机关机与开机

首先需要确认acpid服务安装并运行。

[root@node01 ~]# virsh shutdown rhel7.1 

[root@node01 ~]# virsh start rhel7.1

5)强制实例系统关闭电源

[root@node01 ~]# virsh destroy rhel7.1

6)通过配置文件启动虚拟机系统实例

[root@node01 ~]# virsh create /etc/libvirt/qemu/rhel7.1.xml

7) 挂起虚拟机

[root@node01 ~]# virsh  suspend rhel7.1

查看虚拟机状态:

[root@node01 ~]# virsh list --all

8)恢复虚拟机

[root@node01 ~]# virsh resume rhel7.1
[root@node01 ~]# virsh list --all

9)配置虚拟机实例伴随宿主机自动启动

[root@node01 ~]# virsh autostart rhel7.1

上述命令将创建/etc/libvirt/qemu/autostart/目录,目录内容为开机自动启动的系统。

10)导出虚拟机配置

[root@node01 ~]# virsh dumpxml rhel7.1 > /etc/libvirt/qemu/rhel7.2.xml

11)虚拟机的删除与添加

删除虚拟机:

[root@node01 ~]# virsh shutdown rhel7.1
[root@node01 ~]# virsh undefine rhel7.1  //删除rhel7.1虚拟机

查看删除结果,rhel7.1的配置文件被删除,但是磁盘文件不会被删除。

[root@node01 ~]# ls /etc/libvirt/qemu

通过“virsh list --all查看不到rhel7.1的信息,说明此虚拟机被删除。

[root@node01 ~]# virsh list --all

通过备份的配置文件重新定义虚拟机:

[root@node01 ~]# cd /etc/libvirt/qemu/
[root@node01 qemu]# mv rhel7.2.xml rhel7.1.xml

重新定义虚拟机:

[root@node01 qemu]# virsh define rhel7.1.xml

查看虚拟机信息:

[root@node01 qemu]# virsh list --all 

12)可通过修改虚拟机配置信息(用来修改系统内存大小,磁盘文件等信息)

直接通过 vim命令修改:

[root@node01 ~]# vim /etc/libvirt/qemu/rhel7.1.xml

通过 virsh 命令修改:

[root@node01 ~]# virsh edit rhel7.1

3.KVM文件管理

通过文件管理可以直接查看、修改、复制虚拟机的内部文件。例如,当系统因为配置问题无法启动时,可以直接修改虚拟机的文件。虚拟机磁盘文件有raw、qcow2与qed格式,KVM虚拟机默认使用qcow2格式,这里介绍本地YUM安装libguestfs-tools后产生的命令行工具,这个工具可以直接读取qcow2格式的磁盘文件。

(1)查看当前磁盘格式:

[root@node01 ~]# mount /dev/cdrom /mnt/
[root@node01 ~]# yum -y install libguestfs-tools

[root@node01 ~]# qemu-img info /data_kvm/store/bdqn_kvm.qcow2

       如果虚拟机磁盘文件不是qcow2格式,可以通过“qemu-img”命令转换磁盘文件格式,如执行 以下操作可以将rhel7.1虚拟机raw格式磁盘转换至qcow2格式。

[root@node01 ~]# virsh shutdown rhel7.1

[root@node01 ~]# qemu-img convert -f raw -O qcow2 /data_kvm/store/test01.img /data_kvm/store/test01.qcow2

执行转换磁盘格式的命令后还需要修改test01 的xml 配置文件中磁盘的类型与磁盘文件名。(因安装的硬盘文件已是qcow2格式,所以无需修改)

[root@node01 ~]# virsh edit rhel7.1

(2)virt-cat命令,类似于cat命令。

[root@node01 ~]# virt-cat -a /data_kvm/store/bdqn_kvm.qcow2 /etc/sysconfig/grub

(3) virt-edit 命令,用于编辑文件,用法与vim基本一致。

[root@node01 ~]# virt-edit -a /data_kvm/store/bdqn_kvm.qcow2 /etc/resolv.conf

(4)virt-df 命令用于查看虚拟机磁盘信息。

[root@node01 ~]# virt-df -h rhel7.1

4.虚拟机克隆

1)查看虚拟机状态

[root@node01 ~]# virsh list --all

2)从 rhel7.1克隆rhel7.2

[root@node01 ~]# virt-clone -o rhel7.1 -n rhel7.2 -f /data_kvm/store/bdqn_kvm2.qcow2

3)查看虚拟机状态

[root@node01 ~]# virsh list --all

4)启动虚拟机

[root@node01 ~]# virsh start rhel7.2

5.虚拟机快照

KVM虚拟机要使用镜像功能,磁盘格式必须为qcow2。下面介绍KVM虚拟机快照备份的过程。

1)对rhel7.1创建快照

[root@node01 ~]# virsh snapshot-create rhel7.1

2)查看虚拟机快照版本信息

[root@node01 ~]# virsh snapshot-current rhel7.1

3)查看快照信息

[root@node01 ~]# virsh snapshot-list rhel7.1

4)创建新快照

[root@node01 ~]# virsh snapshot-create rhel7.1

5)查看快照信息

[root@node01 ~]# virsh snapshot-list rhel7.1

6)恢复虚拟机状态至1704357112

[root@node01 ~]# virsh snapshot-revert rhel7.1 1704357112

7)查看虚拟机快照版本信息

[root@node01 ~]# virsh snapshot-current rhel7.1

8) 测除快照

[root@node01 ~]# virsh snapshot-delete rhel7.1 1704357112

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/292175.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视频号上怎么开店带货?门槛和注意事项,如下所示

我是王路飞。 视频号上现在也可以开店带货了(严格来说从22年就可以了)。 我们团队是在22年9月份开始入局视频号电商这个赛道的,在此之前是专注于抖店,目前两个项目都在做。 今天不聊抖店,主要说下视频号上开店带货的…

Win10电脑关闭OneDrive自动同步的方法

在Win10电脑操作过程中,用户想要关闭OneDrive的自动同步功能,但不知道具体要怎么操作?首先用户需要打开OneDrive,然后点击关闭默认情况下将文档保存到OneDrive选项保存,最后关闭在这台电脑上同步设置保存就好了。接下来…

Flink 维表关联方案

Flink 维表关联方案 1、Flink DataStream 关联维表 1)概述 1.分类 实时数据库查找关联(Per-Record Reference Data Lookup) 预加载维表关联(Pre-Loading of Reference Data) 维表变更日志关联(Refere…

微信小程序+前后端开发学习材料

目录结构 全局文件 1.app.json 文件 用来对微信小程序进行全局配置,决定页面文件的路径、窗口表现、设置网络超时时间、设置多 tab 等。文件内容为一个 JSON 对象。 1.1 page用于指定小程序由哪些页面组成,每一项都对应一个页面的 路径(含文…

【数值分析】Hermite插值

4. Hermite插值 理论和应用中提出的某些插值问题,要求插值函数 p ( x ) {p(x)} p(x) 具有一定的光滑度,即在插值节点处满足一定的导数条件,这类插值问题称为Hermite插值问题。题目大多以三次Hermite插值为主。三次Hermite插值需要四个条件&…

Leetcode的AC指南 —— 字符串/卡码网:55. 右旋字符串

摘要: Leetcode的AC指南 —— 字符串/卡码网:55. 右旋字符串。题目介绍:字符串的右旋转操作是把字符串尾部的若干个字符转移到字符串的前面。给定一个字符串 s 和一个正整数 k,请编写一个函数,将字符串中的后面 k 个字…

grep笔记240103

常用选项:: -i:忽略大小写进行匹配。 -v:反向匹配,只打印不匹配的行。 -n:显示匹配行的行号。 -r:递归查找子目录中的文件。 -l:只打印匹配的文件名。 -c:只打印匹配的行…

整理的6个Linux运维脚本

整理的6个Linux运维脚本 1、统计/etc/passwd 中能登录的用户,并将对应在/etc/shadow 中第二列密码提取2、查看当前连接到本机的远程IP地址3、检测本机当前用户是否为超级管理员(root)4、检查指定目录下是否存在对应文件5、查找 Linux 系统中的…

QT_02 窗口属性、信号槽机制

QT - 窗口属性、信号槽机制 1. 设置窗口属性 窗口设置 1,标题 2,大小 3,固定大小 4,设置图标在 widget.cpp 文件中: //设置窗口大小,此时窗口是可以拉大拉小的 //1参:宽度 //2参:高度 this->resize(800, 600); //设置窗口标题 this->setWindowTitle("…

使用 Palantir 表征单细胞数据中的细胞状态概率

使用 Palantir 表征单细胞数据中的细胞状态概率 写在前面的概览正文内容摘要Introduction结果马尔可夫过程The Palantir algorithm早期人类造血的景观Palantir 概括了预期的造血趋势与轨迹推理算法的比较 讨论 学习文献 写在前面的概览 Palantir算法主要用于模拟细胞分化的轨迹…

Redis缓存穿透,缓存击穿,缓存雪崩

文章目录 Redis缓存穿透,缓存击穿,缓存雪崩1. 缓存穿透1.1 解决方案1:缓存空数据1.2 解决方案2:使用布隆过滤器1.2.1 布隆过滤器介绍 2. 缓存击穿2.1 解决方案1:互斥锁2.2 解决方案2:逻辑过期 3. 缓存雪崩3…

交易逆序对的总数

题目链接 交易逆序对的总数 题目描述 注意点 0 < record.length < 50000 解答思路 本题是归并排序的扩展&#xff0c;可以先进入手撕归并排序了解利用归并排序进行合并时&#xff0c;对于左侧区间当前的首个元素leftNum&#xff0c;不论右侧区间当前的首个元素right…

【智慧地球】星图地球 | 星图地球超算数据工场

当前空天信息处理涉及并发并行的大量计算问题&#xff0c;需要高性能计算、智能计算联合调度&#xff0c;以此来实现多算力融合&#xff1b;而我国算力产业规模快速增长&#xff0c;超算算力资源正需要以任务驱动来统筹。 基于此&#xff0c;中科星图与郑州中心展开紧密合作&a…

使用 Process Explorer 和 Windbg 排查软件线程堵塞案例分享

目录 1、问题说明 2、线程堵塞的可能原因分析 3、使用Windbg和Process Explorer确定线程中发生了死循环 4、根据Windbg中显示的函数调用堆栈去查看源码&#xff0c;找到问题 4.1、在Windbg定位发生死循环的函数的方法 4.2、在Windbg中查看变量的值去辅助分析 4.3、是循环…

抖店申请流程是什么?

我是电商珠珠 想要入驻抖店的人很多&#xff0c;但是知道流程的新手却没有几个。 从开店资料到入驻流程&#xff0c;我来具体的跟大家讲一讲。 第一个&#xff0c;新手开店资质 1、营业执照 营业执照是入驻门槛之一&#xff0c;营业执照类型分为两类&#xff0c;一类为企业…

快速批量运行命令

Ansible 是 redhat 提供的自动化运维工具&#xff0c;它是 Python编写&#xff0c;可以通过 pip 安装。 pip install ansible 它通过任务(task)、角色(role)、剧本(playbook) 组织工作项目&#xff0c;适用于批量化系统配置、软件部署等需要复杂操作的工作。 但对于批量运行命…

进程的程序替换(exec函数)【Linux】

进程的程序替换详解exec函数【Linux】 程序替换的原理exec系列函数函数理解命令理解&#xff08;助记&#xff09; 关于程序替换中环境变量的解释exec函数之间的关系exec函数的使用execlexeclpexecleexecv 程序替换的原理 进程的程序替换就是让子进程执行新程序&#xff0c; 执…

使用华为云鲲鹏弹性云服务器部署Discuz

本实验将在华为云鲲鹏弹性云服务器CentOS系统的实例上&#xff0c;部署Discuz!项目&#xff0c;并进行初步的安装测试。 注意&#xff1a;官网文档有些链接失效&#xff0c;本文在官方文档的基础上作出修改&#xff0c;具体参见Discuz安装这一步 操作前提&#xff1a;登录华为…

Android : 使用GestureDetector 进行手势识别—简单应用

示例图&#xff1a; GestureDetector 介绍&#xff1a; GestureDetector 是 Android 开发中用于识别和处理手势的一个类。它允许开发者检测用户在触摸屏上的各种手势&#xff0c;如滑动、长按、双击等。通过使用 GestureDetector&#xff0c;您可以轻松地为应用程序添加手势识…

FPGA设计时序约束十五、Set_Bus_Skew

目录 一、序言 二、Set Bus Skew 2.1 基本概念 2.2 设置界面 2.3 命令语法 2.4 报告分析 三、工程示例 3.1 工程代码 3.2 时序报告 四、参考资料 一、序言 在时序约束中&#xff0c;对时钟的约束除了set clock latency,set clock uncertainty,set input jitter外&…