继:使用shell脚本自动部署单master节点多node k8s集群。

shell自动部署k8s集群:新增加的work node节点加入k8s集群

一、准备工作

这里演示添加 172.29.6.165 k8s-04 机器为例!

1.1、修改新增node计算机名。

[root@localhost kubeadm-single-master]# hostnamectl set-hostname k8s-04

1.2、修改hosts文件添加新node主机IP-计算机名解析。

[root@k8s-01 kubeadm-single-master]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.29.6.187 k8s-01
172.29.6.161 k8s-02
172.29.6.164 k8s-03
172.29.6.165 k8s-04

1.3、将hosts文件scp到所有master、work主机。
注:这一步通过脚本完成。

hosts=$(cat /etc/hosts | awk '{print $1}')
for h in  ${hosts[*]}doecho ">>> ${h} copy-hosts"scp /etc/hosts root@${h}:/etc/
done

1.4、修改environment.sh 文件,修改其中的 node_ips 和计算机名。

#!/usr/bin/bash# 集群master 服务器ip 数组 默认 etcd集群也是用集群master服务器
export MASTER_NODE_IPS=(172.29.6.187)#Master 服务器主机名 数组
export MASTER_NODE_NAMES=(k8s-01)# 集群各Worker机器 IP 数组。
export NODE_IPS=(172.29.6.165)# 集群各Worker IP 对应的主机名数组
export NODE_NAMES=(k8s-04)

1.5、运行脚本文件。

[root@k8s-01 kubeadm-single-master]# bash worknode-join-k8s.sh

1.6、查看kubeadm join字符串

[root@k8s-01 kubeadm-single-master]# cat /usr/local/src/kubeadm-deploy.log

1.7、新增节点手动加入k8s集群。

