在centos7环境部署kvm虚拟化
应用场景:
1.、割接
使用新服务器替换老旧的服务器。
2.、迁移
安装kvm
环境centos7 8G内存 200G硬盘x1 和 100G硬盘x1
首先要安装epel源
安装一堆软件就ok了
[root@kvm ~]# yum install -y libvirt-python virt-manager libguestfs-tools virt-install qemu-kvm libvirt bridge-utils kvm
在这里安装虚拟机
准备一个虚拟机需要的资源:
1、CPU
直接从宿主机划分。
2、内存
直接从宿主机划分。
3、硬盘
做LV
[root@kvm ~]# pvcreate /dev/sdb
[root@kvm ~]# vgcreate vgkvm /dev/sdb
[root@kvm ~]# lvcreate -L 50G -n lvkvm vgkvm
[root@kvm ~]# mkfs.xfs /dev/vgkvm/lvkvm
[root@kvm ~]# vim /etc/fstab
/dev/mapper/vgkvm-lvkvm /kvm xfs defaults 0 0
[root@kvm ~]# mkdir /kvm
[root@kvm ~]# mount -a
[root@kvm ~]# df -h | tail -1
/dev/mapper/vgkvm-lvkvm 50G 33M 50G 1% /kvm
做kvm虚拟机底层存储的有:
【1】分区/dev/sda5 /dev/sda6
【2】lv/dev/vgkvm/lv01 , lv02
使用物理层设备做存储,优点是读写速度快,缺点是不能迁移。
【3】文件
raw格式,默认的,基本不用
qcow2格式,用多少,占多少,直到上限
用的比较多,演示用的也是这个
[root@kvm /kvm]# qemu-img create -f qcow2 /kvm/node.qcow2 200G
[root@kvm ~]# cd /kvm/
[root@kvm /kvm]# ls
node.qcow2
> lv,一会在使用的时候,会有警告。
4、 网卡
创建网桥。
[root@kvm /etc/sysconfig/network-scripts]# cp ifcfg-ens32 ifcfg-br0
[root@kvm /etc/sysconfig/network-scripts]# vim ifcfg-ens32
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens32
DEVICE=ens32
ONBOOT=yes
BRIDGE=br0 #<--
[root@kvm /etc/sysconfig/network-scripts]# vim ifcfg-br0
TYPE=Bridge #<--
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=br0 #<--
DEVICE=br0 #<--
ONBOOT=yes
IPADDR=172.16.0.29
NETMASK=255.255.0.0
GATEWAY=172.16.0.254
DNS1=211.137.32.178
DNS2=202.96.64.68
[root@kvm ~]# /etc/init.d/network restart
[root@kvm ~]# ifconfig br0
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.0.29 netmask 255.255.0.0 broadcast 172.16.255.255
安装虚拟机:
[root@kvm ~]# virt-install --name=ks-node --vcpus 1 --ram 4096 --disk path=/kvm/ks-node.qcow2,device=disk,size=200,format=qcow2,bus=virtio --network bridge=br0 --os-type linux --location 'http://172.16.12.200/centos7' --graphics none --console pty,target_type=serial --extra-args='ks=http://172.16.12.200/pub/kickstart-VMc7.cfg console=ttyS0,115200n8 serial'
--name 指定虚拟机的名字
与存储的名字一致
--vcpus cpu线程数
--ram 内存,M
--disk 硬盘参数
--network 网卡参数
--os-type 安装的系统类型
--location 安装源
--graphics 文本化安装
--console 控制接口参数
--extra-args 安装参数
按键ctrl + “ ] ”
退出虚拟控制接口
连接虚拟机:
1、 在宿主机连接console接口
只有1个控制台可以连接
[root@kvm ~]# virsh list
Id Name State
----------------------------------------------------
3 node running
查看正在运行的虚拟机
[root@kvm ~]# virsh list --all
查看所有的虚拟机
[root@kvm ~]# virsh console node
2次回车
ks1 login:
配置IP!!!
[root@ks1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens3
NAME="ens3"
DEVICE="ens3"
ONBOOT=yes
NETBOOT=yes
IPV6INIT=yes
BOOTPROTO=static
TYPE=Ethernet
IPADDR=172.16.0.239
NETMASK=255.255.0.0
GATEWAY=172.16.0.254
DNS1=211.137.32.178
[root@ks1 ~]# /etc/init.d/network restart
[root@ks1 ~]# ping www.baidu.com
PING www.a.shifen.com (39.156.66.18) 56(84) bytes of data.
64 bytes from 39.156.66.18 (39.156.66.18): icmp_seq=1 ttl=53 time=25.0 ms
记住!!!
退出console接口时,一定要退出虚拟机的登录。
ctrl d 按键
2、 ssh
[c:~]$ ssh root@172.16.0.239
进行初始化操作。
虚拟机的开启和关闭:
关闭:
[root@kvm ~]# virsh shutdown node
//正常关闭
[root@kvm ~]# virsh destroy node
//直接拔电源
启动:
[root@kvm ~]# virsh start node
虚拟机的文件:只有2个
[root@kvm /etc/libvirt/qemu]# ls
node.xml 配置文件
[root@kvm /kvm]# ls
node.qcow2 存储文件
解读配置文件:
[root@kvm /etc/libvirt/qemu]# vim node.xml
<domain type='kvm'> 类型
<name>node</name> 名字
<uuid>81a03bb4-0b4b-4192-ae26-7eca96172e56</uuid> UUID,唯一标识
<memory unit='KiB'>4194304</memory> 内存
<currentMemory unit='KiB'>4194304</currentMemory> 内存
<vcpu placement='static'>1</vcpu> CPU线程数
<clock offset='utc'> 改
utc改成localtime
<disk type='file' device='disk'> 硬盘配置
<driver name='qemu' type='qcow2'/>
<source file='/kvm/node.qcow2'/>
<target dev='vda' bus='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</disk>
<interface type='bridge'> 网卡配置,类型桥接
<mac address='52:54:00:f6:b8:55'/>
<source bridge='br0'/>
<model type='rtl8139'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
将内存修改为1G
时钟改成本地时区
修改虚拟机的配置,虚拟机一定是处于关机状态
[root@kvm ~]# virsh shutdown node
[root@kvm ~]# virsh list
list没有机器就ok
修改配置文件:修改硬件
[root@kvm ~]# export EDITOR=vim
//修改下默认的文本编辑器
[root@kvm ~]# virsh edit node
<memory unit='GiB'>1</memory>
<currentMemory unit='GiB'>1</currentMemory>
<clock offset='localtime'>
然后再打开就是有色彩的
启动
[root@kvm ~]# virsh start node
[root@node ~]# grep -c "proc" /proc/cpuinfo
1
[root@node ~]# free -m
total
Mem: 992
[root@node ~]# cat /proc/partitions
major minor #blocks name
252 0 209715200 vda
252 1 204800 vda1
252 2 209509376 vda2
253 0 10485760 dm-0
253 1 524288 dm-1
删除KVM虚拟机
停止主机:virsh destroy linux65
删除主机定义:virsh undefine linux65
删除KVM虚拟机文件: rm -f /home/vps/linux65.img