m1 使用 VMware 安装 CentOS7 并部署 k8s 高可用集群
一 软硬件环境介绍
项目 | 版本 |
---|---|
处理器 | Apple M1 Max |
操作系统 | macOS Ventura 13.0 |
虚拟机应用 | VMware Fusion 专业版 12.2.3 |
虚拟机操作系统 | CentOS Linux 7 (AltArch) |
容器运行时版本 | docker 1.13.1 |
集群版本 | Kubernetes 1.21.0 |
二 在 VMware 上安装 CentOS Linux 7
2.1 安装 VMware
安装包下载地址:VMware Fusion 专业版 12.2.3
应用许可证问题请自行解决
2.2 安装虚拟机
2.2.1 CentOS 镜像文件
下载地址:CentOS 7 m1
2.2.2 新建虚拟机
点击新建,选择从光盘或镜像中安装,找到下载的镜像文件,点击继续,操作系统选择Linux中的其他 Linux 5.x 内核 64 位 ARM,继续,点击自定设置,为新的虚拟机命名,如“basic”,点击存储,在弹出的 basic:设置窗口中自定义虚拟机设置,如处理器和内存,我选择 4 核 8192MB,要继续修改其他项,请点击上方的“显示全部”,我选择将硬盘调整为 100GB,点击应用并关闭设置窗口。(网络适配器默认“与我的 Mac 共享”不作改动)
2.2.3 配置虚拟机 IP 网段
如果希望自定义虚拟机 IP 地址段,请参考此步骤,否则请直接查看步骤 2.2.4。参考博文:修改 VMware Fusion 中的虚拟机网路 IP 地址段
在宿主机中打开终端,依次执行以下命令:
#暂停虚拟机网络
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --stop
#编辑虚拟机网络配置文件
sudo vi /Library/Preferences/VMware\ Fusion/networking
输入用户密码并回车
(不了解 vi 编辑模式的同学请自行上网学习,这里推荐安装 vim 并使用内置的学习文档,MacOS可以使用 Homebrew 安装 vim,命令为brew install vim
,至于如何安装及使用 Homebrew,请参考:Homebrew
前面提到的 vim 的内置文档,在安装好之后请执行vim vimtutor.txt
进行学习,Linux可以使用yum install -y vim
安装)这里赘述一下具体修改操作,输入密码之后请按 i 进入编辑模式,(移动光标请使用方向键)将第 11 行中网络号进行修改,例如修改为:answer VNET_8_HOSTONLY_SUBNET 10.0.0.0
,(千万注意不要与宿主机所处局域网的网络号相同)
在不修改其他项的情况下,虚拟机 IP 地址为 10.0.0.*,修改完毕先按下 Esc 键退出编辑模式,然后输入:wq 并回车,以此保存并退出。
#配置虚拟机网络
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --configure
#启用虚拟机网络
sudo /Applications/VMware\ Fusion.app/Contents/Library/vmnet-cli --start
2.2.4 安装虚拟机
点击虚拟机 basic 窗口最中间的图标启动,不要选择默认项,请使用方向键切换到第一项并回车,直接开始安装。
等待。。。
语言默认就好,点击 Continue
点击Time & Date,选咱们伟大的母亲,点左上方 Done
点击Root Password,为管理员用户 root 设置密码,自学图方便,设置为 root 即可,输入两遍,点击 Done,提示太简单了,不管,再次点击 Done
点击右上方的Installation Destination,可以不管,直接 Done
点击 Begin Installation
等待。。。
点击 Reboot System
(按照这个步骤安装的虚拟机是默认没有 GUI 的)
2.2.5 启动虚拟机
启动时的选项不用管,等待 5 秒或者回车进入系统。
此时来到熟悉的命令交互界面
输入用户名 root 并回车,然后输入密码 root 回车,成功登录。
2.2.6 配置虚拟机网络
虚拟机的网络我们选择的是与 Mac 共享,称为网络地址转换(Network Address Translation),就是我们所说的 NAT 模式,具体知识请自行查找相关资料。
此处我们选择为虚拟机配置固定 IP 地址:
#修改虚拟机网络配置文件(最后的160不是必然,请视自身情况而定,如果您不确定,可以在输入到ens处按下tab自动补全)
vi /etc/sysconfig/network-scripts/ifcfg-ens160
在 vi 编辑模式下,修改该配置文件,例如:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#注意修改
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
#UUID请不要拷贝,原有的即可,不用修改,若没有,可以通过命令`uuidgen`生成并自行写入
UUID=ab4efd3a-41ca-4765-b4ff-a4a855c35d47
#以下两项也请参照自己的配置文件名
NAME=ens160
DEVICE=ens160
ONBOOT=yes
PREFIX=24
#根据您的网络号进行配置,例如网络号是10.0.0.0,则该版本VMware的网关是10.0.0.2,有的版本是10.0.0.1(前三个数和网络号前三个数相同)
GATEWAY=10.0.0.2
#该DNS地址仅作为参考
DNS1=119.29.29.29
#配置您想分配给该虚拟机的IP地址,最后一位称之为主机位,范围是[3,254],0不分配给主机,用来标识网络号,1和2为宿主机和网关之一,具体与VMware版本相关
IPADDR=10.0.0.21
Esc,然后输入:wq 保存并退出
#重启虚拟机网络
systemctl restart network
此时虚拟机就可以上网啦~
下面开始安装 k8s 集群,后面的教程主要参考马士兵教育的相关课程,如果有想要报名学习的学生,或者想要转行的朋友,可以私信我,说不定可以争取点优惠哦~
三 集群环境配置
3.1 虚拟机准备
此处部署 3 台主节点,2 台工作节点,在前述安装的虚拟机基础上,需要完整克隆出 5 台虚拟机,分别命名为 master-1,master-2,master-3,worker-1,worker-2
且 master-1 和 master-2 需要配置 keepalived,当这两台主机均宕机时,集群不可用。
有一些操作是每一台虚拟机中都要做的,此处先克隆出一台虚拟机,命名为 master-1,先做一些通用的操作。(此处我直接将 basic 改名为 master-1 进行操作,虚拟机有别的用途的同学可以留着 basic,以后用的时候克隆出来用就好啦)
我选择在宿主机中使用 iTerm,ssh 远程登录到虚拟机中进行下述操作,您也可以使用终端进行 ssh 登录,或者直接在虚拟机窗口操作(首次登录到一台虚拟机,需要二次确认是否要进行连接,输入 yes 回车,再输入密码即可):
文章来源:https://www.toymoban.com/news/detail-434289.html
3.1.1 编辑 hosts 文件
#编辑hosts文件,填入主机名和IP地址对应关系
vi /etc/hosts
在该文件中追加下述行:文章来源地址https://www.toymoban.com/news/detail-434289.html
10.0.0.21 master-1
10.0.0.22 master-2
10.0.0.23 master-3
10.0.0.24 worker-1
10.0.0.25 worker-2
3.1.2 关闭并禁用防火墙
systemctl stop firewalld && systemctl
到了这里,关于m1使用VMware安装CentOS7并部署k8s高可用集群的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!