推荐一款M1芯片电脑快速搭建集群的虚拟机软件

虚拟机软件太多了,出名的莫过于VMware,VirutlaBox以及Parallels Desktop。
我们使用虚拟机软件一般有两种用途:
- 安装不同于宿主机系统的拥有用户界面的操作系统,比如Windows安装桌面版
Ubuntu,Mac安装Windows等,用于日常工作和生活的使用;
这一需求我目前使用Parallels Desktop来解决,在我本机上安装了Windows和Ubuntu的桌面版。Parallels Desktop除了贵,没有其他问题!

- 另一种是便于开发者快速创建和部署虚拟化开发环境(集群环境),本文推荐的虚拟软件就是这个作用。
之前我在Windows上都是使用VirtualBox+Vagrant的方式快速创建和销毁虚拟机。现在我的工作主机换成了M1芯片的Mac,而VirtualBox并没有给予适配。
最近发现了一款叫做Multipass的虚拟机软件,重点是,我的M1电脑可以使用!接下来给大家分享一下使用心得。
1. 下载安装Multipass
Mac下推荐使用brew安装Multipass,免去了点击下载,解压以及安装的步骤
brew install --cask multipass
安装之后,查看是否安装成功
➜ ~ multipass version
multipass 1.9.2+mac
multipassd 1.9.2+mac
2. 查看Multipass支持的镜像
➜ ~ multipass find
Image Aliases Version Description
18.04 bionic 20220615 Ubuntu 18.04 LTS
20.04 focal,lts 20220615 Ubuntu 20.04 LTS
21.10 impish 20220609 Ubuntu 21.10
22.04 jammy 20220609 Ubuntu 22.04 LTS
anbox-cloud-appliance latest Anbox Cloud Appliance
charm-dev latest A development and testing environment for charmers
docker latest A Docker environment with Portainer and related tools
minikube latest minikube is local Kubernetes
注意:
Multipass只提供了Ubuntu的发行版镜像,这对于开发人员开说并不算什么缺点,至少对我是这样的
3. 创建虚拟机
接下来我们选择需要的镜像版本来安装Ubuntu实例,这里以jammy(镜像列表的Aliases一列)为例
➜ ~ multipass launch jammy
Launched: boss-wallaroo
其中,boss-wallaroo是Multipass给jammy镜像实例随机起的名字,你也可以使用--name来指定实例名称。
~ multipass launch jammy --name chanmufeng-ubuntu
Launched: chanmufeng-ubuntu
4. 操作虚拟机
4.1. 查看虚拟机列表
使用multipass info --all查看安装的所有虚拟机
➜ ~ multipass info --all
Name: chanmufeng-ubuntu
State: Running
IPv4: 192.168.64.3
Release: Ubuntu 22.04 LTS
Image hash: 746fd17e2944 (Ubuntu 22.04 LTS)
Load: 0.02 0.02 0.00
Disk usage: 1.3G out of 4.7G
Memory usage: 162.4M out of 961.9M
Mounts: --
Name: lucky-dog
State: Stopped
IPv4: --
Release: --
Image hash: 746fd17e2944 (Ubuntu 22.04 LTS)
Load: --
Disk usage: --
Memory usage: --
Mounts: --
执行结果表明,我电脑上有了2个实例,分别是chanmufeng-ubuntu(运行中)、lucky-dog(停止状态)。
4.2. 进入虚拟机,执行命令
执行multipass shell 实例名 进入实例,如果实例未启动,则会自动启动
➜ ~ multipass shell lucky-dog
Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.15.0-37-generic aarch64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Sun Jun 19 21:06:43 CST 2022
System load: 0.3203125
Usage of /: 29.8% of 4.77GB
Memory usage: 20%
Swap usage: 0%
Processes: 100
Users logged in: 0
IPv4 address for enp0s1: 192.168.64.2
IPv6 address for enp0s1: fd96:8c7d:a0ba:459d:5054:ff:fea5:1ea3
0 updates can be applied immediately.
Last login: Tue Jun 14 13:41:27 2022 from 192.168.64.1
ubuntu@lucky-dog:~$ ~
然后就可以在lucky-dog中自由地玩耍了。
4.3. 停止/重启虚拟机
# 暂停
➜ ~ multipass stop lucky-dog
# 启动
➜ ~ multipass start lucky-dog
4.4. 移除实例到“回收站”
使用如下命令删除实例
➜ ~ multipass delete chanmufeng-ubuntu
delete命令只是将chanmufeng-ubuntu实例标记为DELETED状态而已,相当于放到了回收站,但是本身依然存在。
使用list命令看一下
➜ ~ multipass list
Name State IPv4 Image
chanmufeng-ubuntu Deleted -- Not Available
lucky-dog Running 192.168.64.2 Ubuntu 22.04 LTS
如果后悔了,可以使用recover命令进行撤销
➜ ~ multipass recover chanmufeng-ubuntu
再次使用list命令看一下
➜ ~ multipass list
Name State IPv4 Image
chanmufeng-ubuntu Stopped -- Not Available
lucky-dog Running 192.168.64.2 Ubuntu 22.04 LTS
4.5. 彻底删除实例
这一步相当于从“回收站”彻底删除,当然了,前提是实例必须已经被放在了“回收站”。
➜ ~ multipass delete chanmufeng-ubuntu
➜ ~ multipass purge
➜ ~ multipass list
Name State IPv4 Image
lucky-dog Running 192.168.64.2 Ubuntu 22.04 LTS
5. 其他进阶功能
除了以上基本功能,Multipass还提供其他进阶功能,本文只是提一嘴,更多细节,大家访问官网查看一下文档即可。
5.1. 自定义硬件配置
可以自定义CPU核心数、硬盘大小以及内存大小等参数
自定义网卡配置和DNS配置
5.2. 快速配置环境
虚拟机功能给我们带来的好处就是对于实例,我们想建就建,想删就删。
可是删了之后重新建立,难免很多软件和工具需要重新进行配置,Mutipass提供了--cloud-init对容器进行初始化配置。
➜ ~ multipass launch --name ubuntu --cloud-init config.yaml
config.yaml 是初始化配置文件,内容如下:
runcmd:
- curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
- sudo apt-get install -y nodejs
runcmd 可以指定容器首次启动时运行的命令
5.3. 搭配VirtualBox
当然,这个功能不适合M1,但是在其他平台上搭配VirtualBox可以实现和Vagrant同样的效果。
通过VirtualBox对Multipass虚拟机进行可视化操作。

