一、虚拟机部署前准备
安装KVM
宿主机
准备一台虚拟机并安装centos系统
配置基本要求:内存2G,处理器2核,硬盘10G,支持虚拟化。
挂载新加硬盘
# fdisk -l# fdisk /dev/sdb# mkfs.ext4 /dev/sdb1# vim /etc/fstab/dev/sdb1 /kvm_data ext4defaults 1 1 # mkdir /kvm_data# mount -a# df -h文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/centos-root 13G 3.7G 8.8G 30% /devtmpfs 899M0 899M 0% /devtmpfs911M0 911M 0% /dev/shmtmpfs911M 9.6M 902M 2% /runtmpfs911M0 911M 0% /sys/fs/cgroup/dev/sda11014M 142M 873M 14% /boottmpfs183M0 183M 0% /run/user/0/dev/sdb19.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=br0DEVICE=br0
查看网卡配置
# systemctl restart network# ip addrens33网卡的IP到br0网卡上,配置完成。1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP group default qlen 1000link/ether 00:0c:29:e1:3f:50 brd ff:ff:ff:ff:ff:ff4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000link/ether 00:0c:29:e1:3f:50 brd ff:ff:ff:ff:ff:ffinet 192.168.61.130/24 brd 192.168.61.255 scope global noprefixroute dynamic br0valid_lft 1198sec preferred_lft 1198secinet6 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_intelirqbypass 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/libvirtdroot 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 interfacesbr08000.000c29f1912c noens33 # 我们配置的桥接网卡virbr08000.525400240b50 yesvirbr0-nic # NAT模式的网卡
准备镜像文件
# ll /wh_k/CentOS-6.5-x86_64-bin-DVD1.iso-rw-r--r-- 1 root root 4467982336 11月 30 /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 --allId 名称状态-----------------------------------------------------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地址# ifconfigeth0Link 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 # poweroff
至此,虚拟机安装完成。