使用multipass准备环境

Multipass 简介 #

Multipass 是Ubuntu公司开发的一款轻量级虚拟机管理工具,可以让用户像使用Docker一样的快速部署虚拟机。现已经开源,源代码地址

Multipass 运行环境支持 Linux、Windows、macOS。在不同的操作系统上,使用的是不同的虚拟化技术。 在 Linux 上使用的是 Qemu、KVM;Window 上使用 Hyper-V、Busybox;macOS 中使用 Qemu、HyperKit 以最小开销运行VM。可以很方便的在笔记本电脑上模拟出多台虚拟机进行云环境的搭建。

由于Multipass是由ubuntu公司开发的,所以主要对Ubuntu系统的支持比较好,截至 2023.05.28 还不支持CentOS。

官网地址: https://multipass.run/

安装 #

由于不同版本以及操作系统的差异,请尽量按照官网的步骤安装。

虚拟机管理 #

# 查看可安装的虚拟机版本
$ multipass find

# 启动一个虚拟机
$ multipass launch 22.10 -n master-node -c 2 -m 4G -d 40G
#    -n, --name: 名称
#    -c, --cpus: cpu核心数, 默认: 1
#    -m, --mem: 内存大小, 默认: 1G
#    -d, --disk: 硬盘大小, 默认: 5G

# 查看已经创建的虚拟机实例列表
$ multipass list

# 查看已经创建的虚拟机实例详情
$ multipass info master-node

# 删除虚拟机实例
$ multipass delete --purge master-node

我的命令 #

# 创建cloud-init.yaml,配置Root登录以及登录密钥
$ cat > cloud-init.yaml << EOF
users:
  - default
  - name: root
    ssh_authorized_keys:
    - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD7YN0LGzSoq8X+d4v5b/Brup+4t6t7VpG8jmlJtwmpyrxMZ+CpbDRB5abKJ1qOBXK53FV2+xJ5nr90AxWuRomf+/NqoDWRlFgIpvmcD6dqRxKZMob1z8D18Mx9tVVup54+aeHzwVe2rDT8T5u4O4pu3h5Jzjy+fevTKNdHAA71/HQ2erQstqbaaqOMkYzn3guBTIgljrgBZEuv8BojtMLsElzGNDUWvdK6i4fGRSy0Y4GM58wI3n83BOZgpDyh69fovlFagQm48cP6eKZVA3gYg97Hm2w2ODtfusVXGFUzssYriKifSzuAG7dJRP+YpuNZxI/4qFGWDWdE3PBKwjzv
EOF

# 使用cloud-init.yaml初始化虚拟机
$ multipass launch 22.10 --name master-node --cpus 2 --mem 4G --disk 40G --cloud-init ./cloud-init.yaml
$ multipass launch 22.10 --name worker-node01 --cpus 2 --mem 2G --disk 20G --cloud-init ./cloud-init.yaml
$ multipass launch 22.10 --name worker-node02 --cpus 2 --mem 2G --disk 20G --cloud-init ./cloud-init.yaml