热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

部署和管理KVM虚拟化笔记

一、部署KVM虚拟化环境         1、安装KVM所需软件yumgroupinstall-yGNOMEDesktop         安装GNOME桌面环境yum-yin

一、部署KVM虚拟化环境            
1、安装KVM所需软件
yum groupinstall -y "GNOME Desktop"            //安装GNOME桌面环境
yum -y install qemu-kvm                        //KVM模块
yum -y install qemu-kvm-tools                //KVM调试工具,可不安装.
yum -y install virt-install                    //构建虚拟机的命令行工具.
yum -y install qemu-img                        //qemu组件,创建磁盘、启动虚拟机等
yum -y install bridge-utils                    //网络支持工具
yum -y install libvirt                        //虚拟机管理工具.
yum -y install virt-manager                    //图形界面管理虚拟机.

2、更改target
systemctl set-default graphical.target         //将target更改为graphical.target图形化界面
systemctl set-default multi-user.target     //将target更改为multi-user.target字符界面
reboot

3、环境检测
cat /proc/cpuinfo | grep vmx            //Intel服务器查看CPU是否支持虚拟化
cat /proc/cpuinfo | grep smv            //AMD服务器查看CPU是否支持虚拟化
lsmod | grep kvm                        //检查KVM模块是否安装

3、开启相关服务
systemctl start libvirtd
systemctl enable libvirtd

4、修改网卡配置文件(桥接模式)
vim /etc/sysconfig/network-scripts/ifcfg-ens33 
添加
PROXY_METHOD="none"
BRIDGE=br0
删除IP地址
vim /etc/sysconfig/network-scripts/ifcfg-br0 
TYPE="bridge"
PROXY_METHOD="none"
BROWSER_OnLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
NAME="br0"
DEVICE="br0"
OnBOOT="yes"
IPADDR="192.168.100.10"
NETMASK="255.255.255.0"

二、KVM管理
1、查看帮助
virsh -h
2、查看KVM的配置文件存放目录(*.xml是虚拟机系统实例的配置文件)
ls /etc//libvirt/qemu
3、查看虚拟机状态
virsh list --all
 Id    名称                         状态
----------------------------------------------------
 1     centos7.0                      running
4、虚拟机开关机(需要确定acpid服务安装并允许)
virsh shutdown centos7.0
域 centos7.0 被关闭
virsh start centos7.0
域 centos7.0 已开始
5、强制实例系统关闭电源
virsh destroy centos7.0
域 centos7.0 被删除
6、通过配置文件启动虚拟机系统实例
virsh create /etc/libvirt/qemu/centos7.0.xml
域 centos7.0 被创建(从 /etc/libvirt/qemu/centos7.0.xml)
7、挂起虚拟机
virsh suspend centos7.0
域 centos7.0 被挂起
8、恢复虚拟机
virsh resume centos7.0
域 centos7.0 被重新恢复
9、配置虚拟机实例伴随宿主机自动启动
virsh autostart centos7.0(将创建/etc/libvirt/qemu/autostart目录,目录内容为开机自动启动的系统)
域 centos7.0标记为自动开始
10、导出虚拟机配置
virsh dumpxml centos7.0 > /etc/libvirt/qemu/test01.xml
11、虚拟机的删除与添加(centos7.0的配置文件被删除,但是磁盘文件不会被删除)
删除
virsh shutdown centos7.0
域 centos7.0 被关闭
virsh undefine centos7.0
域 centos7.0 已经被取消定义
添加
通过备份的配置文件重新定义虚拟机
cd /etc/libvirt/qemu/
mv test01.xml centos7.0.xml
重新定义虚拟机
virsh define centos7.0.xml 
定义域 centos7.0(从 centos7.0.xml)
12、修改虚拟机配置信息(内存大小、磁盘文件等)
vim /etc/libvirt/qemu/centos7.0.xml
virsh edit centos7.0

三、KVM文件管理
1、查看当前磁盘格式
[root@centos001 ~]# qemu-img info /data_kvm/store/bdqn_kvm.qcow2 
image: /data_kvm/store/bdqn_kvm.qcow2
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 4.2G
cluster_size: 65536
Format specific information:
    compat: 1.1
    lazy refcounts: true
将raw格式磁盘转换至qcow2格式
virsh edit test01
qemu-img convert -f raw -o qcow2 /data_kvm/store/test01.img /data_kvm/store/test01.qcow2
转化后修改.xml配置文件中磁盘类型和磁盘文件名
virsh edit test01
2、
virt-cat -a /data_kvm/store/bdqn_kvm

