CentOS7上安装KVM部署虚拟机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7上安装KVM部署虚拟机相关的知识,希望对你有一定的参考价值。

一、虚拟机部署前准备

安装KVM

宿主机

准备一台虚拟机并安装centos系统

配置基本要求:内存2G,处理器2核,硬盘10G,支持虚拟化。

技术分享图片

技术分享图片

挂载新加硬盘

# fdisk -l
# fdisk /dev/sdb
# mkfs.ext4 /dev/sdb1
# vim /etc/fstab
/dev/sdb1       /kvm_data        ext4      defaults   1 1   
# mkdir /kvm_data
# mount -a
# df -h

文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   13G  3.7G  8.8G   30% /
devtmpfs                 899M     0  899M    0% /dev
tmpfs                    911M     0  911M    0% /dev/shm
tmpfs                    911M  9.6M  902M    2% /run
tmpfs                    911M     0  911M    0% /sys/fs/cgroup
/dev/sda1               1014M  142M  873M   14% /boot
tmpfs                    183M     0  183M    0% /run/user/0
/dev/sdb1                9.8G   37M  9.2G    1% /kvm_data

查看cpu参数是否支持虚拟化

# grep -E ‘vmx|svm‘ /proc/cpuinfo

安装kvm

# yum install -y  virt-*  libvirt  bridge-utils qemu-img

配置网卡

配置主网卡

# cp ifcfg-ens33 ifcfg-ens33_bak
# cp ifcfg-ens33 ifcfg-br0
# vim ifcfg-ens33

修改以下内容:

...
... 
# UUID=b44bab92-3cec-490c-aa5a-20659668de16     #注销掉
BRIDGE=br0      #添加此内容

配置桥接网卡

# vim ifcfg-br0

修改以下内容:

...
...
TYPE=Bridge     # 修改模式
# UUID=b44bab92-3cec-490c-aa5a-20659668de16 #注销该行内容
NAME=br0
DEVICE=br0

查看网卡配置

# systemctl restart network
# ip addr

ens33网卡的IP到br0网卡上,配置完成。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
   valid_lft forever preferred_lft forever
inet6 ::1/128 scope host 
   valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000
link/ether 00:0c:29:e1:3f:50 brd ff:ff:ff:ff:ff:ff
4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 00:0c:29:e1:3f:50 brd ff:ff:ff:ff:ff:ff
inet 192.168.61.130/24 brd 192.168.61.255 scope global noprefixroute dynamic br0
   valid_lft 1198sec preferred_lft 1198sec
inet6 fe80::b4f6:41d5:c982:f4d4/64 scope link noprefixroute 
   valid_lft forever preferred_lft forever

启动KVM服务

# lsmod | grep kvm         #查看kvm模块是否加载
kvm_intel             174841  0 
kvm                   578518  1 kvm_intel
irqbypass              13503  1 kvm
# systemctl start libvirtd  # 启动libvirtd服务
# ps aux |grep libvirtd  # 检查服务进程
root       5744  2.2  0.1 614840 14120 ?        Ssl  23:02   0:00 /usr/sbin/libvirtd
root       5872  0.0  0.0 112664   964 pts/1    R+   23:02   0:00 grep --color=auto libvirtd
# brctl show  # 可以看到两个网卡
bridge name bridge id       STP enabled interfaces
br0     8000.000c29f1912c   no      eno16777728  # 我们配置的桥接网卡
virbr0      8000.525400240b50   yes     virbr0-nic  # NAT模式的网卡

准备镜像文件

# ll /wh_k/CentOS-6.5-x86_64-bin-DVD1.iso
-rw-r--r-- 1 root root 4467982336 11月 30 2016 /wh_k/CentOS-6.5-x86_64-bin-DVD1.iso

二、安装虚拟机

安装虚拟机

# virt-install --name=test01 --memory=512,maxmemory=1024 --vcpus=1,maxvcpus=2 --os-type=linux --os-variant=rhel6 --location=/wh_k/CentOS-6.5-x86_64-bin-DVD1.iso  --disk path=/kvm_data/test01.img,size=10 --bridge=br0 --graphics=none --console=pty,target_type=serial  --extra-args="console=tty0 console=ttyS0"

参数说明:

--name 指定虚拟机的名称
--memory 指定分配给虚拟机的内存资源大小
--maxmemory 指定可调节的最大内存资源大小,因为KVM支持热调整虚拟机的资源
--vcpus 指定分配给虚拟机的CPU核心数量
--maxvcpus 指定可调节的最大CPU核心数量
--os-type 指定虚拟机安装的操作系统类型
--os-variant 指定系统的发行版本
--location 指定ISO镜像文件所在的路径,支持使用网络资源路径,也就是说可以使用URL
--disk path 指定虚拟硬盘所存放的路径及名称,size 则是指定该硬盘的可用大小,单位是G
--bridge 指定使用哪一个桥接网卡,也就是说使用桥接的网络模式
--graphics 指定是否开启图形
--console 定义终端的属性,target_type 则是定义终端的类型
--extra-args 定义终端额外的参数

技术分享图片

技术分享图片

技术分享图片

技术分享图片

查看安装的虚拟机

# virsh list --all

Id    名称                         状态
----------------------------------------------------
 -     test01                         关闭

虚拟机命令(启动、访问、停止)

# virsh start test01  # 启动虚拟机
# virsh console test01  # 进入指定的虚拟机,进入的时候还需要按一下回车
# virsh shutdown test01  # 关闭虚拟机
# virsh destroy test01  # 强制停止虚拟机
# virsh undefine test01  # 彻底销毁虚拟机,会删除虚拟机配置文件,但不会删除虚拟磁盘
# virsh autostart test01  # 设置宿主机开机时该虚拟机也开机
# virsh autostart --disable test01  # 解除开机启动
# virsh suspend test01 # 挂起虚拟机
# virsh resume test01 # 恢复挂起的虚拟机

技术分享图片

配置内置虚拟机IP( dhclient)

进入内置虚拟机执行命令:

# dhclient eth0 # 获取IP地址     # 获取IP地址
# ifconfig
eth0      Link encap:Ethernet  HWaddr 52:54:00:0C:43:26  
inet addr:192.168.61.128  Bcast:192.168.61.255  Mask:255.255.255.0
...
...

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

修改启动模式

ONBOOT=yes

# ping www.baidu.com
# poweroff

至此,虚拟机安装完成。

技术分享图片

以上是关于CentOS7上安装KVM部署虚拟机的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7.4安装部署KVM虚拟机

VMware平台部署KVM网络无法通信

VMware平台部署KVM网络无法通信

[原]CentOS7.2部署KVM虚拟机

CentOS7上安装并配置KVM,以及通过KVM安装CentOS系统

通过KVM部署第一台虚拟机