KVM安装配置管理

一、安装配置

环境信息:

[root@KVM-SERVER ~]# uname -r
2.6.32-431.el6.x86_64

1.确定CPU是否支持虚拟化

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

clipboard.png

2.安装kvm和其他虚拟化所需管理软件包

[root@KVM-SERVER ~]# yum install qemu-kvm qemu-kvm-tools virt-manager python-virtinst  libvirt libvirt-python

3.加载kvm模块,查看kvm模块是否被加载

[root@KVM-SERVER ~]# modprobe kvm-intel
[root@KVM-SERVER ~]# lsmod | grep kvm

blob.png

4.启动libvirtd

/etc/init.d/libvirtd start

5.查看网桥信息:

ifconfig  你会看到多了一个网桥工具

blob.png

6.配置网卡为桥接模式:

6.1.修改ifcfg-eth0的配置文件

[root@KVM-SERVER ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
BRIDGE=br0

6.2. 创建ifcfg-br0配置文件,永久创建br0网卡

[root@KVM-SERVER ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=static
IPADDR=110.0.0.136
NETMASK=255.255.255.0
GATEWAY=110.0.0.2

6.3. 临时创建br0网卡:

设置虚拟机网卡模式为桥接模式 , 默认是NAT模式

在我的主虚拟机(母机器)上添加一个网桥br0

# cbrctl addbr br0

确认一下是否添加成功

# cbrctl show

br0网桥绑定到eth0 临时生效 的,要想永久修改配置文件脚本里

# brctl addif  br0 eth0

删除eth0上的ip

# ip addr del dev eth0 110.0.0.136/24

激活br0这个网桥

# ifconfig  br0 110.0.0.136/24 up

为防止无法连接宿主机,把以上命令放到一行执行避免我删除eth0导致我连不上 虚拟机了

[root@KVM-SERVER ~]# brctl addbr br0 && brctl addif  br0 eth0 &&ip addr del dev eth0 110.0.0.136/24 && ifconfig  br0 110.0.0.136/24 up

6.4. 检查是否添加br0

[root@KVM-SERVER ~]# brctl show

blob.png

# ifconfig

blob.png

由以上结果可知,br0网卡已经添加。

7.创建存放镜像和虚拟机的硬盘文件的目录

[root@KVM-SERVER ~]# mkdir -pv /data/{ISO,VMDISK} 
mkdir: created directory `/data'
mkdir: created directory `/data/ISO'
mkdir: created directory `/data/VMDISK'

7.1.上传镜像到/data/ISO/目录下:

[root@KVM-SERVER ISO]# ll -h /data/ISO/CentOS-6.5-x86_64-bin-DVD1.iso 
-rw-r--r-- 1 root root 4.2G Aug 10 04:37 /data/ISO/CentOS-6.5-x86_64-bin-DVD1.iso

8.创建一个虚拟机KVM硬盘文件

[root@KVM-SERVER VMDISK]# qemu-img create -f raw /data/VMDISK/kvm-node1-6.5-x86_64.raw 5G

kvm硬盘文件命名为kvm-node1-6.5-x86_64.raw ,大小为5G

查看硬盘信息

[root@KVM-SERVER VMDISK]# qemu-img info /data/VMDISK/kvm-node1-6.5-x86_64.raw

blob.png

9.开始安装虚拟机:

[root@KVM-SERVER VMDISK]# virt-install --virt-type kvm --name kvm-node1 --ram 512 --cdrom=/data/ISO/CentOS-6.5-x86_64-bin-DVD1.iso --disk path=/data/VMDISK/kvm-node1-6.5-x86_64.raw --network=bridge:br0 --graphics vnc,listen=0.0.0.0 --noautoconsole --os-type=linux --os-variant=rhel6

blob.png

blob.png


10.用VNC连接kvm虚拟机进行安装操作系统:

ps aux|grep qemu 的结果可以找出vnc 的地址和端口是 0.0.0.0:0

blob.png

blob.png

blob.png

看到这个页面大家都很熟悉吧,那就继续为kvm虚拟机安装系统吧。

安装完成后使用ifconfig 和brctl show 会发现网卡vnet0,第一个虚拟机就是vnet0 ,第二个就是vnet1,依次类推。

blob.png

[root@KVM-SERVER VMDISK]# brctl show

blob.png

11.检查虚拟机状态:

[root@KVM-SERVER VMDISK]# virsh lst --all

blob.png

12.设置开机自启动:

[root@KVM-SERVER VMDISK]# virsh autostart kvm-node1

blob.png

二、KVM的管理

1.KVM的克隆

我们克隆虚拟机kvm-node1,克隆kvm-node1虚拟机时,需要暂停虚拟机kvm-node1

1.1.首先查看kvm-node1的状态:

[root@KVM-SERVER ~]# virsh list --all

blob.png

由上可知,kvm-node1虚拟机正在运行

1.2.暂停kvm-node1虚拟机

[root@KVM-SERVER ~]# virsh suspend kvm-node1

确认状态:

[root@KVM-SERVER ~]# virsh list --all

blob.png

1.3.开始克隆操作

[root@KVM-SERVER ~]# virt-clone  --connect qemu:///system  --original=kvm-node1   --name=kvm-node2   --file=/data/VMDISK/kvm-node2-6.5-x86_64.raw

blob.png

确认:

blob.png

1.4.启动新克隆的虚拟机kvm-node2

[root@KVM-SERVER ~]# virsh start kvm-node2

blob.png

1.5.确定新虚拟机的vnc端口

[root@KVM-SERVER ~]# ps aux|grep kvm-node2

blob.png

1.6.使用vnc连接

blob.png

blob.png

到此,新的虚拟机已经克隆成功。进入系统可以修改IP等等。

2.虚拟机修改内存大小:

2.1.查看现在内存大小

通过VNC登陆虚拟机kvm-node1

blob.png

2.2.编辑kvm-node1的配置文件

[root@KVM-SERVER ~]# virsh edit kvm-node1[object Object]

修改图中的memory和currentMemory两个值的大小,设置成你要求的,现在都是512M,上图中的单位是KB。假如我这里设置成1G内存,即:524288*2=1048576KB,修改完成后,需要重启kvm-node1,修改的配置才可以生效。

2.3.重启kvm-node

[root@KVM-SERVER ~]# virsh  shutdown  kvm-node1
[root@KVM-SERVER ~]# virsh  start kvm-node1

2.4.确认是否生效

通过VNC登陆虚拟机kvm-node1查看,配置已经生效

blob.png

3.kvm常用命令3.1.启动虚拟机

# virsh start kvm-node1

3.2.停止虚拟机

# virsh shutdown kvm-node1

3.3.立即中断一个虚拟机

# virsh destroy kvm-node1

执行该命令后虚拟机的状态会变成 shut off

3.4.挂起一个虚拟机

# virsh suspend kvm-node2

执行该命令后虚拟机状态会变成 paused

3.4.恢复一个虚拟机

# virsh resume kvm-node2

3.5.查看所有虚拟机的状态

# virsh list --all

3.6.编辑虚拟机的配置文件,可以调整cpu数量,内存大小,网卡

# virsh edit kvm-node1


Comments are closed.