从零搭建与运营生产级的 Kubernetes 集群与 KubeSphere
本文将从零开始,在干净的机器上安装 Docker、Kubernetes (使用 kubeadm)、Calico、Helm、NFS StorageClass,通过手把手的教程演示如何搭建一个高可用生产级的 Kubernetes,并在 Kubernetes 集群之上安装开源的 KubeSphere 容器平台可视化运营集群环境。
一、准备环境
开始部署之前,请先确定当前满足如下条件,本次集群搭建,所有机器处于同一内网网段,并且可以互相通信。
⚠️⚠️⚠️:请详细阅读第一部分,后面的所有操作都是基于这个环境的,为了避免后面部署集群出现各种各样的问题,强烈建议你完全满足第一部分的环境要求
- 两台以上主机
- 每台主机的主机名、Mac 地址、UUID 不相同
- CentOS 7(本文用 7.6/7.7)
- 每台机器最好有 2G 内存或以上
- Control-plane/Master至少 2U 或以上
- 各个主机之间网络相通
- 禁用交换分区
- 禁用 SELINUX
- 关闭防火墙(我自己的选择,你也可以设置相关防火墙规则)
- Control-plane/Master和Worker节点分别开放如下端口
Master节点
协议 | 方向 | 端口范围 | 作用 | 使用者 |
---|---|---|---|---|
TCP | 入站 | 6443* | Kubernetes API 服务器 | 所有组件 |
TCP | 入站 | 2379-2380 | etcd server client API | kube-apiserver, etcd |
TCP | 入站 | 10250 | Kubelet API | kubelet 自身、控制平面组件 |
TCP | 入站 | 10251 | kube-scheduler | kube-scheduler 自身 |
TCP | 入站 | 10252 | kube-controller-manager | kube-controller-manager 自身 |
Worker节点
协议 | 方向 | 端口范围 | 作用 | 使用者 |
---|---|---|---|---|
TCP | 入站 | 10250 | Kubelet API | kubelet 自身、控制平面组件 |
TCP | 入站 | 30000-32767 | NodePort 服务** | 所有组件 |
其他相关操作如下:
友情提示