kubeadm 搭建集群 centos7

1、docker 安装并启动

yum install docker
设置加速器:/etc/docker/daemon.json 中加入以下内容:
[root@server2 ~]# cat /etc/docker/daemon.json

{
"registry-mirrors": ["https://registry.docker-cn.com","http://hub-mirror.c.163.com","https://docker.mirrors.ustc.edu.cn"]
}
systemctl start docker

2、安装 kubernetes

以下步骤在主控节点和工作节点均要执行:

配置yum源

cat < /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

设置selinux

setenforce 0

安装

yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet

启动前准备

(1)关闭防火墙
systemctl stop firewalld
(2)关闭selinux
setenforce 0
(3)关闭交互分区
临时关闭:swapoff -a
永久关闭,修改/etc/fstab 文件:最后一行添加#注释符,重启机器生效:

(4)手动设置iptables
vim /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-iptables = 1

生效

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

3、主控节点搭建:

init k8s 初始化集群设置,生成相关yaml配置文件,同时启动aipserver、scheduler、controller-manager、etcd等
kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.20.4 --control-plane-endpoint 192.168.81.103 --apiserver-bind-port=6443 --apiserver-advertise-address 192.168.81.103 --pod-network-cidr 10.244.0.0/16
各参数说明如下:
--image-repository #设置一个镜像仓库,默认为k8s.gcr.io
--kubernetes-version #指定安装k8s版本,默认为stable-1
--control-plane-endpoint #为控制平台指定一个稳定的IP地址或DNS名称,即配置一个可以长期使用切是高可用的VIP或者域名,k8s 多master高可用基于此参数实现
--apiserver-bind-port   #API Server绑定的端口,默认为6443
--apiserver-advertise-address #K8S API Server将要监听的监听的本机IP
--pod-network-cidr #设置pod ip地址范围
初始化成功后,会有如下提示:

至此,控制平面节点已搭建完毕
依次按照提示执行:

配置config文件

mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u)😒(id -g) $HOME/.kube/config

配置网络组件

wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
kubectl apply -f kube-flannel.yml

查看flannel容器是否运行

kubectl get pods -n kube-system

4、工作节点搭建:

nodes 节点加入adm集群:
(1)在master节点执行命令 生成token:
[root@server4 sh]# kubeadm token create --print-join-command
kubeadm join 192.168.81.103:6443 --token stsysb.47dg9k8xoabyg4qq --discovery-token-ca-cert-hash sha256:688921d62d737d2c059a916553dbb377b691cd010ad896be68b7af5370393cd4
--token后面的字符串就是用于kubeadm join IP:port --token XXXXX 用的
(2)在node节点执行:
kubeadm join 192.168.81.103:6443 --token stsysb.47dg9k8xoabyg4qq --discovery-token-ca-cert-hash sha256:688921d62d737d2c059a916553dbb377b691cd010ad896be68b7af5370393cd4
加入成功后会有如下提示信息:

(3)在master节点执行kubectl get nodes 验证:

posted @ 2021-03-09 13:35  丛丛丛丛  阅读(66)  评论(0)    收藏  举报