前言
上一篇我们安装了vmware并安装了操作系统,本章我们将规划并完成K8s集群服务器的安装和配置。
K8s集群规划
部署架构图

服务器规划
集群节点需要设置固定IP,并且虚拟机和主机之间网络连通需要保持网段一致。在主机上通过ifconfig或者其他方式查看主机网段,然后对下面ip进行调整。后续在虚拟机网络配置会进行ip配置。
角色 | IP | 资源配置 | 作用 |
---|---|---|---|
K8s-master | 192.168.4.100 | CPU:2核 内存:2G 硬盘:20G | 作为K8s的maser节点 |
K8s-node1 | 192.168.4.101 | CPU:2核 内存:2G 硬盘:20G | K8s的node1节点 |
K8s-node2 | 192.168.4.102 | CPU:2核 内存:2G 硬盘:20G | K8s的node2节点 |
软件规划
软件名 | 版本 | 作用 |
---|---|---|
操作系统 | CentOS 7.9_x86_64 minimal | 虚拟机安装的操作系统版本 |
Docker | 20-CE | 容器运行时环境,我们演示使用Docker(满足CRI标准接口的容器运行时均可) |
Kubernetes | 1.23 | K8s版本,这里演示使用1.23,目前最新1.25,从官网可见 |
虚拟机配置
克隆三台虚拟机
我们服务器规划的是3台服务器,一台作为K8s的master节点,剩余两台作为集群的node节点,前面我们已经准备好了一台虚拟机,现在要继续克隆出来两台。
首先找到【虚拟机资源库】打开主管理页面。


在第一台虚拟机上鼠标右键,弹出菜单后选择完整克隆虚拟机。
克隆虚拟机要处于关闭状态,否则无法克隆。

按照上述操作克隆出第二台虚拟机。

鼠标右键点击虚拟机,分别修改虚拟机名称为 k8s-master/k8s-node1/k8s-node2。

虚拟机资源配置
上一篇的时候已经配置了虚拟机资源为 cpu 2核、内存2G、硬盘20G,如果之前没有设置按照如下步骤逐步进行配置。
打开虚拟机的设置页面。

在下图的红框部分设置 CPU/内存/硬盘,配置未2C/2G/20G。

修改host名称
启动三台虚拟机,并分别按照节点规划修改主机host名称为 master/node1/node2。
方便起见可以将三台虚拟机置于前台,并通过菜单【合并所有窗口】合并窗口,方便后续切换操作。

合并后的窗口如下。

分别输入我们设置的用户名和密码,逐台将三台虚拟机主机名修改为master/node1/node2。
不能直接用hostname命令修改,否则reboot系统后主机名会恢复。
# 在master节点执行
hostnamectl set-hostname k8s-master && exec bash
# 在node1节点执行
hostnamectl set-hostname k8s-node1 && exec bash
# 在node2节点执行
hostnamectl set-hostname k8s-node2 && exec bash

虚拟机网络配置
对虚拟机进行网络设置,将虚拟机和主机之间网络连接方式改为桥接模式。

查看本机IP地址,确定网段,按照如下步骤对虚拟机进行静态IP配置,下面以Master节点为例。
# 修改网络配置文件
vi /etc/sysconfig/network-scripts/ifcfg-ens33
# 修改BOOTPROTO
BOOTPROTO=static
# 修改最后一行ONBOOT
ONBOOT=yes
# 添加配置:
IPADDR=192.168.4.100
GATEWAY=192.168.4.1
NETMASK=255.255.255.0
DNS1=8.8.8.8
#IPADDR为设置的ip,网段要和自己主机网段一致,GATEWAY为网关地址,也要和自己主机网段一致,NETMASK和DNS1保持固定即可
通过reboot命令重启虚拟机,使配置生效。测试虚拟机网络和主机网络是否连通,验证虚拟机能否上网。
K8s集群安装插件或者下载镜像需要联通网络。
-
在主机和虚拟机上进行ip互ping,确认网络是否互通;
-
在虚拟机上通过
curl https://www.baidu.com
确认是否可以上网。
重复上述步骤,分别完成node1和node2 的网络配置。
ssh连接配置
因为虚拟机内直接进行命令行操作比较繁琐,我们上篇安装了tabby或者其他的ssh远程工具,我们在主机通过ssh工具访问虚拟机(集群节点)会更方便,下面配置以tabby为例,演示如何配置ssh工具。
打开tabby工具,并选择 配置和连接。

拖动到底部,管理配置。

点击新加配置。

选择ssh连接。

配置ssh信息,并保存。

使用ssh工具连接,验证是否可以访问。

接受并记住密码。

出现如下界面访问成功。

以相同的方式设置node1/node2的ssh连接。
总结
至此,我们已经按照服务器规划完成了集群节点(虚拟机)的基本配置,包括:资源配置、网络配置、hostname配置,另外为了方便我们这里使用了tabby ssh工具远程连接工具访问服务,方便后续的K8s集群配置安装。
评论区