创建KVM虚拟机

1.图形化界面创建

第一步:查看软件包组

yum grouplist

第二步:下载GUI界面的软件包组

yum groupinstall "Server with GUI"

第三步:进入图形化界面

startx

2.复制镜像文件

复制镜像文件到 /var/lib/libvirt/images/

/var/lib/libvirt/images/:
CentOS-7-x86_64-DVD-1611.iso

3.可以创建虚拟机了

找到virt-manager工具并安装虚拟机

命令行下创建 && 管理虚拟机

Virt-install:  命令行下创建虚拟机的命令,不过在它后面需要跟上很多的参数
--name: 虚拟机的名字。
--disk Location: 磁盘映像的位置。
--graphics : 怎样连接 VM ,通常是 SPICE 。
--vcpu : 虚拟 CPU 的数量。
--ram : 以兆字节计算的已分配内存大小。
--location : 指定安装源路径
--network : 指定虚拟网络,通常是 virbr0 或者自己设定的 br0 #例如:
virt-install --name=test --disk path=/export/kvm/test.qcow2 --ram=1024 --vcpus=1 --graphics spice --location=/export/download/software/iso/CentOS-7.3-x86_64-DVD.iso --network bridge=br0

KVM虚拟机主要文件位置

/etc/libvirt/qemu       #主配置文件目录
/etc/libvirt/storage #存储池(Storage Pool)配置文件 /var/lib/libvirt/images/: #默认磁盘存储文件目录 主配置文件中有定义
CentOS-7-x86_64-DVD-1611.iso
test1.qcow2 #磁盘存储文件

KVM 通过virsh console连入虚拟机

第一步:centos7系统,在vm-name虚拟机中运行;

 grubby --update-kernel=ALL --args="console=ttyS0"

reboot  #重启

第二步:宿主机上连接vm-name虚拟机

virsh console vm-name

第三步:退出

按 ctrl+] 组合键退出virsh console

远程管理虚拟机

1.前提

virt-manager不仅能管理本地主机上的KVM虚拟机,还能管理其它宿主机上的虚拟机

2.准备

因为 KVM(准确说是 Libvirt)默认不接受远程管理,需要按下面的内容配置被管理宿主机中的两个文件:

vim /etc/default/libvirt-bin
...
start_libvirtd="yes"
libvirtd_opts="-d -l"
...
vim /etc/libvirt/libvirtd.conf
...
listen_tls = 0
listen_tcp = 1
unix_sock_group = "libvirtd"
unix_sock_ro_perms = "0777"
unix_sock_rw_perms = "0770"
auth_unix_ro = "none"
auth_unix_rw = "none"
auth_tcp = "none"
...

重启libvirtd服务

systemctl restart libvirt-bin

3.远程管理虚拟机

通过virt-manager工具添加连接,远程连接其他宿主机

virsh命令行下管理虚拟机

virsh list           #列出当前宿主机上处于运行状态的虚拟机
virsh list --all #列出当前宿主机上所有的虚拟机
virsh start vm1 #(虚拟机name) 开启某一台虚拟机
virsh shutdown vm1 # (虚拟机name) 正常关闭一台虚拟机
virsh destroy vm1 # 强制关闭某一台虚拟机
virsh autostart vm1 #开机自启动虚拟机vm1
virsh autostart --disable vm1 #关闭开机自启动
virsh edit vm1 #编辑某个虚拟机的配置文件
virsh pool-list #列出存储池 qemu-img create -f qcow2 -o size=9G /export/kvm/test.qcow2
创建一个大小为 50G 的,格式为 qcow2 的磁盘镜像 查看磁盘信息:
qemu-img info /export/kvm/test.qcow2

KVM虚拟化存储管理

KVM 的存储虚拟化是通过存储池(Storage Pool)和卷(Volume)来管理的

  1. Storage Pool 是宿主机上可以看到的一片存储空间,可以是多种型; 每个 Pool在 /etc/libvirt/storage 目录下都有一个 xml 文件。
  2. Volume 是在 Storage Pool 中划分出的一块空间,宿主机将 Volume 分配给虚拟机,Volume 在虚拟机中看到的就是一块硬盘。

KVM 支持多种 Volume 文件格式:

  1. raw:是默认格式,即原始磁盘镜像格式,移植性好,性能好,但大小固定,不能节省磁盘空间。
  2. qcow2:是推荐使用的格式,cow 表示 copy on write,能够节省磁盘空间,支持 AES 加密,支持 zlib 压缩,支持多快照,功能很多。
  3. vmdk:是 VMWare 的虚拟磁盘格式,也就是说 VMWare 虚机可以直接在 KVM上 运行。

