第 9 章 KVM 虚拟化技术

一、KVM 的安装配置

一、环境准备

1、查看系统是否支持虚拟化

要配置 CPU 性能计数器

代码:

[root@bogon ~]# grep -E '(vmx|svm)' /proc/cpuinfo

或者
cat /proc/cpuinfo | grep vmx

[root@bogon ~]# lsmod | grep kvm
[root@bodon ~]yum -y install gemu-kvm python-virtinst 1ibvirt libvirt - python virt-
manager libguestfs-tools bridge-utils virt-install

实操:

开始没有输出返回,是因为电脑没有配置CPU计数器。

如果有输出返回,则表示CPU支持虚拟化技术

2、基础软件安装

代码:


# 参考
[root@localhost ~]# curl -o /etc/yum.repos.d/Centos-7.repo http://mirrors.aliyun.com/repo/Centos-7.repo
 
# 停防火墙
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# systemctl disable firewalld.service
 
[root@localhost ~]# yum install gcc gcc-c++ -y
[root@localhost ~]# yum install autoconf -y
[root@localhost ~]# yum install automake -y
[root@localhost ~]# yum install libtool -y
[root@localhost ~]# yum install glib* -y

实操:

二、 在已有的 Linux 中安装 KVM--use

1. 安装虚拟化工具

代码:

[root@bogon ~]# yum -y group install virtualization-platform virtualization-client gnome-desktop

实操:

2. 安装 GNOME 桌面环境,开机默认启动图形化

代码:

[root@bogon ~]# yum groupinstall -y gnome-desktop

[root@bogon ~]#systemctl get-default

[root@bogon ~]#systemctl set-default graphical.target

3. 安装VNC server/VNC客户端,使用VNC连接虚拟机

代码:

yum -y install tigervnc-server tigervnc vnc vnc-server

4. 安装 qemu-kvm qemu-img

代码:

yum install qemu-kvm -y

yum install qemu-img -y

5. 安装KVM 调试工具

代码:

yum -y install qemu-kvm-tools

6. 构建虚拟机的命令行工具

代码:

yum -y install virt-install

7. 网络支持工具, 默认已安装

代码:

yum -y install bridge-utils

8. 安装虚拟机管理工具

代码:

yum -y install libvirt libvirt-devel libvirt-daemon-kvm libvirt-client

yum -y install virt-manager

9. 开启 libvirtd KVM服务,以开启相关支持

代码:

systemctl start libvirtd

systemctl enable libvirtd --now

10. 安装其它工具包:

代码:

yum install libvirt-python python-virtinst virt-install virt-viewer –y

yum install libguestfs-tools -y

11. 检查 KVM 模块是否安装:

代码:


[root@localhost ~]# lsmod | grep kvm
kvm_intel             174841  0 
kvm                   578518  1 kvm_intel
irqbypass              13503  1 kvm

12.卸载kvm

代码:

yum erase `rpm -qa | egrep '(qemu|virt|kvm)'`rm -rf /var/lib/libvirt /etc/libvirt/

三、创建 KVM 虚机

1.  使用 qemu-img 和 qemu-kvm 命令行方式安装

(1)创建一个空的qcow2格式的镜像文件


qemu-img create -f qcow2 windows-master.qcow2 10G
 

(2)启动一个虚机,将系统安装盘挂到 cdrom,安装操作系统,生成一个带操作系统的镜像文件

qemu-kvm  -hda  windows-master.qcow2  -m  512  -boot d  -cdrom /home/user/isos/en_winxp_pro_with_sp2.iso
 

(3) 以该镜像模板创建新的镜像文件。使用模板的好处是,可以设置为只读免于破坏。

qemu-img create -b windows-master.qcow2 -f  qcow2   windows-clone.qcow2
 

(4)在镜像文件上启动虚机

qemu-kvm  -hda  windows-clone.qcow2  -m 400

一些图例:

四、KVM 常用管理

1. cpu 热添加

# 首先设置添加cpu颗数的最大值,在安装的时候也可以指定(virsh-install --help|grep cpu),修改完之后需要重启虚拟机.

[root@bogon ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 2     CentOS-7-x86-64                running

# 找到下面这行进行修改,设置最大cpu颗数4个

[root@bogon ~]# virsh edit CentOS-7-x86-64   
<vcpu placement='auto' current='1'>4</vcpu>

# 重启虚拟机

[root@bogon ~]#virsh reboot CentOS-7-x86-64
Domain CentOS-7-x86-64 is being rebooted

# 热添加一颗cpu

[root@bogon ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 5     CentOS-7-x86-64                running
 
[root@bogon ~]#virsh setvcpus CentOS-7-x86-64 2 --live

# 注意此种添加方式(热添加)只能添加,不能热删除。下边是准备删除一颗cpu,会报错

[root@bogon ~]# virsh setvcpus CentOS-7-x86-64 1 --live
error: unsupported configuration: failed to find appropriate hotpluggable vcpus to reach the desired target vcpu count

2. 内存热添加热压缩

# 内存热膨胀和压缩,总数不能超过最大内存

[root@bogon ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 3     CentOS-7-x86-64                running

[root@bogon ~]# virsh edit CentOS-7-x86-64   # 安装时设置的为1G,这里改为4G
<memory unit='KiB'>4048576</memory>

# 重启虚拟机

[root@bogon ~]# virsh reboot CentOS-7-x86-64
Domain CentOS-7-x86-64 is being rebooted

# 更改为600M

[root@bogon ~]# virsh qemu-monitor-command CentOS-7-x86-64 --hmp --cmd balloon 600

# 扩容为2G

[root@bogon ~]# virsh qemu-monitor-command CentOS-7-x86-64 --hmp --cmd balloon 2000

# 管理机查看kvm虚拟机查看内存

[root@bogon ~]#virsh qemu-monitor-command CentOS-7-x86-64 --hmp --cmd info balloon balloon: actual=2000

3. 硬盘格式

全镜像模式(raw)、稀疏模式(qcow2)
raw(给多大就是多大,且非常方便转换为其它格式)
[root@bogon ~]#qemu-img --help
......
Supported formats: vvfat vpc vmdk vhdx vdi ssh sheepdog rbd raw host_cdrom host_floppy host_device file qed qcow2 qcow parallels nbd iscsi gluster dmg tftp ftps ftp https http cloop bochs blkverify blkdebug

4. 更改kvm虚拟机联网模式为桥接

# 网络(默认为NAT),生产环境中常用的是网桥模式。
[root@bogon ~]# brctl show  # 没有此命令可yum安装bridge-utils包
bridge name     bridge id               STP enabled     interfaces
virbr0          8000.5254001a849c       yes             virbr0-nic
                                                        vnet0
[root@bogon ~]# brctl addbr br0   # 创建一个br0网桥
[root@bogon ~]# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.000000000000       no
virbr0          8000.5254001a849c       yes             virbr0-nic
                                                        vnet0
[root@bogon ~]#brctl addif br0 eth0  # 把br0添加到eth0中,添加完网络会掉

# 或者直接一条命令搞定
brctl addif br0 eth0 && ip addr del dev eth0 10.0.0.111/24 && ifconfig br0 10.0.0.111/24 && route add default gw 10.0.0.2 && iptables -F

# 网络就可以重新连接了,此时就可以给kvm虚拟机网卡配置桥接模式上网了

注意:详细安装请访问 CentOS 7 安装部署 KVM-优快云博客

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值