kubeadm部署k8s:v1.18.0集群

一、部署准备
服务器3台

服务器系统名称
192.168.50.230CentOS Linux release 7.9.2009 (Core)k8s-master
192.168.50.231CentOS Linux release 7.9.2009 (Core)k8s-node1
192.168.50.232CentOS Linux release 7.9.2009 (Core)k8s-node2

二、系统初始化
1、k8s-master服务器配置hosts文件

[root@k8s-master cyz]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.50.230 k8s-master
192.168.50.231 k8s-node1
192.168.50.232 k8s-node2

以下三台服务器都要配置
2、配置阿里云yum源

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

3、设置iptables

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

4、关闭swap

swapoff -a

注释掉/etc/fstab关于swap分区挂在行

[root@k8s-master cyz]# cat /etc/fstab 

#
# /etc/fstab
# Created by anaconda on Tue Aug 24 13:54:39 2021
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root /                       xfs     defaults        0 0
UUID=54eea75f-31ae-4b4f-b946-b9f9dfbaeb9c /boot                   xfs     defaults        0 0
#/dev/mapper/centos-swap swap                    swap    defaults        0 0

5、关闭防火墙

# 停止firewall
systemctl stop firewalld.service
# 禁止firewall开机启动
systemctl disable firewalld.service

6、关闭SELINUX

#暂时关闭
setenforce 0
#永久关闭,需重启
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

三、部署docker-ce-19.03.13-3.el7.x86_64(三台都要)

#安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2
#安装esp源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
#安装docker-ce
yum install -y docker-ce-19.03.13-3.el7.x86_64
#设置开启启动并启动docker
systemctl enable docker  && systemctl  stat docker
#设置docker阿里云仓库源
vim /etc/docker/daemon.json

{
  "registry-mirrors": ["https://zo120aja.mirror.aliyuncs.com"]
}
#重启docker
systemctl restart docker

四、安装kubeadm、kubectl、kubelet(三台都要)

yum install -y kubelet-1.18.0-0.x86_64 kubeadm-1.18.0-0.x86_64 kubectl-1.18.0-0.x86_64 -y
#设置kubelet开机自启动
systemctl enable kubelet.service

四、部署k8s集群
在k8s-master初始化集群

kubeadm init --apiserver-advertise-address=192.168.50.230 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.18.0 --service-cidr=10.1.0.0/16 --pod-network-cidr=10.244.0.0/16

在这里插入图片描述
在这里插入图片描述

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

在k8s-node1节点上执行

[root@k8s-node1 cyz]# kubeadm join 192.168.50.230:6443 --token yoqu6r.3nujqo43vu0pbcf5     --discovery-token-ca-cert-hash sha256:cc9657dc88d2512a9255e190e4f6ab35abf56bd7452348f04095bfc2777218a0 

在k8s-node2节点上执行

[root@k8s-node2 cyz]# kubeadm join 192.168.50.230:6443 --token yoqu6r.3nujqo43vu0pbcf5     --discovery-token-ca-cert-hash sha256:cc9657dc88d2512a9255e190e4f6ab35abf56bd7452348f04095bfc2777218a0 

五、安装网络插件:CNI

#下载calico的yaml文件
wget https://docs.projectcalico.org/v3.8/manifests/calico.yaml
#应用配置文件
kubectl apply -f calico.yaml
#在k8s-master上查看pod运行
[root@k8s-master cyz]# kubectl get pods -A
NAMESPACE     NAME                                      READY   STATUS    RESTARTS   AGE
default       nginx-f89759699-7jfj7                     1/1     Running   0          56m
kube-system   calico-kube-controllers-75d555c48-r8n8l   1/1     Running   0          60m
kube-system   calico-node-j52sm                         1/1     Running   0          60m
kube-system   calico-node-nmf7z                         1/1     Running   0          60m
kube-system   calico-node-qt9r7                         1/1     Running   0          60m
kube-system   coredns-7ff77c879f-hlvlg                  1/1     Running   0          77m
kube-system   coredns-7ff77c879f-x6w2d                  1/1     Running   0          77m
kube-system   etcd-k8s-master                           1/1     Running   0          77m
kube-system   kube-apiserver-k8s-master                 1/1     Running   0          77m
kube-system   kube-controller-manager-k8s-master        1/1     Running   0          77m
kube-system   kube-proxy-6hkp5                          1/1     Running   0          66m
kube-system   kube-proxy-p4sxn                          1/1     Running   0          66m
kube-system   kube-proxy-qq66p                          1/1     Running   0          77m
kube-system   kube-scheduler-k8s-master                 1/1     Running   0          77m
#所有node节点状态为Ready
NAME         STATUS   ROLES    AGE   VERSION
k8s-master   Ready    master   78m   v1.18.0
k8s-node1    Ready    <none>   68m   v1.18.0
k8s-node2    Ready    <none>   68m   v1.18.0
# 集群健康
[root@k8s-master cyz]# kubectl get cs
NAME                 STATUS    MESSAGE             ERROR
controller-manager   Healthy   ok                  
scheduler            Healthy   ok                  
etcd-0               Healthy   {"health":"true"}   
# 查看资源
[root@k8s-master cyz]# kubectl api-resources
NAME                              SHORTNAMES   APIGROUP                       NAMESPACED   KIND
bindings                                                                      true         Binding
componentstatuses                 cs                                          false        ComponentStatus
configmaps                        cm                                          true         ConfigMap
endpoints                         ep                                          true         Endpoints
events                            ev                                          true         Event
limitranges                       limits                                      true         LimitRange
namespaces                        ns                                          false        Namespace
nodes                             no                                          false        Node
persistentvolumeclaims            pvc                                         true         PersistentVolumeClaim
persistentvolumes                 pv                                          false        PersistentVolume
pods                              po                                          true         Pod
.......
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值