还有其他的一些功能需要读者朋友们自己发掘一下了,更多细节参见官网。
推荐一款M1芯片电脑快速搭建集群的虚拟机软件的更多相关文章
- 边缘使用 K8s 门槛太高?OpenYurt 这个功能帮你快速搭建集群!
OpenYurt作为阿里巴巴首个开源的边缘云原生项目,涉及到边缘计算和云原生两个领域.然而,许多边缘计算的开发者并不熟悉云原生相关的知识.为了降低 OpenYurt 的使用门槛,帮助更多地开发者快速上 ...
- CentOS7下 简单安装和配置Elasticsearch Kibana Filebeat 快速搭建集群日志收集平台
目录 1.添加elasticsearch官网的yum源 2.Elasticsearch 安装elasticsearch 配置elasticsearch 启动elasticsearch并设为开机启动 3 ...
- 使用windos电脑模拟搭建集群(四)web环境 linux+nginx+jdk+tomcat
1.使用ansible的playbook自动安装两台web主机的nginx 1.配置模块 主机清单 2.创建 playbook目录并编写安装nginx的playbook mkdir -p playbo ...
- 使用windos电脑模拟搭建集群(三)实现全网监控
这里我们采用小米监控 open-falcon 这是server端就是 192.168.5.200 这台主机, agent就是负责将数据提交到 server端 agent整个集群所有主机都 ...
- Linux+.NetCore+Nginx搭建集群
本篇和大家分享的是Linux+NetCore+Nginx搭建负载集群,对于netcore2.0发布后,我一直在看官网的文档并学习,关注有哪些新增的东西,我,一个从1.0到2.0的跟随者这里只总结一句话 ...
- Redis 实战篇之搭建集群
Redis 集群简介# Redis Cluster 即 Redis 集群,是 Redis 官方在 3.0 版本推出的一套分布式存储方案.完全去中心化,由多个节点组成,所有节点彼此互联.Redis 客户 ...
- redis 一二事 - 搭建集群缓存服务器
在如今并发的环境下,对大数据量的查询采用缓存是最好不过的了,本文使用redis搭建集群 (个人喜欢redis,对memcache不感冒) redis是3.0后增加的集群功能,非常强大 集群中应该至少有 ...
- 架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)
[前言] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(一)>中小编简单的讲解了Nginx的原理!俗话说:光说不练假把式.接下来,小编就和大家一起来做个小Demo来体会一下N ...
- Nginx学习笔记(反向代理&搭建集群)
一.前言 1.1 大型互联网架构演变历程 1.1.1 淘宝技术 淘宝的核心技术(国内乃至国际的 Top,这还是2011年的数据) 拥有全国最大的分布式 Hadoop 集群(云梯,2000左右节点,24 ...
随机推荐
- Qt 实现文字输入框,带字数限制
Qt 实现文字输入框,带字数限制 核心构思 核心的点在于,限制输入的字数:主要的方法为创建一个组合窗口 textChanged 这个信号,会在你输入字符之后发射,可以连接这个信号,在发射了信号之后,去 ...
- Markdown基础语法规则
你好,世界.粗体,斜体,测试,弟弟,H2O 论文题目 一级标题 二级标题 三级标题 1 2 3 点击此链接打开网址 公式 \(y = \sin x\) \[ y = \frac{1}{x} \] dd ...
- Water 2.5.9 发布,一站式服务治理平台
Water(水孕育万物...) Water 为项目开发.服务治理,提供一站式解决方案(可以理解为微服务架构支持套件).基于 Solon 框架开发,并支持完整的 Solon Cloud 规范:已在生产环 ...
- 坐实大数据资源调度框架之王,Yarn为何这么牛
摘要:Yarn的出现伴随着Hadoop的发展,使Hadoop从一个单一的大数据计算引擎,成为大数据的代名词. 本文分享自华为云社区<Yarn为何能坐实资源调度框架之王?>,作者: Java ...
- 001_iBase4J学习之环境搭建
目录 序言 正文 第一关.拉取项目 第二关.导入数据库 第三关.修改 JDBC 配置文件 第四关.环境搭建,修改 nginx 设置 第五关.添加地址白名单 尾声 序言 大家好,我是白墨! 本次的目标是 ...
- 认识 vh 和 vw 单位
1. 页面 html 结构 <header> <h1>欢迎来到米修在线</h1> <p>Lorem ipsum dolor sit amet conse ...
- 真实本人亲测Elasticsearch未授权访问漏洞——利用及修复【踩坑指南到脱坑!】
如要转载请注明出处谢谢: https://www.cnblogs.com/vitalemontea/p/16105490.html 1.前言 某天"发现"了个漏洞,咳咳,原本以为这 ...
- Solon 1.7 重要发布,更现代感的应用开发框架
相对于 Spring Boot 和 Spring Cloud 的项目 启动快 5 - 10 倍 qps 高 2- 3 倍 运行时内存节省 1/3 ~ 1/2 打包可以缩小到 1/2 ~ 1/10(比如 ...
- 集成算法(Bagging & Boosting)
用多种分类器一起完成同一份任务 Bagging策略(有放回的,随机的,子集大小一样的,m个训练集用同一个模型) Boosting-提升策略(串联) AdaBoost算法
- 使用Typora + 阿里云OSS + PicGo 打造自己的图床
使用Typora + 阿里云OSS + PicGo 打造自己的图床 为什么要打造图床? 让笔记远走高飞 试问以下场景: 我们要把 markdown 笔记放到某博客上,直接进行复制即可.但因你的图片存储 ...