macOS+VirtualBox+Ubuntu搭建K8s集群(一): 创建Ubuntu虚拟机

472 阅读4分钟

工具及版本说明

  1. 宿主主机操作系统版本 macOS Monterey 12.6.3,CPU架构AMD64/X86_64
  2. 本文写作时,VirtualBox最新版本为7.0.6,Ubuntu LTS Destop最新版本为22.04
  3. 请在VirtualBox官网Ubuntu官网分别下载相应版本软件并自行安装好Virtualbox

创建Ubuntu虚拟机

  1. 打开Virtualbox, 点击 Machine -> New...,一定要勾选Skip Unattended Installation image.png

  2. 设置硬件资源,4G内存+2CPU image.png

  3. 设置虚拟硬盘,按需分配50G image.png

  4. 结束设置,最终效果. image.png

  5. 右击刚刚创建出来的虚拟机,点击Settings....选中Display选项卡,按需调整Scale Factor image.png

  6. 选中Audio选项,卡关闭声音. image.png

  7. 选中Network选项卡,关闭网络加速安装过程. image.png

  8. 点击OK完成Settings设置,再右击刚刚创建出来的虚拟机,点击Start->Normal Start.

  9. 选择第一个Try or Install Ubuntu image.png

  10. 选择你喜欢的安装提示语言,点击Try Ubuntu或者试用 Ubuntu. 英文 中文

  11. 调整显示器分辨率,点击活动 -> 设置 -> 显示器,选择分辨率并点击应用 设置分辨率 保持更改

  12. 回到桌面,双击安装Ubuntu 22.04 LTS

  13. 选择安装提示语言,与之前相同.

  14. 选择键盘布局,默认English(US)即可 image.png

  15. 选择最小安装 image.png

  16. 选择清除整个磁盘并安装 Ubuntu点击现在安装,在弹窗内点击继续. image.png image.png

  17. 设置时区,点击继续. image.png

  18. 设置用户,点击继续. image.png

  19. 等待安装完成,点击现在重启.稍等一会儿,按照提示敲击回车即可. image.png

至此完成了Ubuntu虚拟机的安装,先关闭虚拟机,然后开始对虚拟机进行配置.

配置虚拟机

配置网络

如果希望虚拟机既可以访问互联网又可以与主机互通,那么需要在虚拟机上配置两个网络适配器.

  1. NAT —— 虚机可以访问外网
  2. Host-Only Network 与主机互通

创建网络适配器

  1. 点击 File -> Tools -> Network Manager image.png

  2. 选中Host-only Networks选项卡并点击Create保持默认即可. image.png

  3. 选中NAT Networks选项卡并点击Create保持默认即可. image.png

关联网络适配器

  1. 右击虚拟机,点击Settings...选中Network选项卡
  2. 选中Adapter 1,勾选Enable Network Adapter,配置Attached to为NAT(virtualbox默认提供的,想用之前创建的NAT需要选NAT Network) image.png
  3. 选中Adapter 2,勾选Enable Network Adapter,配置Attached toHost-only Network,NameHostNetwork image.png
  4. 点击Ok结束配置

配置Ubuntu

关闭系统更新

  1. 设置改进计划、隐私等,仅第一次登录. image.png image.png image.png

  2. 点击活动,找到软件和更新.在更新选项卡中作如下设置.点击关闭(报错也没关系) image.png

配置软件源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# 全局替换为阿里源
sudo sed -i 's#http://cn.archive.ubuntu.com#https://mirrors.aliyun.com#g' /etc/apt/sources.list
sudo apt update

安装必备软件

sudo apt update
sudo apt install -y openssh-server openssh-client git vim curl jq net-tools

配置静态IP

当前虚拟要有两个网络适配器——NAT(访问外网)和Host-only(访问主机)

  1. 修改配置文件
cd /etc/netplan/
sudo vim 00-installer-config.yaml

修改00-installer-config.yaml内容为如下内容:

network:
  ethernets:
    enp0s3:
      dhcp4: true
    enp0s8:
      dhcp4: false
      addresses: [192.168.56.2/24]
  version: 2

注意,根据之前虚拟机关联两个网络适配器的顺序可知,这里enp0s3与NAT网络适配器对应,enp0s8与Host-only网络适配器对应.也可以通过ip addr查看对应关系.Host-only网络适配器的网关是192.168.56.1虚拟机需要与其在同一网段所以用192.168.56.2/24

  1. 重新启动、查看修改
sudo netplan apply
ip addr

允许以root身份SSH免密登录虚拟机

  1. Ubuntu 22.04 LTS默认禁用root用户,需要手配置root密码.故开启终端并输入
# 正确输入登录用户的登录密码后即可设置root用户的密码.
sudo passwd root
  1. 配置SSH访问权限
vim /etc/ssh/sshd_config

找到 #PermitRootLogin prohibit-password修改为 PermitRootLogin yes

  1. 重启SSh服务
systemctl restart ssh
  1. 在主机中生成密钥
cd ~/.ssh
# 指定文件名
ssh-keygen -t ed25519 -f ubuntu_vm_ed25519
# 仅自己可用
chmod 600 ~/.ssh/ubuntu_vm_ed25519*
  1. 上传公钥到虚拟机
# ssh-copy-id -i filename user@ip/host
ssh-copy-id -i ubuntu_vm_ed25519.pub root@192.168.56.2
# 启动SSH代理
eval 'ssh-agent'
# 将密钥添加到代理
ssh-add ubuntu_vm_ed25519
  1. 登录验证即可

创建虚拟机快照

安装配置一次虚拟机费时费力,所以留下快照方便创建多台虚拟机.

  1. 点击虚拟机后面的图标,选中Snapshots image.png

  2. 点击Take,输入NameDescription image.png

参考链接