使用KVM(基于内核的虚拟机)+ QEMU的虚拟化。 需要具有Intel VT或AMD-V功能的CPU。
- 安装KVM
[root@kvm-centos7 ~]# yum -y install qemu-kvm libvirt virt-install bridge-utils
# 确保模块已加载
[root@kvm-centos7 ~]# lsmod | grep kvm
kvm_intel 170181 0
kvm 554609 1 kvm_intel
irqbypass 13503 1 kvm
[root@kvm-centos7~]# systemctl start libvirtd
[root@kvm-centos7~]# systemctl enable libvirtd
- 为KVM虚拟机配置桥接网络
参考:http://blog.csdn.net/wh211212/article/details/54135565
实验环境:
OS:CentOS Linux release 7.3.1611 (Core)
Network:双网卡bonding
硬件:DELL R420,16G 1CPU 4核
# 网卡配置,新建ifcfg-bro,然后修改相关配置如下:
[root@kvm-centos7 ~]# cd /etc/sysconfig/network-scripts/
[root@kvm-centos7 network-scripts]# cat ifcfg-br0
DEVICE="br0"
ONBOOT="yes"
TYPE="Bridge"
BOOTPROTO=static
IPADDR=192.168.1.133 # 自定义
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DEFROUTE=yes
# ifcfg-bond0配置文件修改
[root@kvm-centos7 network-scripts]# cat ifcfg-bond0
DEVICE=bond0
TYPE=Ethernet
NAME=bond0
BONDING_MASTER=yes
BOOTPROTO=none
BRIDGE=br0
ONBOOT=yes
BONDING_OPTS="mode=5 miimon=100"
桥接网络配置完成重启网络服务,查看ifconfig如下:
[root@kvm-centos7 network-scripts]# systemctl restart network
查看ifconfig,看网络服务是否正常
创建虚拟机
安装GuestOS并创建虚拟机。此示例显示安装CentOS 7
- 通过网络在文本模式上安装GuestOS,虚拟机的映像默认放置在/var/lib/libvirt/images作为存储池,但本示例显示创建和使用新的存储池。
[root@kvm-centos7~]# mkdir -p /var/kvm/images # 创建新的存储池
[root@kvm-centos7 ~]# virt-install \
--name elk \
--ram 4096 \
--disk path=/var/kvm/images/elk.img,size=30 \
--vcpus 2 \
--os-type linux \
--os-variant rhel7 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://mirrors.aliyun.com/centos/7/os/x86_64/' \
--extra-args 'console=ttyS0,115200n8 serial'
正常加载状态如下:
上面指定的相关参数含义如下:更多参考man virt-install
--name 指定虚拟机的名称
--ram 指定Virtual Machine
--disk的内存量path = xxx,size = xxx
'path ='⇒指定虚拟机
size ='⇒指定虚拟机的磁盘数量
--vcpus 指定虚拟CPU
--os-type 指定GuestOS 的类型
--os-variant 指定GuestOS的类型 - 可能确认列表中使用以下命令osinfo-query os
--network 指定虚拟机的网络类型
--graphics 指定图形的类型。如果设置为“无”,则意味着非图形。
--console 指定控制台类型
--location 指定安装的位置,其中from
--extra-args 指定在内核中设置的参数
- 在文本模式下安装,与常见的安装步骤相同。安装完成后,首先重新启动,然后登录提示如下所示。
重新安装kvm虚拟机,记录安装步骤
virt-install -d --virt-type=kvm --name=aniu-saas-1 --vcpus=8 --memory=12288 --location=/media/CentOS-7-x86_64-Minimal-1611.iso --disk path=/dev/cl/aniu-saas-1 --network bridge=br0 --graphics none --extra-args='console=ttyS0' --force
注:命令行安装操作比较麻烦,注意多看提示。
下面附上笔者网卡配置信息
- 网桥配置
[root@aniu-saas network-scripts]# cat ifcfg-br0
DEVICE="br0"
TYPE="Bridge"
BOOTPROTO="none"
DEFROUTE="yes"
NAME="br0"
ONBOOT="yes"
IPADDR="192.168.0.205"
PREFIX="24"
GATEWAY="192.168.0.1"
DNS1="114.114.114.114"
- 网卡配置
[root@aniu-saas network-scripts]# cat ifcfg-em1
TYPE="Ethernet"
NAME="em1"
UUID="999a275e-eac8-4323-bdf8-f7c7434b7737"
DEVICE="em1"
ONBOOT="yes"
BRIDGE="br0"
- location参数笔者建议换成http或者nfs的加载系统镜像。
安装成功界面如下图:
- 安装完成后,由于安装的时候没有配置网络,发现虚拟机也没有自动分配网络,就添加了虚拟机网络,参考如下:
[root@localhost network-scripts]# cat ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
NAME=eth0
UUID=a38ceceb-5f4e-4d08-a108-d83c176ea85b
DEVICE=eth0
ONBOOT=yes
IPADDR="192.168.0.206"
PREFIX="24"
GATEWAY="192.168.0.1"
DNS1="114.114.114.114"