自建 Kubernetes 集群
2023-06-13 09:16:49 时间
基础安装(所有节点)
系统配置
# 开启 ipv4 转发功能
echo "1" > /proc/sys/net/ipv4/ip_forward
安装 containerd
# 安装 containerd
apt install -y containerd
# 安装 crictl,参考 https://github.com/kubernetes-sigs/cri-tools
VERSION="v1.26.0"
wget https://github.com/kubernetes-sigs/cri-tools/releases/download/$VERSION/crictl-$VERSION-linux-amd64.tar.gz
sudo tar zxvf crictl-$VERSION-linux-amd64.tar.gz -C /usr/local/bin
rm -f crictl-$VERSION-linux-amd64.tar.gz
# 设置 endpoint
crictl config runtime-endpoint unix:///run/containerd/containerd.sock
crictl config image-endpoint unix:///run/containerd/containerd.sock
# 检查 caontainerd 状态
systemctl status containerd
安装 kubelet kubeadm kubectl
# 添加 kubernetes 源证书
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
# 添加源
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
# 更新源
apt update
# 检索版本
apt-cache madison kubectl
# 安装对应版本
apt install -y kubelet=1.24.4-00 kubeadm=1.24.4-00 kubectl=1.24.4-00
# 插件版本
kubeadm version
kubectl version
kubelet --version
# 如果版本不对,可以卸载后再安装
apt remove kubeadm kubectl kubelet
启动 kubelet
systemctl enable kubelet.service
systemctl start kubelet.service
启动 master 节点
启动 kubelet
使用 kubeadm 初始化
# 9.133.33.133 为 master 节点 ip,需要保证工作节点可以通过此 ip 访问当 master 节点
# 如果是部署标准化环境,k8s 版本则需要根据标准化版本需求做适当更改
kubeadm init --kubernetes-version=1.24.4 \
--apiserver-advertise-address=9.133.33.133 \
--image-repository registry.aliyuncs.com/google_containers \
--service-cidr=10.10.0.0/16 --pod-network-cidr=10.122.0.0/16
遇到的问题
- 如果报错
container runtime is not running
, 则需要执行下面的操作,再执行 kubeadm 初始化
rm /etc/containerd/config.toml
systemctl restart containerd
初始化完成后会有两部分信息记录
- 把 kubeconfig 拷贝到当前环境
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
- 其他工作节点加入集群的命令行
kubeadm join 9.133.33.133:6443 --token xxxx.xxxxxx \
--discovery-token-ca-cert-hash sha256:xxxxxxxx
如果忘记,也可以使用个下面指令获取加入集群命令行
kubeadm token create --print-join-command
安装 woker 节点
加入集群
(首先完成基础安装)
kubeadm join 9.133.33.133:6443 --token xxxx.xxxxxx \
--discovery-token-ca-cert-hash sha256:xxxxxxxx
相关文章
- 升级二进制kubernetes集群
- 快速上手kubernetes——minikube最小实现
- Airbnb的动态kubernetes集群扩缩容
- Kubernetes 概念介绍
- 搭建Kubernetes集群基于calico网络插件
- Kubernetes 二进制部署(二)集群部署(多 Master 节点通过 Nginx 负载均衡)
- 基于Kubernetes v1.24.0的集群搭建(二)
- 一键安装高可用Kubernetes集群的工具,支持本地环境和云环境
- 使用 Kubernetes 和 Istio Service Mesh 构建混合云
- 图解 Kubernetes Pod 如何获取 IP 地址
- kubernetes部署mongodb集群
- 基于kubernetes安装rabbitmq集群
- kubernetes部署nacos集群
- MySQL 集群迁移到 Kubernetes操作步骤
- 360开源企业级 Kubernetes 集群管理平台 Wayne
- 使用 Graylog 和 Prometheus 监视 Kubernetes 集群
- 8分钟了解Kubernetes