51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

k8s 安装 5节点(基于 kubesphere3.3.2)

k8s 安装测试环境搭建(基于 kubesphere3.3.2)5节点 Kubernetes v1.22.12

平台: 阿里云 购买的ECS

操作系统:CentOS 7.9 x86_64

KubeSphere:v3.3.2

Kubernetes:v1.23.10

集群节点规划:

KubeKey 安装部署 KubeSphere 和 Kubernetes

前期每个节点都要配置: (这些先不操作,可以看实操部分)

1- 配置时间同步 chrony 已经安装好了,不用单独配置

  1. DNS解析,已经做好了

    cat /etc/resolv.conf

3.修改主机名

hostnamectl set-hostname master1

4 关闭系统防火墙 (阿里云默认已经关闭了)

systemctl stop firewalld && systemctl disable firewalld

5- 禁用 SELinux (阿里云默认禁用了)

# 使用 sed 修改配置文件,实现彻底的禁用
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

# 使用命令,实现临时禁用,这一步其实不做也行,KubeKey 会自动配置
setenforce 0

6 - 安装系统依赖

在所有节点上,以 root 用户登陆系统,执行下面的命令为 Kubernetes 安装系统基本依赖包。

# 安装 Kubernetes 系统依赖包
yum install curl socat conntrack ebtables ipset ipvsadm -y

以上这些如果是3台的化,手动搞,没问题,但是作为 运维来说, 还是要考虑自动化:

仅供参考 除配置主机名之外

init.sh

echo "nameserver 114.114.114.114" > /etc/resolv.conf
timedatectl set-timezone Asia/Shanghai
yum install chrony -y
sed -i '/centos.pool.ntp.org/d' /etc/chrony.conf
sed -i "2a pool cn.pool.ntp.org iburst" /etc/chrony.conf
systemctl enable chronyd --now
chronyc sourcestats -v
systemctl stop firewalld && systemctl disable firewalld
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0
yum install curl socat conntrack ebtables ipset ipvsadm -y

实际操作:

先在 master1 上 配置hosts:

192.168.1.208	master1
192.168.1.209	master2
192.168.1.210	master3
192.168.1.211	worker1
192.168.1.212	worker2

然后再免秘钥配置

master1 上执行:

ssh-keygen -t ed25519

直接回车就可以。然后做 免秘钥

ssh-copy-id root@master2
ssh-copy-id root@master3
ssh-copy-id root@worker1
ssh-copy-id root@worker2

做完这一步后,我们就简单了,

然后可以去其他机器上 执行inin.sh 了。我这里只需要执行 yum 就可以。

OK,环境初始化完成

创建数据目录

因为 docker 默认数据目录是在 /var/lib/docker 下。

后期会非常大,所以我们提前规划好

每个节点都去执行的步骤

mkdir -p /mnt/data/docker

ln -s /mnt/data/docker /var/lib/docker

开始安装:

mkdir kubekey
cd kubekey/

# 选择中文区下载(访问github受限时使用)
export KKZONE=cn
curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.7 sh -

# 这里下不来,换

curl -sfL https://get-kk.kubesphere.io | sh - 

./kk create config -f kubesphere-v3.3.2.yaml --with-kubernetes v1.22.12 --with-kubesphere v3.3.2

用v1.22.12的版本吧 , 1.23.10安 装后不出来 登录界面,是有问题的。

配置文件内容: 连接

我们需要用到 nfs 存储, 最好是在集群外, 比如在250harbor上搭建, 那么

我们做单点的nfs, 任选一个节点,做nfs 服务端,其他节点是客户端。

yum install -y nfs-utils

echo "/mnt/data/nfs/k8sdata *(rw,sync,no_root_squash)" >> /etc/exports

systemctl start nfs

systemctl enable nfs

showmount -e

nfs 参考 连接

其他节点都要装客户端,不然出错
yum install -y nfs-utils

装好后,测试一下

showmount -e 192.168.1.201

[root@master1 /app/ks]#cat nfs-client.yaml 
nfs:
  server: "192.168.1.208"
  path: "/mnt/data/nfs/k8sdata"
storageClass:
  defaultClass: true

开始安装 kubesphere :

./kk create cluster -f kubesphere-v3.3.2.yaml

安装完后的组件信息

卸载:

./kk delete cluster -f xxx.yaml 

安装完成:

Console: http://192.168.1.208:30880
Account: admin
Password: P@88w0rd

bai.123A

http://192.168.1.208:30880/login

curl 192.168.1.208:30880

相关参考:

https://mp.weixin.qq.com/s/5qDnHxw0hPf0jcXZx2p38g

赞(6)
未经允许不得转载:工具盒子 » k8s 安装 5节点(基于 kubesphere3.3.2)