vm centos7搭建k8s集群
创始人
2024-05-29 15:31:09
0
  1. 关闭防火墙,三台

systemctl stop firewalld
  1. 关闭selinux,三台

sed -i 's/enforcing/disabled/' /etc/selinux/config
  1. 关闭swap,三台

swapoff -a
  1. 设置主机名,三台

hostnamectl set-hostname 主机名,三个主机名分别设置成k8s-master,k8s-node1,k8s-node2

  1. 在master添加hosts,三台

cat /etc/hosts
192.168.3.150 k8s-master
192.168.3.151 k8s-node01
192.168.3.153 k8s-node02
  1. 将桥接的IPv4流量传递到iptables的链,三台

cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
  1. 执行以下命令让设置生效,三台

sysctl --system 
  1. 安装Docker 19.03所需的依赖项,三台

sudo yum install -y yum-utils device-mapper-persistent-data lvm2
  1. 配置Docker CE存储库,三台

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
  1. 安装Docker 19.03,三台

sudo yum install docker-ce-19.03.15 docker-ce-cli-19.03.15 containerd.io
  1. 启动并设置Docker服务开机自启动,三台

sudo systemctl start docker
sudo systemctl enable docker
  1. 查看docker服务是否正常启动成功,三台

systemctl status docker
  1. 添加阿里云YUM软件源,三台

cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=0
EOF

  1. 安装kubeadm、kubelet和kubectl 由于版本更新频繁 此处指定版本安装,三台

yum install -y kubeadm-1.19.0 kubelet-1.19.0 kubectl-1.19.0

  1. 成功后启动k8s服务,三台

systemctl enable kubelet

  1. 在master节点上部署kubetnets 。master上面执行

kubeadm init --kubernetes-version=1.19.0 --apiserver-advertise-address=192.168.3.150 --image-repository registry.aliyuncs.com/google_containers --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16 

  1. 创建文件夹将admin.conf文件 copy到对应的位置。master上面执行

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
  1. 把子节点加入集群中 ,两台子节点

把init成功内容复制到另外两个节点的控制台并且回车

  1. 查看节点

kubectl get nodes
  1. 主节点重启以后无法启动 -255

vi /etc/fstab //并找到带有“swap”关键字的行。
//在该行前面添加一个#字符,将其注释掉。这将防止系统在启动时挂载swap分区。
  1. 由于博主菜,改配置文件导致主节点挂了无法启动,卸载k8s和docker

停止Kubernetes组件的所有服务

sudo systemctl stop kubelet
sudo systemctl stop kube-proxy
sudo systemctl stop kube-scheduler
sudo systemctl stop kube-controller-manager
sudo systemctl stop kube-apiserver

卸载Kubernetes组件

sudo yum remove -y kubelet kubeadm kubectl kubernetes-cni

停止Docker服务

sudo systemctl stop docker

卸载Docker

sudo yum remove -y docker-ce docker-ce-cli containerd.io

删除Kubernetes和Docker的配置和数据

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/kubelet/*
sudo rm -rf /etc/kubernetes
sudo rm -rf /etc/docker
sudo rm -rf /var/lib/etcd
  1. 子节点退出master

kubeadm reset
  1. 重新加入master

kubeadm join 192.168.3.150:6443 --token dr7uwf.l1rw8n8kefnyhxmq \--discovery-token-ca-cert-hash sha256:7fb4c3002a178d2ef96ecd9a186261758f168d42e3d04c3110672e442f3f567d 

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...