k8s集群安装(kubeadm方式)
一、准备三台虚拟机,系统CentOS7.9;
192.168.1.221 master1
192.168.1.189 node1
192.168.1.60 node2
二、.对三台虚拟机初始化
1.关闭防火墙,关闭开机自启
systemctl stop firewalld #临时
systemctl disable firewalld #永久
2.关闭selinux
sed -i 's/enforcing/disabled/' /etc/selinux/config #永久
setenforce 0 #临时
3.关闭swap
swapoff -a #临时
sed -ri 's/.*swap.*/#&/' /etc/fstab #永久
4.根据规划设置主机名,
hostnamectl set-hostname <hostname>
5.在master添加hosts
cat >> /etc/hosts << EOF
192.168.1.221 master1
192.168.1.189 node1
192.168.1.60 node2
EOF
6.将桥接的IPV4流量传递到iptables的链
cat > /etc/sysctl.d/k8s.conf << EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF sysctl --system #重新加载配置
#加载网桥过滤模块
modprobe br_netfilter
#查看是否加载成功
lsmod | grep br_netfilter
7.时间同步
yum install ntpdate -y
ntpdate time.aliyun.com
8.安装ipset和ipvsadm
yum install ipset ipvsadm -y cat > /etc/sysconfig/modules/ipvs.modules << EOF
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF chmod +x /etc/sysconfig/modules/ipvs.modules
/bin/bash /etc/sysconfig/modules/ipvs.modules
lsmod | grep -e ip_vs -e nf_conntrack_ipv4
三、所有节点安装Docker/kubeadm/kubelet
1.安装Docker
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo #切换镜像源
yum list docker-ce --showduplicates #查看docker版本列表
yum install docker-ce-20.10.8-3.el7 -y #安装指定版本
systemctl enable docker && systemctl start docker #启动并开机自启
docker --version #查看docker版本
2.配置阿里云容器镜像加速
mkdir /etc/docker
cat > /etc/docker/daemon.json << EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": ["https://jukg1w30.mirror.aliyuncs.com"]
}
EOF systemctl restart docker
3.添加阿里云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
4.安装kubeadm,kubelet和kubectl
yum install -y --nogpgcheck kubelet-1.22.5 kubeadm-1.22.5 kubectl-1.22.5
#编辑/etc/sysconfig/kubelet
KUBELET_CGROUP_ARGS="--cgroup-driver=systemd"
KUBE_PROXY_MODE="ipvs"
#启动
systemctl enable kubelet
systemctl start kubelet
四、部署Kubernetes Master
1. 在master节点执行
kubeadm init --apiserver-advertise-address=192.168.1.221 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.22.5 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl get nodes
2.加入Kubernetes Node( 在node节点执行)
kubeadm join 192.168.1.221:6443 --token 2cyong.smy0f3dsnzeq7jly --discovery-token-ca-cert-hash sha256:9333a1bf2eaa80e31e61f49e8996aa787e14e20cf851ba6544322d8972b9fec7
ps: token默认有效期24小时,过期不可用,需要在master重新创建token
kubeadm token create --print-join-command
五、部署CNI网络插件(Master节点执行)
wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml kubectl apply -f kube-flannel.yml
六、测试kubernetes集群
kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort
kubectl get pod,svc #访问地址: http://NodeIP:Port
k8s集群安装(kubeadm方式)的更多相关文章
- K8s集群安装--最新版 Kubernetes 1.14.1
K8s集群安装--最新版 Kubernetes 1.14.1 前言 网上有很多关于k8s安装的文章,但是我参照一些文章安装时碰到了不少坑.今天终于安装好了,故将一些关键点写下来与大家共享. 我安装是基 ...
- [转帖]K8s集群安装--最新版 Kubernetes 1.14.1
K8s集群安装--最新版 Kubernetes 1.14.1 http://www.cnblogs.com/jieky/p/10679998.html 原作者写的比较简单 大略流程和跳转的多一些 改天 ...
- K8S集群安装部署
K8S集群安装部署 参考地址:https://www.cnblogs.com/xkops/p/6169034.html 1. 确保系统已经安装epel-release源 # yum -y inst ...
- 企业运维实践-还不会部署高可用的kubernetes集群?使用kubeadm方式安装高可用k8s集群v1.23.7
关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 文章目录: 0x00 前言简述 ...
- 从centos7镜像到搭建kubernetes集群(kubeadm方式安装)
在网上看了不少关于Kubernetes的视频,虽然现在还未用上,但是也是时候总结记录一下,父亲常教我的一句话:学到手的东西总有一天会有用!我也相信在将来的某一天会用到现在所学的技术.废话不多扯了... ...
- 【二】Kubernetes 集群部署-kubeadm方式(亲测)
一.概述 本次部署 Kubernetes 集群是通过 kubeadm 工具来进行部署, kubeadm 是 Kubernetes 官⽅提供的⽤于快速部署 Kubernetes 集群的⼯具,利⽤其来部署 ...
- K8s集群安装和检查(经验分享)
一.组件方式检查 1. Master节点: root>> kubectl get cs 2. Node 节点: 无 二.服务方式检查 1. Master 节点: root>> ...
- Kubernetes(k8s)集群安装
一:简介 二:基础环境安装 1.系统环境 os Role ip Memory Centos 7 master01 192.168.25.30 4G Centos 7 node01 192.168.25 ...
- install kubernetes cluster k8s集群安装
一,安装docker-ce 17.031,下载rpm包 Wget -P /tmp https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/ ...
- K8s 集群安装(一)
01,集群环境 三个节点 master node1 node2 IP 192.168.0.81 192.168.0.82 192.168.0.83 环境 centos 7 centos 7 cen ...
随机推荐
- ASP.NET Core 选项
目录 1,选项接口 2,注入配置与IOptions 3,IOptionsSnapshot 首先要了解 ASP.NET Core 中的配置,请点击这里了解:https://www.cnblogs.com ...
- 利用微软官方API实现Office文档的在线预览功能
随着互联网时代的飞速发展,越来越多的工作开始依赖于云端服务,我们的办公方式也逐渐发生了翻天覆地的变化.在这种背景下,急需一种无需本地安装Office软件,就能快速查看和共享Word.PowerPoin ...
- C++ STL 容器-Deque
C++ STL 容器-Deque std::deque(双端队列)是C++标准模板库(STL)中的一个容器,它支持在序列的两端快速插入和删除元素.与std::vector和std::list等其他序列 ...
- 【项目实战】SpringBoot+vue+iview打造一个极简个人博客系统
基于SpringBoot+vue+iview个人极简博客 项目介绍 个人极简博客 [个人极简博客]是一个适用于初学者学习的博客系统,其中包含文章分类.写文章.标签管理.用户管理等基础功能,代码简洁注释 ...
- PlatformIO+esp32+添加自己的库(.c.h文件)
什么都放main.c的话,很有可能堆积成屎山,所以我想给分开写,每个功能有自己的.c..h文件. 在lib下新建文件夹,例如led,再在里面分别建led.c.led.h; 写好内容后再main ...
- C++ //常用算法 adjacent_find //查找相邻的重复元素
1 //常用算法 adjacent_find 2 //查找相邻的重复元素 3 #include<iostream> 4 #include<string> 5 #include& ...
- git的 .gitignore 配置概述
git的 .gitignore 配置概述 学习背景:自己在使用git时发现有时会上传很多无用的配置文件,或者在项目中已经包含一个本地的git仓库,导致上一级项目上传总是报错,所以学习采用gitigno ...
- 安装Typora+PicGo七牛云图床问题解决
遇到两个问题 第一个安装PicGo软件打不开只在后台运行,卸载.重启都试过没用,按照默认安装路径到c盘才能打开软件. 第二个问题"设定存储区域"输入z0不行,需要输入cn-east ...
- 泰凌微2.4G无线私有协议芯片开发总结
案例 近些年,团队一直围绕着无线这块来做产品方案.一个无意的举动,接触到了泰凌微的2.4G私有协议芯片,发现这颗芯片在好几个场景中使用非常合适.就把这个芯片推荐给了客户,经过几个案子的历练.积 ...
- day04-Java基础语法
Java基础语法 1.注释 注释不会被执行,是用来给写代码的人看的. 1.1单行注释 单行注释只能注释一行文字 // 注释 1.2多行注释 多行注释可以注释多行文字 /* 注释 注释 注释 */ 1. ...