小白快速入门KVM虚拟化技术(centos7)

KVM 虚拟化技术

1.1KVM部署与使用

系统环境说明(宿主机——KVM虚拟机)
cat /etc/redhat-release
在这里插入图片描述
uname -r
在这里插入图片描述
systemctl stop firewalld
systemctl status firewalld
在这里插入图片描述
setenforce 0
getenforce
在这里插入图片描述
hostname -I(大i)
在这里插入图片描述
注意:KVM主机内存不能低于4GB

1.1.1 安装KVM虚拟化软件

安装依赖包
yum -y install libvirt* virt-* qemu-kvm
安装软件说明
libvirt 虚拟机管理
virt 虚拟机安装克隆
qemu-kvm 管理虚拟机磁盘

启动服务
systemctl start libvirtd
systemctl status libvirtd

安装VNC软件(略)http://www.tightvnc.com
默认安装即可,无需安装server端

1.1.2 配置第一台KVM虚拟机

打开vmware的虚拟化功能以及vnc连接设置
将虚拟机关机进行操作
图已经设置好了
在这里插入图片描述
在这里插入图片描述
mkdir /data
将镜像文件CentOS-7-x86_64-DVD-1810.iso上传到 /data目录下
virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /data/clsn.raw,format=raw,size=10 --cdrom /data/CentOS-7-x86_64-DVD-1810.iso --network network=default --graphics vnc,listen=0.0.0.0,port=5900 --noautoconsole

vnc
连接192.168.11.128:5900

在这里插入图片描述
然后就是只能装centos系统了!!!(略)
等待中!!!!

1.1.3 KVM虚拟机管理操作

参数参数说明
list查看虚拟机列表,列出域
start启动虚拟机,开始一个(以前定义的)非活跃的域
shutdown关闭虚拟机,关闭一个域
destroy强制关闭虚拟机,销毁(停止)域
vncdisplay查询虚拟机vnc端口号
配置管理操作
dumpxml导出主机配置信息
undefine删除主机
define导入主机配置
domrename对虚拟机进行重命名
挂起与恢复
suspend挂起虚拟机
resume恢复虚拟机
自启动管理
autostart虚拟机开机启动
autostart --disable取消虚拟机开机启动
以上参数通过 “virsh --help"得到

操作过程:
启动虚拟机:
virsh start centos7

关闭虚拟机:
virsh shutdown centos7

KVM虚拟机配置文件位置
vim /etc/libvirt/qemu/centos7.xml = virsh edit centos7

备份恢复:
备份虚拟机配置(关机时备份)
virsh shutdown centos7
virsh dumpxml centos7 > centos7.xml

删除虚拟机配置
virsh list --all
在这里插入图片描述
virsh undefine centos7
在这里插入图片描述
virsh list --all
在这里插入图片描述
导入虚拟机
virsh define centos7.xml
virsh list --all
在这里插入图片描述

修改虚拟机名称
virsh domrename centos7 lmj(关机)
virsh list
在这里插入图片描述
虚拟机挂起与恢复
virsh start lmj
virsh suspend lmj
virsh list --all
在这里插入图片描述
恢复虚拟机
virsh resume lmj

查询虚拟机vnc端口
virsh vncdisplay lmj
在这里插入图片描述
:0为5900端口,以此类推 :1为5901
开机自启动设置
设置libvirt服务开机自启动
systemctl is-enabled libvirtd.service
在这里插入图片描述
设置宿主机开机虚拟机在其他
virsh autostart lmj
实质为创建软链接
ll /etc/libvirt/qemu/autostart/clsn7.xml
/etc/libvirt/qemu/autostart/clsn7.xml -> /etc/libvirt/qemu/clsn7.xml

取消开机自启动
virsh autostart --disable lmj

1.2 kvm虚拟机 console 登录

1.2.1 CentOS 7.X 版本console登录

配置console登录
在lmj虚拟机内操作该操作仅限centos7):
grubby --update-kernel=ALL --args=“console=ttyS0,115200n8”
reboot

在宿主机内的操作
virsh console lmj

在这里插入图片描述
注:退出virsh console连接的方法,使用组合键Ctrl+]即可

1.3.2 CentOS 6.X 版本console登录

使用virsh console连接CentOS 6虚拟主机方法:
  安装一台centos6的kvm虚拟机
  
