Linux之使用Linux命令搭建KVM云环境
白羽 2018-07-04 来源 :网络 阅读 1087 评论 0

摘要:本文将带你了解Linux之使用Linux命令搭建KVM云环境,希望本文对大家学Linux有所帮助。本地KVM(Kernel-based Virtual Machine)云能够为企业提供快速创建虚拟机的安全环境,非常类似于传统云,但是成本却大幅度降低。


   

 

 

  本地KVM(Kernel-based Virtual Machine)云能够为企业提供快速创建虚拟机的安全环境,非常类似于传统云,但是成本却大幅度降低。

  私有云通常被认为是快速、高效交付大规模虚拟机的最佳实践,但并非是唯一选择。对于那些想要部署小规模虚拟机的企业来说,本地KVM云也许会是更好的选择。这篇文章中会进一步分析如何在不依赖于公有云或者昂贵云软件的情况下运行类似云环境。

  如果企业正在寻找一种部署虚拟机的简单方式,首先应该考虑如何为将要使用的磁盘镜像创建模板。可以使用KVM或者任何其他虚拟化软件,也可以使用类似于virt-manager的工具。

  在下面的实例当中,假设管理员已经创建了这样的镜像文件,也会使用一些由VMware Fusion创建的虚拟机,这样能够更好地理解转换过程中面临的挑战。

  创建兼容虚拟机文件

  当在VMware中创建虚拟机文件时,必须首先确保这些文件能够和其他基础架构相互兼容。如果只使用VMware的hypervisor,这并不存在问题,但是很多企业还会使用KVM。确保虚拟机兼容性的方式之一就是将虚拟机导出为OVF(Open Virtualization Format)格式。这种格式类似于zip压缩文件,其优势在于能够兼容任何现有的虚拟化软件或者hypervisor。

  在虚拟机当中通常能够找到一个用于描述虚拟机硬件的OVF文件,以及至少一个虚拟机磁盘文件(VMDK),也就是虚拟磁盘自身。在开始使用KVM云之前必须导入VMDK文件。可以在Linux Sehll当中使用下面的命令完成导入操作:

  qemu-img convert -O qcow2 vmdisk.vmdk vmdisk.qcow2

  创建虚拟机

  在运行上面的命令之后,将会 产生和KVM兼容的磁盘文件。下一步是基于磁盘文件创建新的虚拟机。这里可以使用virt-install命令,后面的参数信息指定用户希望分配的硬件配置。最终命令应该如下所示:

  virt-install -n server1 --disk=/var/lib/libvirt/images/server1.qcow2 --ram 1024 vcpus 1 --connect qemu:///system --import --noautoconsole

  这条命令将会基于存储在目录"/var/lib/libvirt/images"当中的qcow2文件创建一台新的虚拟机。这时,你就可以开始使用虚拟机了。

  为虚拟机分配新的硬件

  导入虚拟机之后,可能还需要为其添加新的硬件。为了完成这项任务,可以使用virsh命令和virsh管理层(和libvird进行通信)直接进行交互,假如需要为虚拟机添加一个名称为server1的网卡,那么应该使用下面的命令:

  virsh attach-interface --domain server1 --type network --source default --model virtio --mac 52:54:00:00:11:11 --config --live

  这条命令可以提供一块使用virtio驱动的新网卡,智能访问网络硬件。Virtio还能够更改配置文件,将新的接口加入运行配置当中,这意味着无需重启就能够使用新添加的硬件了。

  还可以使用类似方式为虚拟机添加新的磁盘设备。在这样做之前,需要首先创建存储设备。为了定义磁盘文件,可以使用dd命令首先创建一个稀疏文件(sparse file)。

  使用如下命令创建一个1GB的稀疏文件:

  dd if=/dev/zero of=/var/lib/libvirt/images/1Gfile.img bs=1M seek=1024 count=0

  之后使用如下命令将设备连接到虚拟机:

  virsh attach-diks myvm /var/lib/libvirt/images/1Gfile.img vdb --config --live

  这条命令会将虚拟磁盘——名称为“/dev/vdb”——添加到虚拟机当中。

  在一台常见Linux KVM主机当中管理虚拟化环境可以参考上述操作,用户还可以使用Linux命令部署自己的私有KVM云,并且基于模板文件轻松部署和更改虚拟机。

 

 


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标系统运维之Linux!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程