KVM (虚拟机创建及管理,存储管理)的更多相关文章

  1. 使用Python-Libvirt GUI 实现KVM 虚拟机 界面化管理

    一.KVM环境的搭建 1.安装VMware(略) 2.在VMware中安装Linux系统(略,Ubuntu16.04) 打开支持虚拟化 网络选择桥接模式 3.安装qemu apt-get instal ...

  2. OpenStack入门篇(四)之KVM虚拟机介绍和管理

    1.查看虚拟机,启动虚拟机 [root@linux-node1 ~]# virsh list --all Id Name State --------------------------------- ...

  3. 虚拟化技术之kvm虚拟机创建工具virt-install

    在前边的博客中,我们创建KVM虚拟机用到了virt-manager,这个工具是一个图形化工具,创建虚拟机很方便:除此我们还是用virsh define/create +虚拟机配置文件来创建虚拟机,这种 ...

  4. 虚拟化技术之kvm虚拟机创建工具qemu-kvm

    在前边的博客中我们介绍了如何创建kvm虚拟机,以及一些常用的工具的介绍和使用,今天我们来了解下kvm原始工具qemu-kvm:为什么说qemu-kvm是一个原始的工具呢,如果你用kvm虚拟机,心细的你 ...

  5. KVM虚拟机的日常管理与配置

    1. 查看KVM虚拟机配置文件及运行状态(1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录是配置kvm虚拟机开机自启动目录. (2) virsh命令帮 ...

  6. 记录KVM虚拟机常用操作管理命令

    环境说明 centos7中的KVM NAT方式是kvm安装后的默认方式.它支持主机与虚拟机的互访,同时也支持虚拟机访问互联网,但不支持外界访问虚拟机. 检查当前的网络设置 # virsh net-li ...

  7. 给新建的kvm虚拟机创建网络接口

    (一)首先必须创建网卡连接桥接口的启动脚本和停止脚本,其中脚本中的 $1:表示为虚拟机的网卡的右边接口,这两个脚本就是讲虚拟机的网卡的右边接口接在网桥上,实现桥接模型     # 1:/etc/qem ...

  8. [ kvm ] 学习笔记 7:KVM 虚拟机创建的几种方式

    通过对 qemu-kvm.libvirt 的学习,总结三种创建虚拟机的方式: (1)通过 qemu-kvm 创建 (2)通过 virt-install 创建 (3)通过 virt-manager 创建 ...

  9. KVM虚拟机管理——虚拟机克隆

    1. 概述2. 部署基本操作系统虚拟机3. 配置虚拟机3.1 修改/etc/sysconfig/network3.2 删除/etc/sysconfig/network-scripts/ifcfg-et ...

随机推荐

  1. python+sklearn+kaggle机器学习

    python+sklearn+kaggle机器学习 系列教程 0.kaggle 1. 初级线性回归模型机器学习过程 a. 提取数据 b.数据预处理 c.训练模型 d.根据数据预测 e.验证 今天是10 ...

  2. Typora笔记上传到播客时图片不显示问题解决(已解决)

    前言: ​ 相信我们都遇到过,使用Typora做笔记是一件非常令人舒服的事,然而,它却有一个非常难受的地方,那就是我们在做完笔记想要将其上传到自己的博客时,复制粘贴的图片无法显示.因为Typora复制 ...

  3. mysql中的基本注入函数

    1. 常见数据库注入函数: MYSQL: and length((user))>10 ACCESS: and (select count() from MSysAccessObject)> ...

  4. Memcached、Redis、Mongodb比较

    Memcached(内存Cache) Memcached 是一个高性能的分布式内存对象缓存系统.通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库 ...

  5. 【Linux】rsync中sending incremental file list时间优化

    每次使用rsync的时候,前面出现sending incremental file list 这句之后要等待很长时间 查了很多帖子和官方文档后,发现是-c这个选项的问题, -v, --verbose ...

  6. Linux下Too many open files问题排查与解决

    作者: Grey 原文地址: Github 语雀 博客园 Too many open files是Linux系统中常见的错误,从字面意思上看就是说程序打开的文件数过多,不过这里的files不单是文件的 ...

  7. SDUST数据结构 - chap5 数组与广义表

    选择题:

  8. spring boot项目问题汇总

    spring遇到的问题汇总 有关日志的打印和日志如何使用 在实际项目中,我们的程序都是运行在linux上,有错误时也不能在本地的控制台上直观看到,所有合理打印日志对于程序员迅速定位到错误. 打印日志时 ...

  9. Vue案例之todoLIst实现

    使用Vue实现todolist案例,如有不对敬请大佬多多指教 功能: 1.增加功能:在新增版块里面的输入框内输入数据,点击后面的"添加"按钮,将输入的数据添加到列表中,默认是未完成 ...

  10. python的Counter类

    python的Counter类 Counter 集成于 dict 类,因此也可以使用字典的方法,此类返回一个以元素为 key .元素个数为 value 的 Counter 对象集合 from coll ...