四、虚拟机克隆
1、查看虚拟机状态
[root@centos001 ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     centos7.0                      关闭
2、克隆虚拟机(克隆centos7.0成为bdqn)
[root@centos001 ~]# virt-clone -o centos7.0 -n bdqn -f /data_kvm/store/bdqn.qcow2
正在分配 'bdqn.qcow2'                                                |  10 GB  00:00:28     
成功克隆 'bdqn'。
3、查看虚拟机状态
[root@centos001 ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     bdqn                           关闭
 -     centos7.0                      关闭
4、启动虚拟机
[root@centos001 ~]# virsh start bdqn
域 bdqn 已开始

五、虚拟机快照(KVM虚拟机要使用镜像功能,磁盘格式必须为qcow2)建议关机进行
1、对bdqn创建快照
[root@centos001 ~]# virsh snapshot-create bdqn
已生成域快照 1578653401
2、查看虚拟机快照版本信息
[root@centos001 ~]# virsh snapshot-current bdqn

  1578653401        //快照版本号
······
3、查看快照信息
[root@centos001 ~]# virsh snapshot-list bdqn
 名称               生成时间              状态
------------------------------------------------------------
 1578653401           2020-01-10 10:50:01 +0000 running
4、创建新快照
[root@centos001 ~]# virsh snapshot-create bdqn
已生成域快照 1578653739
5、查看快照信息
[root@centos001 ~]# virsh snapshot-list bdqn
 名称               生成时间              状态
------------------------------------------------------------
 1578653401           2020-01-10 10:50:01 +0000 running
 1578653739           2020-01-10 10:55:39 +0000 running
6、恢复快照状态至1578653401
[root@centos001 ~]# virsh snapshot-revert bdqn 1578653401
7、查看虚拟机快照版本信息
[root@centos001 ~]# virsh snapshot-current bdqn

  1578653401        //快照版本号
······
8、删除快照
[root@centos001 ~]# virsh snapshot-delete bdqn 1578653739
已删除域快照 1578653739
9、查看快照信息
[root@centos001 ~]# virsh snapshot-list bdqn 
 名称               生成时间              状态
------------------------------------------------------------
 1578653401           2020-01-10 10:50:01 +0000 running



推荐阅读
  • 本文介绍了 Python 中的基本数据类型,包括不可变数据类型(数字、字符串、元组)和可变数据类型(列表、字典、集合),并详细解释了每种数据类型的使用方法和常见操作。 ... [详细]
  • 传统上,Java 的 String 类一直使用 char 数组来存储字符数据。然而,在 Java 9 及更高版本中,String 类的内部实现改为使用 byte 数组。本文将探讨这一变化的原因及其带来的好处。 ... [详细]
  • C#实现文件的压缩与解压
    2019独角兽企业重金招聘Python工程师标准一、准备工作1、下载ICSharpCode.SharpZipLib.dll文件2、项目中引用这个dll二、文件压缩与解压共用类 ... [详细]
  • Hadoop的文件操作位于包org.apache.hadoop.fs里面,能够进行新建、删除、修改等操作。比较重要的几个类:(1)Configurati ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • 本文详细介绍了Java反射机制的基本概念、获取Class对象的方法、反射的主要功能及其在实际开发中的应用。通过具体示例,帮助读者更好地理解和使用Java反射。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 零拷贝技术是提高I/O性能的重要手段,常用于Java NIO、Netty、Kafka等框架中。本文将详细解析零拷贝技术的原理及其应用。 ... [详细]
  • Java高并发与多线程(二):线程的实现方式详解
    本文将深入探讨Java中线程的三种主要实现方式,包括继承Thread类、实现Runnable接口和实现Callable接口,并分析它们之间的异同及其应用场景。 ... [详细]
  • MySQL Decimal 类型的最大值解析及其在数据处理中的应用艺术
    在关系型数据库中,表的设计与SQL语句的编写对性能的影响至关重要,甚至可占到90%以上。本文将重点探讨MySQL中Decimal类型的最大值及其在数据处理中的应用技巧,通过实例分析和优化建议,帮助读者深入理解并掌握这一重要知识点。 ... [详细]
  • 深入解析C语言中结构体的内存对齐机制及其优化方法
    为了提高CPU访问效率,C语言中的结构体成员在内存中遵循特定的对齐规则。本文详细解析了这些对齐机制,并探讨了如何通过合理的布局和编译器选项来优化结构体的内存使用,从而提升程序性能。 ... [详细]
  • 在 CentOS 7 环境中使用 MySQL 5.6 镜像启动数据库时遇到权限问题,本文将详细探讨并提供解决方案。 ... [详细]
  • Android 自定义 RecycleView 左滑上下分层示例代码
    为了满足项目需求,需要在多个场景中实现左滑删除功能,并且后续可能在列表项中增加其他功能。虽然网络上有很多左滑删除的示例,但大多数封装不够完善。因此,我们尝试自己封装一个更加灵活和通用的解决方案。 ... [详细]
  • 在 CentOS 6.4 上安装 QT5 并启动 Qt Creator 时,可能会遇到缺少 GLIBCXX_3.4.15 的问题。这是由于系统中的 libstdc++.so.6 版本过低。本文将详细介绍如何通过更新 GCC 版本来解决这一问题。 ... [详细]
  • JUC(三):深入解析AQS
    本文详细介绍了Java并发工具包中的核心类AQS(AbstractQueuedSynchronizer),包括其基本概念、数据结构、源码分析及核心方法的实现。 ... [详细]
author-avatar
2012张小雷_812
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有