轻量级虚拟机,横空出世!
对于从事IT技术行业的我们,大家对VMware虚拟机应该都比较熟悉,平时自己搭个学习、测试、开发环境啥的,还真离不开它。
VMware虚拟机的功能非常强大,比如:启动快速,运行程序更加方便快捷;虚拟系统只能模拟和现有操作系统相同的环境,而虚拟机则可以模拟出其他种类的操作系统;而且虚拟机需要模拟底层的硬件指令,所以在应用程序运行速度上比虚拟系统慢得多。
VMware虚拟机确实是真的好用,但是它是收费的,而且费用还不便宜。所以,今天,给大家介绍一款好用、轻量级的虚拟机产品Multipass(免费开源)。Multipass简介
Multipass是一款非常轻量级的虚拟机命令管理工具,它支持Linux、Windows和macOS等多平台运行环境。
Multipass是由Ubuntu运营公司Canonical所推出的开源项目。在不同的操作系统上,使用的是不同的虚拟化技术,可以使用最小的资源开销来快速创建你所需要的虚拟机。
对于使用Linux系统的程序员来讲,Multipass它还提供一个命令行界面来管理你的Linux实例,非常的方便、易操作与管理。Multipass安装
在官方网站:https:multipass。run选择对应该的系统版本下载即可:
我这里选择的Windows版本
安装之后,查看自己安装的版本multipassversionMultipass使用创建Ubuntu虚拟机
首先查看可以下载使用的Ubuntu镜像multipassfind
运行成功后,可以看到下面的这些镜像列表,包含各种版本的。ImageAliasesVersionDescriptionsnapcraft:core1820201111SnapcraftbuilderforCore18snapcraft:core2020201111SnapcraftbuilderforCore20corecore1620200818UbuntuCore16core1820200812UbuntuCore1816。04xenial20210128Ubuntu16。04LTS18。04bionic20210129Ubuntu18。04LTS20。04focal,lts20210223Ubuntu20。04LTS20。10groovy20210209Ubuntu20。10appliance:adguardhome20200812UbuntuAdGuardHomeApplianceappliance:mosquitto20200812UbuntuMosquittoApplianceappliance:nextcloud20200812UbuntuNextcloudApplianceappliance:openhab20200812UbuntuopenHABHomeApplianceappliance:plexmediaserver20200812UbuntuPlexMediaServerAppliance
新建一个容器multipasslaunchnamedgLaunched:dg
然后下载最新版的Ubuntu镜像,之后我们就可以直接使用了。multipassexecdglsbreleasedDescription:Ubuntu18。04。4LTS操作虚拟机
查看虚拟机列表
虚拟机创建完成后,查看虚拟机列表。NameStateIPv4ImagedgRunning192。168。24。5Ubuntu18。04LTS
现在有一台Ubuntu18。04版本的虚拟机在运行,对应的IP地址是:192。168。24。5。查看虚拟机信息
通过命令你可以查看当前运行的虚拟机具体信息。multipassinfoallName:dgState:RunningIPv4:192。168。24。5Release:Ubuntu18。04。4LTSImagehash:fe3030933742(Ubuntu18。04LTS)Load:0。000。000。00Diskusage:1。5Goutof4。7GMemoryusage:112。1Moutof985。7M进入虚拟机
使用下面的命令查看虚拟机的系统配置信息、内存、磁盘等的使用情况。multipassshelldg
如果你不想进入系统内部,也可以通过上述提到的multipassexce命令,来操作Ubuntu系统。暂停重启虚拟机暂停multipassstopdg启动multipassstartdg删除释放虚拟机
使用delete命令删除虚拟机之后,该虚拟机实际上还是存在了,想要彻底删除则需要释放虚拟机。删除multipassdeletedg释放multipasspurgedg配置自动化
既要保持开发环境和线上环境一致,又要节省部署时间。我们可以使用cloudinit对容器进行初始化配置:multipasslaunchnameubuntucloudinitconfig。yamlconfig。yaml是初始化配置文件,内容如下:cloudconfigruncmd:curlsLhttps:deb。nodesource。comsetup12。xsudoEbashsudoaptgetinstallynodejswgethttps:releases。leanapp。cnleancloudleanclireleasesdownloadv0。21。0leanclix64。debsudodpkgileanclix64。deb
runcmd可以指定容器首次启动时运行的命令。总结
经过一段时间的使用,我认为这款工具确实是不错的!比如说我要搞点linux的小试验,通过Multipass几分钟就能搭起系统来测试。要测试小型数据库集群,也可以通过Multipass在本地快速搭建虚拟机集群,很不错!
唯一美中不足的是Multipass只能使用Ubuntu镜像,因为这款工具是由Ubuntu背后的Canonical公司开发开源的。