kubernetes节点扩容
1、概述kuberneters作为伸缩性的集群,节点扩容是日常必备的功能,本文主要描述新增节点的完整过程。2、过程简述(1)、修改centos仓库地址,以加速安装过程(2)、安装必要工具和设置系统(3)、安装docker(4)、优化docker设置(5)、安装 kuberneters组件(6)、配置kuberneters环境(7)、将节点加入已有集群3、安装过程(1)、修改centos仓库地址,以
1、概述
kuberneters作为伸缩性的集群,节点扩容是日常必备的功能,本文主要描述新增节点的完整过程。
2、过程简述
(1)、修改centos仓库地址,以加速安装过程
(2)、安装必要工具和设置系统
(3)、安装docker
(4)、优化docker设置
(5)、安装 kuberneters组件
(6)、配置kuberneters环境
(7)、将节点加入已有集群
3、安装过程
(1)、修改centos仓库地址,以加速安装过程。
由于国外的centos仓库速度很慢,可以用阿里的镜像服务器,来加速应用的下载和安装。相关的去镜像可以到http://mirrors.aliyun.com/查询
# CentOS-Base.repo
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# kubernetes
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
# 下载校验文件
wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
wget https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
# 导入校验文件
rpm --import rpm-package-key.gpg
rpm --import yum-key.gpg
# docker 源
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast
(2)、安装必要工具和设置系统
主要是源管理器,上一步已经提到了。还有关闭防火墙、设置网络、互信登录
yum install -y yum-utils device-mapper-persistent-data lvm2
# 关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
# 设置网络
cat <<EOF>/etc/sysctl.d/k8s.conf
# 添加如下内容
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF
# 执行命令生效
modprobe br_netfilter
sysctl -p /etc/sysctl.d/k8s.conf
# 设置信任登录(在master上执行)
ssh-keygen -t rsa
ssh-copy-id -i .ssh/id_rsa.pub root@nodename
(3)、安装docker
可以查看源中的docker版本,集群中的docker版需要保持一致。
# 查看版本
yum list docker-ce.x86_64 --showduplicates | sort -r
# 安装
yum install -y docker-ce
systemctl start docker & systemctl enable docker
# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,您可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ee.repo
# 将[docker-ce-test]下方的enabled=0修改为enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages # Step2: 安装指定版本的Docker-CE: (VERSION例如上面的17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
(4)、优化docker设置
由于docker源在国外,下载速度非常慢,有时不能访问,所以需要设置国内镜像地址,另外也可以设置代理服务器来访问国外的源。
# 设置镜像服务器,同时设置cgroup driver,k8s要求systemd
cat <<EOF>/etc/docker/daemon.json
{
"registry-mirrors":["https://f1791z1h.mirror.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
# 设置代理
mkdir /etc/systemd/system/docker.service.d
cat <<EOF>/etc/systemd/system/docker.service.d/http-proxy.conf
[Service]
Environment="HTTP_PROXY=http://192.168.5.107:1081/" "HTTPS_PROXY=http://192.168.5.107:1081/" "NO_PROXY=localhost,127.0.0.1,f1791z1h.mirror.aliyuncs.com"
EOF
(5)、安装 kuberneters组件
# 关闭selinux
setenforce 0
# 关闭 swap 分区,另外要修改 /etc/fstab,避免启动时加载swap分区
swapoff -a
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet
(6)、配置kuberneters环境
为calico设置节点名称,这个是在集群安装了 consul时用到的
cat <<EOF>/var/lib/calico/nodename
jaine-vpc04
EOF
(7)、将节点加入已有集群
需要在主节点生成token,并获取加入集群的命令
# 创建token并打印join命令,这个命令生成的token是有有效期的
kubeadm token create --print-join-command
然后在node节点执行刚刚主节点生成的加入命令
kubeadm join 192.168.5.203:6443 --token 4yetf5.2ipcosjxkbua7drh \
--discovery-token-ca-cert-hash sha256:2c104ad46fd73fc1ce12fb07da846b263d752e0139ef308e2caffc0e5731fbb6
加入完成。
更多推荐
所有评论(0)