共计 1872 个字符,预计需要花费 5 分钟才能阅读完成。
一. Multipass 是什么?
Multipass 是一个轻量级 Linux 虚拟机命令行管理工具,反对 Linux、Windows 与 macOS。
二. 为什么要用 Multipass
- 可能以最小的老本和资源在本地疾速搭建具备残缺 Ubuntu 性能小型虚拟机集群(如测试 K8s 各类个性、数据库小集群等)
- 能够不便疾速的做各类 Linux 试验,而不必放心把零碎搞坏,重建一个新零碎只有几分钟
- 实例通过命令行治理,对开发十分敌对,每个实例 IP 固定
三. 如何装置
Mac OS 装置
办法一:能够间接下载安装包装置
点击下载 Multipass 安装包
办法二:应用 Homebrew 装置
没有装置 Homebrew? 点击这里装置 Homebrew
brew install multipass
Linux 装置
应用 Snapcraft 装置
没有装置 Snapcraft? 点击这里装置 Snapcraft
sudo snap install multipass
Windows 10 装置
办法一:能够间接下载安装包装置
点击下载 Multipass 安装包
办法二:应用 Chocolatey 装置
没有装置 Chocolatey? 点击这里装置 Chocolatey
choco install multipass
四. 性能介绍
可在 Multipass 官网 查看具体应用文档。
-> ~ $ multipass help
用法: multipass [options] <command>
创立, 管制和连贯 Ubuntu 实例。multipass 命令行工具, 用于治理 ubuntu 实例。参数:
-h, --help 查看本帮忙内容
-v, --verbose 减少日志显示的具体水平。通过在短参数中减少 'v' 来获取更多日志信息
最多反对 4 个等级,如:-vvvv。可用的命令:
delete 删除实例
exec 在实例中执行命令
find 查找并列出可用于创立实例的镜像
get 获取某个配置项
help 查看帮忙
info 查看实例信息
launch 创立并启动实例
list 列出所有实例
mount 挂载文件夹到实例
purge 革除已删除的实例
recover 复原已删除的实例
restart 重启实例
set 设置某个配置项
shell 通过 shell 连贯实例
start 启动实例
stop 进行实例
suspend 挂起实例
transfer 在本机和实例之间传输文件
umount 移除实例中挂载的文件夹
version 查看版本号
五. 常见问题(以 MacOS 为例)
问题一:最开始设置的内存或 CPU 数量小了,想扩容,怎么办?
multipass 通过 /var/root/Library/Application Support/multipassd/multipassd-vm-instances.json
中的配置来治理实例,可间接在这个配置文件中批改:mem_size
来减少或缩小内存 num_cores
来减少或缩小 CPU 外围数
批改之前须要先进行 multipass 的过程,起因是 multipass 会在被敞开的时候将各个实例的状态写入到配置文件,所以在没有敞开 multipass 过程的时候批改配置文件,会被笼罩。
# 进行 multipassd 过程
sudo launchctl unload /Library/LaunchDaemons/com.canonical.multipassd.plist
# 编辑 /var/root/Library/Application Support/multipassd/multipassd-vm-instances.json 文件
# 须要 root 权限
# 重新启动 multipassd 过程
sudo launchctl load /Library/LaunchDaemons/com.canonical.multipassd.plist
问题二:电脑意外关机,无奈启动实例,怎么办?
实例的启动敞开状态也保护在 /var/root/Library/Application Support/multipassd/multipassd-vm-instances.json
文件中的 state
字段,当电脑意外关机,state
字段不会被正确的保护,导致无奈启动或敞开实例,这时候,能够先进行 multipassd 过程,而后手动到配置文件中批改 state
为 0,即关机状态,保留配置文件,并启动 multipassd 实例即可,这时候就能够失常启动各个实例了。
问题三:能装置 Cent OS 实例么?
临时不能,该工具为 Ubuntu 背地的公司 Canonical 开发,目前仅反对 Ubuntu 零碎。
问题四:如果在实例之间传递文件?
最简略的形式是通过挂载雷同的文件夹到不同的实例中来共享文件。
参考
- multipass 官网