virt-install --virt-type kvm --os-type=linux --os-variant rhel6
–name clsn6 --memory 1124 --vcpus 1
–disk /data/clsn6/clsn-6.raw,format=raw,size=10
–cdrom /data/CentOS-6.9-x86_64-bin-DVD1.iso
–network network=default --graphics vnc,listen=0.0.0.0,port=5901
–noautoconsole
 新安装一台虚拟机后,是无法通过virsh console 命令连入虚拟机中的,这时我们需要开启虚拟机的console功能。
 以下操作都在虚拟机中进行
1、添加ttyS0的许可,允许root登陆
echo “ttyS0” >> /etc/securetty

2、编辑/etc/grub.conf中加入console=ttyS0
在该文件的第16行。kernel选项后添加:
sed -i ‘/\tkernel/s#.*#& console=ttyS0#g’ /etc/grub.conf
sync
cat -n /etc/grub.conf

3、编辑/etc/inittab
在最后一行加入内容 S0:12345:respawn:/sbin/agetty ttyS0 115200
echo ‘S0:12345:respawn:/sbin/agetty ttyS0 115200’ >>/etc/inittab

4、以上操作都完成后,重启虚拟机
reboot

在宿主机的操作
virsh console clsn6
注:退出virsh console连接的方法,使用组合键Ctrl+]即可

1.3 KVM虚拟机磁盘、快照与克隆

1.4.1 磁盘管理

KVM qcow2、raw、vmdk等镜像格式说明(百度这句话浏览即可)

创建一块qcow2的虚拟硬盘(仅测试使用,无实际意义)
cd /data
qemu-img create -f qcow2 clsn.qcow2 2G
ls -l
rm -rf qcow2

查看当前虚拟机硬盘信息
qemu-img info /data/clsn.raw
在这里插入图片描述
raw 转qcow2格式
qemu-img --help | grep convert
在这里插入图片描述
qemu-img convert -f raw -O qcow2 clsn.raw clsn.qcow2
在这里插入图片描述
virsh edit lmj

在这里插入图片描述
删除原磁盘文件
\rm clsn.raw

查看状态
ls /data
在这里插入图片描述

1.3.2 KVM虚拟机添加硬盘

进入硬盘存放目录
cd /data

创建一块新的硬盘
qemu-img create -f qcow2 clsn7-add01.qcow2 5G
Formatting ‘clsn7-add01.qcow2’, fmt=qcow2 size=5368709120 encryption=off cluster_size=65536 lazy_refcounts=off

ls
在这里插入图片描述

查看创建的硬盘信息
qume-img info clsn7-add01.qcow2
在这里插入图片描述
为虚拟机添加硬盘
virsh attach-disk lmj /data/clsn7-add01.qcow2 vdb --live --cache=none --subdriver=qcow2
在这里插入图片描述
参数说明:

vdb第二块硬盘
–live热添加
–subdriver驱动类型

卸载硬盘
查看帮助:virsh --help | grep disk
在这里插入图片描述
attach-disk 附加磁盘设备
blockpull 从备份映像填充磁盘。
detache-disk 分离磁盘设备

将已挂载的磁盘卸载下来
virsh detach-disk lmj vdb
在这里插入图片描述
调整磁盘大小
查看帮助:qemu-img --help |grep resize
在这里插入图片描述
增加 1G 容量
qemu-img resize clsn7-add01.qcow2 +1G
在这里插入图片描述
qemu-img info clsn7-add01.qcow2
在这里插入图片描述
重新将磁盘添加到虚拟机
virsh attach-disk lmj /data/clsn7-add01.qcow2 vdb --live --cache=none --subdriver=qcow2
在这里插入图片描述
在虚拟机中操作
格式化磁盘
mkfs.xfs /dev/vdb

挂载磁盘
mount /dev/sdb
df -h | grep /dev/vdb
在这里插入图片描述

1.3.3 快照管理

注意:raw格式的磁盘无法创建快照(虚拟机停止挂载后操作umount /dev/vdb)

创建快照
virsh snapshot-create lmj
在这里插入图片描述
查看主机快照列表
virsh snapshot-list lmj
在这里插入图片描述
查看快照信息
virsh snapshot-info lmj --snapshotname 1557318041
在这里插入图片描述
登陆KVM虚拟机,进行删除操作
ls -1|egrep -v ‘proc|sys|run’ |rm -rf

