环境:centos6.6,vmware workstation11(如果不是虚拟机可略过)
KVM是指基于Linux内核的虚拟机,此虚拟拟需要linux内核支化功能;
首先开启虚拟化功能(inter VT,AMD-V)
file /sbin/init
第一:准备工作(开启虚拟化)
虚拟机---设置--处理器—虚拟化引擎--
注意:如果开启后还不支持,建议自己查看自己VMware workstations的版本咯。
帮助---关于vmware workstations
开启centos6.6测试是否只是虚拟化
egrep '(vmx|svm)' --color=always /proc/cpuinfo
grep -E -o'(vmx|svm)' --color=auto /proc/cpuinfo
注意:(如果输出的结果包含 vmx,它是 Intel;如果包含 svm,它是 AMD。如果你甚么都得不到,那应你的系统并没有支持虚拟化的处理。)
关闭selinux
第二步:安装需要的包
yum -y groupinstall "Virtualization""Virtualization Client"(包组安装)
yum install qemu-kvm qemu-kvm-tools libvirtvirt-install bridge-utils –y(根据自己的需求安装)
下面的根据自己的需求安装。
PER-INSTALL
kvm相关安装包及其作用
qemu-kvm 主要的KVM程序包
python-virtinst 创建虚拟机所需要的命令行工具和程序库
virt-manager GUI虚拟机管理工具
virt-top 虚拟机统计命令
virt-viewer GUI连接程序,连接到已配置好的虚拟机
libvirt C语言工具包,提供libvirt服务
libvirt-client 为虚拟客户机提供的C语言工具包
virt-install 基于libvirt服务的虚拟机创建命令
bridge-utils 创建和管理桥接设备的工具
管理方式:virt-manager(图形化),virt-install(命令行模式)
#注意:安装图形的话(此方式必须要安装图形界面)
#yum install virt-manager–y
#这种图形化的方式,需要加载的页面多,所以我用的是命令模式)
查看是否加载了kvm模块
lsmod |grep kvm
#如果没有这两条,可以用"modprobe kvm"加载;
#相关命令"insmod;rmmod;modinfo"
第三步:配置网络
启动libvirtd
/etc/init.d/libvirtdstart
chkconfig libvirtd on
cat ifcfg-br0
[root@HYXDnetwork-scripts]# cat ifcfg-br0
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=none
IPADDR=192.168.1.218
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=202.106.0.20
DNS2=8.8.8.8
[root@HYXDnetwork-scripts]#
网络配置
eth0
[root@HYXDnetwork-scripts]# cat ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:B7:11:45
TYPE=Ethernet
UUID=e039e21d-dd0b-4e03-87a0-d6f97c8d07ef
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
#IPADDR=192.168.1.218
#NETMASK=255.255.255.0
#GATEWAY=192.168.1.1
#DNS1=192.168.1.1
#DNS2=202.106.0.20
桥接一下
brctl addif br0 eth0(此方式只是临时)
echo 1 > /proc/sys/net/ipv4/ip_forward(如果虚拟化主机想要上网,要开启转发)
查看网络连接
#brctl是一个网桥连接管理命令
brctl stp br0 on(开启生成树协议,避免环路)
brctl show
具体查看 brctl --help
第四步:安装vncserver来管理你所安装的虚拟机。
yum installtigervnc-server –y
#(下面我用的是默认的5900)
#vim/etc/sysconfig/vncservers
#VNCSERVERS="1:root"
#vncpasswd
第五步:创建一个vm
#ln -sv/usr/libexec/qemu-kvm /usr/sbin/
#创建一个镜像(相当于硬盘)
#mkdir -p/usr/local/vm1
#qemu-img create -f qcow2 -o size=10G /usr/local/vm1/qcow2.qcow2
#mvCentOS-6.6-x86_64-minimal.iso /usr/local/vm1/
#qemu-kvm -name"centos6.6" -m 512 -smp 1 -hda /usr/local/vm2/qcow2.qcow2 -cdrom /usr/local/vm1/CentOS-6.6-x86_64-minimal.iso -boot order=dc
用virt-install 安装vm
创建磁盘镜像
mkdir -p /usr/local/vm2
qemu-img create -fqcow2 /usr/local/vm2/centos.qcow2 10G
注意:空间给的不够的话,系统是安装不了的哟。
[root@HYXD ~]# virt-install --name=centos --boot network,cdrom,menu=on--ram 512 --vcpus=1 --cdrom=/usr/local/vm1/CentOS-6.6-x86_64-minimal.iso --graphics vnc,listen=0.0.0.0 --noautoconsole--os-type=linux --os-variant=rhel6 --accelerate --disk path=/usr/local/vm2/centos.qcow2,size=5,format=qcow2,bus=virtio--bridge=br0,model=virtio --autostart --virt-type kvm
开始安装......
创建域...... | 0 B 00:00
域安装仍在进行。您可以重新连接
到控制台以便完成安装进程。
注意:centos的镜像不要和你创建的磁盘在一个地方。
打开你的vncviwer客户端
注意:首先pxe安装,因为没有pxe主机,所以会跳过。(上面定义的有启动顺序)
注意:跳过镜像检查。
注意:一定要初始化,否则怎么装系统呢?
注意:问你是否写进磁盘。
此刻,vm已经安装成功。
配置一个ip
此vm已经创建并配置完成。
第六步:简单管理vm
1. 简单创建一个快照
virsh snapshot-create-as --domaincentos --name xitonganzhuang
安装一个httpd
还原快照
virsh snapshot-revert centos xitonganzhuang
2. 增加或者减小内存。
减小
增加
virsh setmem centos 400M
注意:内存不得大于预期你定义的内存。(我定义的是500M)
如果你想要之后管理vm,那么创建vm的时候,不要定义
常用virsh指令
1)virsh list 列出当前虚拟机列表,不包括未启动的
2)virsh list --all 列出所有虚拟机,包括所有已经定义的虚拟机
3)virsh destroy vm-name 关闭虚拟机
4)virsh start vm-name 启动虚拟机
5)virsh edit vm-name 编辑虚拟机xml文件
6)virsh undefine vm-name 删除虚拟机
7)virsh shutdown vm-name 停止虚拟机
8)virsh reboot vm-name 重启虚拟机
9)virsh autostart vm-name 虚拟机随宿主机启动
10)virsh setmem 定义内存的大小
11)virsh attach-disk 附加磁盘设备
12)virsh setvcpus 增加cpu的数量
具体说明 virsh –h
完-----