关于kubesphere多节点安装k8s
KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器平台,提供全栈的 IT 自动化运维的能力,简化企业的 DevOps 工作流。KubeSphere 提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。
kubesphere简介
KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器平台,提供全栈的 IT 自动化运维的能力,简化企业的 DevOps 工作流。KubeSphere 提供了运维友好的向导式操作界面,帮助企业快速构建一个强大和功能丰富的容器云平台。
kubesphere网址
面向云原生应用的容器混合云,支持 Kubernetes 多集群管理的 PaaS 容器云平台解决方案 | KubeSphere
安装步骤
①登录官网
②文档中心中选择你要安装的kubesphere版本
③选择多节点安装文档(找不到的可以在搜索栏搜索)
④根据文档要求准备主机
我这里只做安装演示用,所以我所有节点都用的最低配置(购买时,记得三个主机放在一个内网段,具体操作为先建一个vpc网络和它的子网段,在购买时选择这个vpc网络,即购买主机在这个vpc下)
⑤购买主机后操作
修改主机名字
# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
# 关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config # 永久
setenforce 0 # 临时
# 关闭swap
swapoff -a # 临时
sed -ri 's/.*swap.*/#&/' /etc/fstab # 永久
# 根据规划设置主机名
hostnamectl set-hostname <hostname>
bash
# 在master节点添加hosts
cat >> /etc/hosts << EOF
192.168.1.71 k8s-master
192.168.1.72 k8s-node1
192.168.1.73 k8s-node2
EOF
192.168.1.71 ;192.168.1.72 ;192.168.1.73 ;是你的主机内网地址
k8s-master;k8s-node1;k8s-node2;是我命名的主机名字
同步主机时间,所有节点操作(一般在一个内网时间都是一样的)(方法很多)
# 时间同步
yum install ntpdate -y
ntpdate time.windows.com
⑥安装依赖,所有节点操作
yum install -y socat conntrack ebtables ipset
⑦下载 KubeKey
如果是国内的服务器,执行一下命令(注意注释)
kubekey版本你可以自己指定
#先执行以下命令以确保您从正确的区域下载 KubeKey。
#三个节点都执行这个命令
export KKZONE=cn
#执行以下命令下载 KubeKey:
#主节点执行就可以了
curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.7 sh -
否则可以直接从github下载
curl -sfL https://get-kk.kubesphere.io | VERSION=v3.0.7 sh -
为 kk
添加可执行权限
chmod +x kk
# 查看支持的k8s版本
./kk version --show-supported-k8s
⑧创建集群配置文件,主节点操作
#version为你自己想安装的版本,如:--with-kubesphere v3.4.1
#注意两个版本要适应
./kk create config --with-kubernetes v1.23.10 --with-kubesphere v3.3.2
或者直接
./kk create config --with-kubesphere v3.3.2
将会默认安装kubernetes v1.23.10
以上命令会生成默认文件 config-sample.yaml
编辑修改默认文件 config-sample.yaml(此次测试安装未安装集成的配件功能,如果想安装,可以在这个文件里找到相应的配件名字,修改enabled为true,
也可在安装完成后在控制面板可视化修改)
spec:
hosts:
- {name: k8s-master, address: 192.168.0.2, internalAddress: 192.168.0.2, user: root, password: 123456}
- {name: k8s-node1, address: 192.168.0.3, internalAddress: 192.168.0.3, user: root, password: 123456}
- {name: k8s-node2, address: 192.168.0.4, internalAddress: 192.168.0.4, user: root, password: 123456}
roleGroups:
etcd:
- k8s-master
control-plane:
- master
worker:
- k8s-node1
- k8s-node2
controlPlaneEndpoint:
domain: lb.kubesphere.local
address: ""
port: 6443
如有配件需求,将false改为true,这里不建议修改,在安装完成后在控制面板可视化修改更好,因为我在这里踩了巨坑,KubeSphere V3.x.x版本,都有一个坑,就是安装插件时会遇到证书过期的问题,具体解决方法:KubeSphere V3.x.x版本解决证书过期问题,请在继续安装操作完成后,在去解决证书问题。
devops:
enabled: false
请参照上方示例在 hosts
下列出您的所有机器并添加详细信息。
name
:实例的主机名。
address
:任务机和其他实例通过 SSH 相互连接所使用的 IP 地址。根据您的环境,可以是公有 IP 地址或私有 IP 地址。例如,一些云平台为每个实例提供一个公有 IP 地址,用于通过 SSH 访问。在这种情况下,您可以在该字段填入这个公有 IP 地址。
internalAddress
:实例的私有 IP 地址。
在安装 KubeSphere 之前,您可以使用 hosts
下提供的信息(例如 IP 地址和密码)通过 SSH 的方式测试任务机和其他实例之间的网络连接。
在安装前,请确保端口 6443
没有被其他服务占用,否则在安装时会产生冲突(6443
为 API 服务器的默认端口)。
⑨执行安装集群,主节点操作
./kk create cluster -f config-sample.yaml
安装完成后你会看到
如果安装失败,看看是否它提示你一些依赖没有安装(见步骤⑥),如果安装非常慢,看看是否设置了正确的时区,见步骤⑦
安装成功后,复制网址,用提供的账号密码登录
如果文章对你有用,请点赞关注我吧
更多推荐
所有评论(0)