linux部署kvm虚拟化

初学Linux的朋友往往自己会做很多实验,这就需要用到许多虚拟机,本文介绍了一种适合个人实验环境的kvm快速部署虚拟机,(企业环境也可以,根据实际情况修改),纯手打原创。

KVM概述

Kernel-based Virtual Machine的简称,kvm是一个开源的基于硬件的虚拟化技术,所以需要cpu的支持(Intel VT技术或者AMD V技术)。企业里常用到的vmware 是基于软件层面的虚拟化,这是两者的区别。这里为什么选择kvm,是因为他部署简单,不需要另外的客户端管理,可以完全用命令管理,方便操作。

步骤

1.一台物理机,也可以是云服务器,配置看自己情况,内存要大,不能低于8G。安装centos(推荐7系列的版本)图形版或者ubuntu 桌面版,这里以实验环境举例,所以安装带图形的版本。

以centos举例,ubuntu安装方法一样。

2.配置网络yum源,有些包iso镜像里没有,用网络yun源方便解决。
执行egrep -c ‘(vmx|svm)’ /proc/cpuinfo命令
如果输出结果为0则说明CPU不支持硬件虚拟化
如果输出结果大于0则说么可以支持
如果不支持请进入开机bios开启cpu虚拟化,主流cpu都支持虚拟化。

3.安装软件包:
必备软件
qemu-kvm— 为kvm提供底层支持
libvirt-client — virsh等软件
libvirt-daemon — libvirtd服务进程
libvirt-daemon-driver-qemu— virsh的qemu驱动
可选功能
virt-install — 系统安装工具
virt-manager— 图形管理工具,在这里一定要装,纯命令管理不适合初学者
virt-v2v— 虚拟机迁移工具
virt-p2v— 物理机迁移工具

3.搭建网桥,这是关键的一步,保证虚拟机和真机能通讯。
进入/etc/libvirt/qemu/networks目录,里面有个defaulst.xml的模板配置文件,可以拿这个复制,也可以重新手写,必须在此目录下。
自建一个以.xml结尾的文件,推荐名称以你要命名的网卡加.xml结尾,内容如下:

网卡名








//其中汉字部分可以自定义,192.168.1.254是自己给本机这个网卡设置的ip,可以自己随意设置,但主机位最好是254,这个是虚拟机的网关。第三行是转发的方式,如果没有这个只能内部通讯,不能链接因特网。dhcp这一段是给虚拟机用dhcp的方式分发ip,范围是从100到200,可以将这3行删掉,就是新建的虚拟机没有ip,自己手动配置。结束保存退出。
激活:vrish net-define 网卡.xml
启动:virsh net-start 网卡
开机启动:virsh net-autostart 网卡
现在ifconfig查看就会发现多了一个叫xx的网卡,并且IP是192.168.1.254/24

4.创建虚拟磁盘
进入/var/lib/libvirt/images/目录,这是默认磁盘存放目录
qemu-img create -f qcow2 node.qcow2 50G
//node.qcow2是磁盘的名称,创建时要以qcow2结尾,不然等会识别不出来,后面做成模板后就可以随意命名,50G是给磁盘的大小,这个大小只是一个文件,跟真机的物理磁盘大小没关系。
qemu-img info node.qcow2 可以查看这个虚拟磁盘的信息

5.创建模板虚拟机
打开vrit-manager图行管理,点击左上的小灯泡按钮,选择新建虚拟机,这里要自己准备一个centos7的镜像,可以去官网下载,选择本地镜像安装(其他方式也可以,这里选简单的),选择你下载好的镜像,下一步,注意在网卡选择上要选择你刚才新建的网卡,内存给2048就够了,磁盘不要选择第一个选项,要选择第二个,并找到刚才你新建的node.qcow2磁盘,在自定义配置里最好自己添加几个网卡,选择virtool(记不太清了),不添加也没关系,其他和正常装系统没区别,选择最小化安装。如果安装报错cpu不支持,请进入开机bios将cpu虚拟化打开,前面说过kvm需要cpu支持。

系统安装好了用root进入,centos默认的密码是redhat,进入查看ip是否分配ok(用ip a命令),并配置yum源,(这里不要用网络yum,真机挂载一个iso镜像通过http或者ftp共享),用真机ssh远程该虚拟机方便操作,安装常用软件包:
自动补齐的包:bash-completion
ifconfig:net-tools 可以用yum provides查找自己需要的命令的包

禁用防火墙,selinux
禁用空路由:vim /etc/sysconfig/network
添加 NOZEROCONF=”yes”
配置console端口:
vim /etc/sysconfig/grub
在GRUB_CMDLINE_LINUX这一段的后面添加 console=tty0 console=ttyS0,115200n8 (要包含在分号里面)
激活:grub2-mkconfig -o /boot/grub2/grub.cfg

修改网卡配置文件:删除里面的uuid,mac地址,ip地址,网关,如果没有DEVICE=”**” 该行要自己添加。关闭虚拟机。

6.修改虚拟机模板配置文件。
//虚拟机有2个文件,分别是磁盘文件和硬件配置文件,kvm的虚拟机就是通过这2个文件来产生,磁盘文件在/var/lib/libvirt/images, 配置文件在/etc/libvirt/qemu.
进入/etc/libvirt/qemu目录,将刚才建的模板虚拟机配置文件复制一份命名为node1.xml,然后vim修改

           centos7.0        ##定义虚拟机名称,这里要改成新的名称node1
c2d264d3-5c61-4d2e-8678-b28673c1f64b ##删掉改行
1048576 ##定义内存大小,根据你自己的模板来,可以不改
1048576
1
                 
hvm
      

          




Haswell-noTSX






destroy      
restart



                
/usr/libexec/qemu-kvm
    

##虚拟磁盘的位置,将后面的node.qcow2改成新名字node1.img



















    
##删除改行




      

















     


你可能感兴趣的:(Virtual)