写点什么

kubernetes 增加 Node 详细步骤

发布于: 22 小时前
kubernetes增加Node详细步骤

背景

当集群资源紧张无法满足目前使用需求时,常用两种扩容方式

1)纵向扩容

2)水平扩容


纵向扩容常规套路是找运维资源下,我节点资源不够了加资源怎么走流程?还是直接帮我加上?

运维翻了一下白眼,说:"去企业微信里走下申请资源流程", 开发看了一下,差点一个上钩出去,哈哈


回到工位打开企业微信走个申请资源流程,有两种方式可以选择

方式一 则写明需求,每个 Node 节点由 16Core 32G 升级 到 32Core 64G 磁盘 100G

方式二 增加一个或两个 Node 节点,配置 32C 64G


常规简单作法 加节点方便一点,原有集群不用动,再申请一两个 Node(篮子)分一部分鸡蛋进去就行了

各种 leader 审批,机器到位了,那开始加和集群吧,开发环境开发自己维护的,自己搞吧,把申请的节点加进去。


集群安装时,kubeadm init 之后控制台打印出来的这一段吗


集群安完了 早忘记了,那怎么整?

别着急 kubeadm join,先把机器 K8S 基础组件弄好

新机器毛都没有,从头来吧


1)#修改 hostname(三台机器分别执行)

hostnamectl set-hostname 10-35-20-61

如果是 ssh 登录进去的 退出再进来,hostname 就变了


2) vim /etc/hosts

10.35.20.61 10-35-20-61


3)yum 源添加

docker 和 kubernetes yum 源,这个在集群安装时 应该都添加进来了,可以直接从 master 节点将这两个源 scp 过来,这里不赘述了。


4)设置 yum 源

yum install -y yum-utils device-mapper-persistent-data lvm2


5)docker 安装

docker安装 https://xie.infoq.cn/article/fea3c9e45b220ad6526c93eec

6)防火墙和 selinux 检查

systemctl stop firewalld

systemctl disable firewalld

查看当前 selinux 策略配置

getenforce

如果 Selinux 开启,通过如下命令进行关闭

setenforce 0


7)关闭 swap

swapoff -a (关闭后再用 free -h 查看时,swap 几个属性全为 0 了)


8)配置转发参数

创建/etc/sysctl.d/k8s.conf 文件,添加如下内容:

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

net.ipv4.ip_forward = 1


执行命令使更改生效:

modprobe br_netfilter

sysctl -p /etc/sysctl.d/k8s.conf


9)安装 kubelet、kubeadm、kubectl

yum install -y kubelet-1.20.4  kubeadm-1.20.4  kubectl-1.20.4

设置开机启动 kubelet

systemctl enable kubelet


10)如果你的集群 pvc 用了 nfs,则要安装 nfs client

yum -y install nfs-utils

systemctl start nfs && systemctl enable nfs


准备工作做完了

开始拼接增加节点参数吧


集群 ip 不变,端口默认 6443 如果不特意改的话,token 获取

1、获取 token 列表

kubeadm token list

token 如果过期了,这个列表是空的,如果列表是空的,则需要进行第二点,创建生成新的 token

2、创建生成新 token

kubeadm token create

3、获取 ca 公钥 hash 值

openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^ .* //'

4、增加 kubernetes 新 Node

kubeadm join 10.31.50.109:6443 --token 新生成的 token --discovery-token-ca-cert-hash sha256:这里是哈希值(第 3 步结果值)


好了,基本步骤差不多这样了,有瑕疵的地方自己稍微改改。bye

发布于: 22 小时前阅读数: 20
用户头像

还未添加个人签名 2017.10.11 加入

还未添加个人简介

评论

发布
暂无评论
kubernetes增加Node详细步骤