还原快照
virsh snapshot-revert lmj --snapshotname 1557318041

删除快照
virsh snapshot-delete lmj --snapshotname 1557318041
在这里插入图片描述
快照配置文件位置
virsh snapshot-create lmj
cd /var/lib/libvirt/qemu/snapshot
tree(yum -y install tree)
在这里插入图片描述

1.3.4 kvm虚拟机克隆

复制一个虚拟机,需修改如 MAC 地址,名称等所有主机端唯一的配置。

虚拟机的内容并没有改变:virt-clone 不修改任何客户机系统内部的配置,它只复制磁盘和主机端的修改。所以像修改密码,修改静态 IP 地址等操作都在本工具复制范围内。如何修改此类型的配置,请参考 virt-sysprep。
  克隆常用命令(关机克隆):
  virt-clone --auto-clone -o lmj
–auto-clone 从原始客户机配置中自动生成克隆名称和存储路径
-o 原始客户机名称;必须为关闭或者暂停状态。

1.4 kvm虚拟机网络管理

1.4.1 桥接网络配置

1.设置桥接网络
virsh iface-bridge eth0 br0

查看网卡配置文件并修改
vim /etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/sysconfig/network-scripts/ifcfg-br0
在这里插入图片描述
在ifcfg-br0添加如下三行
IPADDR=“192.168.11.132” 原来宿主机的ip
NETMASK=“255.255.255.0” 原来宿主机的掩码
GATEMASK=“192.168.11.2” 原来宿主机的网关

2.修改虚拟机网络配置
virsh edit lmj
在这里插入图片描述
重启eth0网卡
ifdown eth0
ifup eth0

修改DNS域名解析的配置文件
vim /etc/resolve.conf
在这里插入图片描述
systemctl restart network
ping www.baidu.com成功

查看宿主机网桥
virsh shutdown lmj
virsh start lmj
systemctl restart libvirtd
brctl show
在这里插入图片描述

3.修改kvm虚拟机网卡配置文件(在KVM虚拟机中操作)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
如图修改
在这里插入图片描述
改为与br0同一网段即可;
ping ww.baudi.com(ping通)
在这里插入图片描述

1.5 图形化管理虚拟机的工具

(1)图形管理工具:

kimchi:基于H5研发的web GUI;virt-king; 网上搜索kimchi kvm 有安装使用教程

OpenStack:IaaS 非常重量级,非常吃资源;至少10台以上的虚拟机才用它

oVirt:比kimchi 功能强大的多,比OpenStack轻量;但配置也较麻烦

proxmox VE

(2)kvm 官方的管理工具栈:https://www.linux-kvm.org/page/Management_Tools

1.8.1 Kvm web 管理工具使用 wok kimchi

1、Wok

  • Wok基于cherrypy的web框架,可以通过一些插件来进行扩展,例如:虚拟化管理、主机管理、系统管理。它可以在任何支持HTML5的网页浏览器中运行。

2、Kimchi

  • Kimchi是一个基于HTML5的KVM管理工具,是Wok的一个插件(使用Kimchi前一定要先安装了wok),通过Kimchi可以更方便的管理KVM。

github地址:https://github.com/kimchi-project

3、安装
yum install epel-release

wget https://github.com/kimchi-project/wok/releases/download/2.5.0/wok-2.5.0-0.el7.centos.noarch.rpm

wget https://github.com/kimchi-project/kimchi/releases/download/2.5.0/kimchi-2.5.0-0.el7.centos.noarch.rpm

yum -y install *.rpm

systemctl daemon-reload
systemctl start wokd
systemctl enable wokd

4、登录
https://192.68.11.28:8001
在这里插入图片描述
宿主机root用户
r宿主机oot用户密码

5.登陆日志
对vm虚拟主机的操作都会记录在这里
在这里插入图片描述
6.kvm虚拟机管理

在这里插入图片描述
创建模板
在这里插入图片描述

说明:
kvm虚拟机名:lmj
文件路径:/data/CentOS-7-x86_64-DVD-1810.iso
在这里插入图片描述
还有存储信息及网络信息以及创建操作

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值