Kubernetes / 云原生

二进制部署一套高可用K8s集群-1.25+(四)

浅时光博客 · 4月11日 · 2022年 7.4w 次已读

文档已经开源,请到GitHub浏览查阅:仓库地址

五、集群节点高可用访问 kube-apiserver

获取到所需资源文件包

提取码:pwwv

1、部署环境说明

kubernetes master 节点运行如下组件:

kube-apiserver、kube-scheduler 和 kube-controller-manager 均以多实例模式运行:

  1. kube-schedulerkube-controller-manager 会自动选举产生一个 leader 实例,其它实例处于阻塞模式,当 leader 挂了后,重新选举产生新的 leader,从而保证服务可用性;
  2. kube-apiserver 是无状态的,可以通过 kube-nginx 进行代理访问从而保证服务可用性;

注意: 如果三台Master节点仅仅作为集群管理节点的话,那么则无需部署containerdkubeletkube-proxy组件;但是如果后期要部署mertics-serveristio组件服务时有可能会出现无法运行的情况,那么就需要在master节点部署containerdkubeletkube-proxy组件

1.1:下载程序包并解压


#将k8s-server压缩包上传至服务器/opt/k8s/work目录下,并进行解压
[root@k8s-master1 ~]# cd /opt/k8s/work
[root@k8s-master1 work]# tar -zxvf kubernetes-server-linux-amd64.tar.gz
[root@k8s-master1 work]# tar -zxvf kubernetes/kubernetes-src.tar.gz

1.2:分发二进制文件


  • 将解压后的二进制文件拷贝到所有的K8S-Master集群的节点服务器上
  • 将kuberlet,kube-proxy分发给所有worker节点,存储目录/opt/k8s/bin
[root@k8s-master1 ~]# cd /opt/k8s/work

#拷贝kubernetes下的所有二进制文件至Master节点
[root@k8s-master1 work]# for node_ip in ${MASTER_IPS[@]}
  do
    echo ">>> ${node_ip}"
    scp kubernetes/server/bin/{apiextensions-apiserver,kube-apiserver,kube-controller-manager,kube-proxy,kube-scheduler,kubeadm,kubectl,kubelet,mounter} root@${node_ip}:/opt/k8s/bin/
    ssh root@${node_ip} "chmod +x /opt/k8s/bin/*"
  done

#拷贝kuberlet,kube-proxy到所有worker节点
[root@k8s-master1 work]# for node_ip in ${WORK_IPS[@]}
  do
    echo ">>> ${node_ip}"
    scp kubernetes/server/bin/{kube-proxy,kubelet} root@${node_ip}:/opt/k8s/bin/
    ssh root@${node_ip} "chmod +x /opt/k8s/bin/*"
  done
温馨提示: 为了保障您的账号安全,请绑定有效邮箱并验证账户。完成此步骤后,请在本页留言并刷新页面即可查看内容和下载资源。邮箱绑定

本文作者:浅时光博客
原文链接:https://www.dqzboy.com/9730.html
版权声明:知识共享署名-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)协议进行许可,转载时请以>超链接形式标明文章原始出处和作者信息
免责声明:本站内容仅供个人学习与研究,严禁用于商业或非法目的。请在下载后24小时内删除相应内容。继续浏览或下载即表明您接受上述条件,任何后果由用户自行承担。

33 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!

  1. 遇见_730上海2024-4-17 · 10:16

    谢谢分享,学习学习,点赞

  2. Bsfs_無常广东·东莞2023-11-21 · 8:56

    谢谢分享,学习学习,点赞