KVM构建及管理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了KVM构建及管理相关的知识,希望对你有一定的参考价值。
1、虚拟化概述虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。
? virtualization 资源管理
– x个物理资源 --> y个逻辑资源
– 实现程度:完全、部分、硬件辅助(CPU)
案例:创建新的虚拟机nsd:搭建本地Yum仓库
(1)服务端:挂载光盘
[[email protected] 桌面]# mount /dev/cdrom /mnt
(2)客户端:书写一个配置文件/etc/yum.repos.d/*.repo
[[email protected] 桌面]# vim /etc/yum.repos.d/abc.repo
[abc]
name=abc
baseurl=file:///mnt
enabled=1
gpgcheck=0
[[email protected] 桌面]# yum repolist
2、yum软件组管理
? 使用RHEL7软件仓库的预设分组
– yum groups list [hidden] [组名]...
– yum groups info [组名]...
– yum groups install [组名]...
– yum groups remove [组名]
3、安装虚拟化服务器平台
? 主要软件组
Virtualization\ Client #虚拟化客户端
Virtualization\ Platform #虚拟化平台
Virtualization\ Hypervisor #虚拟化管理器
Virtualization\ Tools #虚拟化工具
[[email protected] 桌面]# yum -y groups install
Virtualization\ Client
Virtualization\ Platform
Virtualization\ Hypervisor
Virtualization\ Tools
虚拟化服务:libvirtd
真机操作:
? 查看KVM节点(服务器)信息
– virsh nodeinfo
? 列出虚拟机
– virsh list [--all]
? 查看指定虚拟机的信息
– virsh dominfo 虚拟机名称
? 运行|重启|关闭指定的虚拟机
– virsh start|reboot|shutdown 虚拟机名称
? 强制关闭指定的虚拟机
– virsh destroy 虚拟机名称
[[email protected] 桌面]# virsh autostart nsd #设置开机自起动
[[email protected] 桌面]# virsh dominfo nsd
[[email protected] 桌面]# virsh autostart --disable nsd #关闭自起动
[[email protected] 桌面]# virsh dominfo nsd
libvirtd 为管理虚拟机提供服务接口
[[email protected] ~]# systemctl restart libvirtd
[[email protected] ~]# systemctl enable libvirtd
使用virt-manager客户端工具调出KVM图形管理器
4、KVM虚拟机的组成
1)xml配置文件(虚拟机描述文件):定义虚拟机的名称、UUID、CPU、内
存、虚拟磁盘、网卡等各种参数设置
虚拟机描述文件默认路径: /etc/libvirt/qemu
2)磁盘镜像文件:保存虚拟机的操作系统及文档数据,
镜像路径取决于xml配置文件中的定义
磁盘镜像文件 默认路径: /var/lib/libvirt/images/
查看磁盘镜像文件信息
qemu-img info /var/lib/libvirt/images/nsd.qcow2
5、手动快速创建一台虚拟机
(1)创建新的磁盘文件
[[email protected] 桌面]# cd /var/lib/libvirt/images/
[[email protected] images]# cp nsd.qcow2 test01.qcow2
(2)写新的虚拟机描述文件
[[email protected] images]# cd /etc/libvirt/qemu/
[[email protected] qemu]# cp nsd.xml test01.xml
[[email protected] qemu]# vim test01.xml
修改name、删除UUID整行、修改磁盘文件路径、删除MAC整行
(3)导入虚拟机信息
[[email protected] /]# virsh define /etc/libvirt/qemu/test01.xml
[[email protected] /]# virsh list --all
[[email protected] /]# virsh start test01
(4)导出xml配置文件
– 查看:virsh dumpxml 虚拟机名
– 备份:virsh dumpxml 虚拟机名 > 虚拟机名.xml
(5)编辑虚拟机设置
? 对虚拟机的配置进行调整
– 编辑: virsh edit 虚拟机名
导出、修改、导入
删除虚拟机
– virsh undefine 虚拟机名
# virsh undefine test01
# rm -rf /var/lib/libvirt/images/test01.qcow2
6、COW技术原理
Copy On Write 写时复制
– 直接映射原始盘的数据内容
– 对前端盘的修改不回写到原始盘
(1) 快速创建qcow前端盘
qemu-img 通过 -b 选项复用指定后端盘
qemu-img create -f qcow2 -b 后端盘 前端盘
cd /var/lib/libvirt/images/
qemu-img create -f qcow2 -b nsd.qcow2 new01.qcow2
qemu-img info new01.qcow2
(2)常见新的虚拟机描述文件
cd /etc/libvirt/qemu/
cp nsd.xml new01.xml
vim new01.xml
修改name、删除UUID整行、修改磁盘文件路径指定前端盘、删除MAC整行
(3)导入新的虚拟机
virsh define /etc/libvirt/qemu/new01.xml
案例:
1.新建两台虚拟机
[[email protected] 桌面]# clone-vm7
Enter VM number: 1
[[email protected] 桌面]# clone-vm7
Enter VM number: 2
2.在真机上操作,随真机的启动而启用
[[email protected] 桌面]# virsh autostart A
[[email protected] 桌面]# virsh autostart B
3.以root身份进入虚拟机,配置两台虚拟机的网络地址参数,密码123456
虚拟机A:
IP地址:192.168.4.7/24
主机名:svr7.tedu.cn
虚拟机B:
IP地址:192.168.4.207/24
主机名:pc207.tedu.cn
4.真机利用Web服务提供Yum源(共享光盘所有内容)
[[email protected] 桌面]# ifconfig private1
[[email protected] 桌面]# rpm -q httpd
httpd-2.4.6-40.el7.x86_64
# mkdir /var/www/html/rhel7
# mount /ISO/rhel-server-7.2-x86_64-dvd.iso /mnt/
# cp -r /mnt/* /var/www/html/rhel7/
# firefox http://127.0.0.1/rhel7
# firefox http://192.168.4.254/rhel7
5.虚拟机A与虚拟机B指定Yum位置
[[email protected] ~]# vim /etc/yum.repos.d/rhel7.repo
[rhel7]
name=rhel7
baseurl=http://192.168.4.254/rhel7
enabled=1
gpgcheck=0
[[email protected] ~]# vim /etc/yum.repos.d/rhel7.repo
[rhel7]
name=rhel7
baseurl=http://192.168.4.254/rhel7
enabled=1
gpgcheck=0
6. 设置防火墙trusted与关闭SELinux
[[email protected] ~]# firewall-cmd --set-default-zone=trusted
[[email protected] ~]# setenforce 0 #当前修改为宽松模式
[[email protected] ~]# getenforce
Permissive
[[email protected] ~]# vim /etc/selinux/config
SELINUX=permissive
以上是关于KVM构建及管理的主要内容,如果未能解决你的问题,请参考以下文章
Service系统服务:安装一个KVM服务器KVM平台构建及简单管理virsh基本管理操作xml配置文件的应用为虚拟机制作快照备份快建新虚拟机