[root@k8s-04 src]# kubeadm join 172.29.6.187:6443 --token abcdef.0123456789abcdef \
>     --discovery-token-ca-cert-hash sha256:f6dea2fe18eb8b08347430e2a50ff401a5332332eb920f5ba8c3812a928fac0b
W0211 15:49:33.235035    4519 join.go:346] [preflight] WARNING: JoinControlPane.controlPlane settings will be ignored when control-plane flag is not set.
[preflight] Running pre-flight checks
[preflight] Reading configuration from the cluster...
[preflight] FYI: You can look at this config file with 'kubectl -n kube-system get cm kubeadm-config -oyaml'
[kubelet-start] Downloading configuration for the kubelet from the "kubelet-config-1.18" ConfigMap in the kube-system namespace
[kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml"
[kubelet-start] Writing kubelet environment file with flags to file "/var/lib/kubelet/kubeadm-flags.env"
[kubelet-start] Starting the kubelet
[kubelet-start] Waiting for the kubelet to perform the TLS Bootstrap...This node has joined the cluster:
* Certificate signing request was sent to apiserver and a response was received.
* The Kubelet was informed of the new secure connection details.Run 'kubectl get nodes' on the control-plane to see this node join the cluster.

1.8、master上查看node

[root@k8s-01 kubeadm-single-master]# kubectl get node
NAME     STATUS     ROLES    AGE     VERSION
k8s-01   Ready      master   4h35m   v1.18.20
k8s-02   Ready      <none>   4h29m   v1.18.20
k8s-03   Ready      <none>   4h29m   v1.18.20
k8s-04   NotReady   <none>   24s     v1.18.20

同样需要等calico组件和proxy组件准备妥当就可以了。

[root@k8s-01 kubeadm-single-master]# kubectl get node
NAME     STATUS   ROLES    AGE     VERSION
k8s-01   Ready    master   5h14m   v1.18.20
k8s-02   Ready    <none>   5h8m    v1.18.20
k8s-03   Ready    <none>   5h8m    v1.18.20
k8s-04   Ready    <none>   40m     v1.18.20

shell自动部署k8s集群:新增加的work node节点加入k8s集群相关推荐

  1. k8s入坑之报错(9)k8s node节点加入到集群时卡住 “[preflight] Running pre-flight checks”...

    参考文档k8s node节点加入到集群时卡住 "[preflight] Running pre-flight checks"报错: k8s node节点加入到集群时卡住 " ...

  2. k8s集群flannel问题之telnet node节点开放端口Connect timeout情况

    前段时间在腾讯云clb上面的端口健康检测突然出现一堆异常,去手动检测时现实一切正常.去咨询了腾讯云工程师,他们对于端口检测处理方式是设置sysctl.conf中的几个参数,参数如下 net.ipv4. ...

  3. K8S 学习笔记三 核心技术 Helm nfs prometheus grafana 高可用集群部署 容器部署流程

    K8S 学习笔记三 核心技术 2.13 Helm 2.13.1 Helm 引入 2.13.2 使用 Helm 可以解决哪些问题 2.13.3 Helm 概述 2.13.4 Helm 的 3 个重要概念 ...

  4. 【k8s系列】vmware中ubuntu22.04使用kubeadm安装k8s集群(1.24.4 or higher)(cka考试环境搭建)

    文章目录 部署环境准备 环境修改 修改hostname(各修改各的) 修改hosts文件(master 和所有node ) 禁用swap(master 和所有node) 修改内核参数(master 和 ...

  5. 啃K8s之快速入门,以及哭吧S(k8s)单节点部署

    啃K8s之快速入门,以及哭吧S(k8s)单节点部署 一:Kubernets概述 1.1:Kubernets是什么? 1.2:Kubernets特性 1.3:Kubernets群集架构与组件 1.3.1 ...

  6. 【故障公告】k8s 开船记:增加控制舱(control-plane)造成的翻船

    Python微信订餐小程序课程视频 https://edu.csdn.net/course/detail/36074 Python实战量化交易理财系统 https://edu.csdn.net/cou ...

  7. ipxe无盘服务器,关于iPXE在服务器自动部署的应用

    你是否好奇过这么一个问题,大型互联网企业的数据中心成千上万的服务器,操作系统是怎么部署的? 其实无论生活亦或工作,laptop.Windows是我们再熟悉不过的,当你按下开机键,不知道是否有注意到在启 ...

  8. rabbitmq基础5——集群节点类型、集群基础运维,集群管理命令,API接口工具

    文章目录 一.集群节点类型 1.1 内存节点 1.2 磁盘节点 二.集群基础运维 2.1 剔除单个节点 2.1.1 集群正常踢出正常节点 2.1.2 服务器异常宕机踢出节点 2.1.3 集群正常重置并 ...

  9. ES集群新增节点无法加入集群 timed out while waiting for initial discovery state - timeout: 30s

    ES : 7.5.0 ES集群新增节点无法加入集群 timed out while waiting for initial discovery state - timeout: 30s   ES集群需 ...

  10. 如何调整 k8s Node节点的最大可运行Pod数量

    环境介绍: Ubuntu 20.04.3 LTS kubeadm安装的k8s集群1.21.8 Kubernetes Node节点默认允许最多创建110个Pod,如何调整Node节点的最大可运行Pod数 ...

最新文章

  1. Tomcat在Linux上的安装与配置
  2. 怎样才能提高搜索引擎对网站的信任度?
  3. request 和response 中的setCharacterEncoding区别
  4. 什么是迁移学习 (Transfer Learning)?这个领域历史发展前景如何?【文末彩蛋】...
  5. Mysql添加远程访问权限
  6. 烟道机器人_力荐顺义区清洗烟道价格多少钱值得信赖
  7. 带grub的软盘镜像制作
  8. 基于matlab的电力系统输电仿真,基于MATLAB电力系统线路运行的仿真与分析
  9. 代数方程与差分方程模型(三):按年龄分组的人口模型
  10. canvas--初识canvs、绘制:线型、简单图形、渐变背景颜色、绘制动画、canvs形变、事件绑定
  11. 大数据发展的7个趋势 -- 阿里技术专家权威解读
  12. x^2+y^2=2ax
  13. 工业计算机英语作文,工业计算机,Industrial Computer,音标,读音,翻译,英文例句,英语词典...
  14. 显示器分辨率的英文(XGA、SXGA、UXGA、WSXGA等等来表示)
  15. 某开发机器人公司面试
  16. 国外免费电子书资源下载
  17. 使用 代码 读取 build.gradle 中的自定义配置信息
  18. Oracle 常用语句大全
  19. HDMI 1.4 协议
  20. 2022电大国家开放大学网上形考任务-公司财务非免费(非答案)

热门文章

  1. CAD教程:CAD怎么绘制云线?
  2. 当update语句提交后,数据库做了哪些操作?
  3. OA系统审批流程思路梳理
  4. 萨缪尔·莫尔斯:电报之父的传奇人生
  5. Softmax函数及其导数
  6. MyBatis—引入外部配置文件(properties)
  7. 发票系统KF网络报税服务器信息,增值税发票综合服务平台操作指南及注意事项...
  8. 图文详解win7实现局域网共享文件
  9. 安科瑞 【节能学院】电气火灾监控系统在太焦铁路博爱站房项目的应用
  10. Android以太网框架情景分析之NetworkManagementService和netd交互深入分析二