k8s集群安装部署实战详细手册(代码片段)

Xd聊架构 Xd聊架构     2022-12-14     574

关键词:

文章目录


一、k8s集群搭建

1.安装要求

  • 3台以上机器,操作系统 CentOS7.7以上64位系统
  • 具备docker环境(docker搭建参考:docker安装部署实战详细手册
  • 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多
  • 集群中所有机器之间网络互通
  • 可以访问外网,需要拉取镜像
iphostname
192.168.19.100master
192.168.19.101node1
192.168.19.102node2

2.关闭防火墙、selinux、swap分区

##关闭防火墙
systemctl stop firewalld
systemctl disable firewalld

##关闭swap分区
swapoff -a  
sed -ri 's/.*swap.*/#&/' /etc/fstab 

## 把SELinux 设置为 permissive 模式(相当于禁用)
sudo setenforce 0 
sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config 

3.配置hostname、hosts、 iptables

##各自修改主机名
hostnamectl set-hostname master
hostnamectl set-hostname node1
hostnamectl set-hostname node2

##添加主机名与IP对应关系
echo '''
192.168.19.100 master
192.168.19.101 node1
192.168.19.102 node2
''' >> /etc/hosts

## 允许 iptables 检查桥接流量 
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

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

4.配置k8s阿里源

#配置k8s的yum源地址
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
   http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

#安装 kubelet,kubeadm,kubectl
sudo yum install -y kubelet-1.20.9 kubeadm-1.20.9 kubectl-1.20.9

#启动kubelet
sudo systemctl enable --now kubelet

5.部署k8s的master和node节点

初始化master主节点
两个网段不要重,后面是/16,不要与当前机器网段一样

kubeadm init \\
--apiserver-advertise-address=192.168.19.100 \\
--image-repository registry.aliyuncs.com/google_containers \\
--kubernetes-version v1.20.9 \\
--service-cidr=10.96.0.0/16 \\
--pod-network-cidr=192.168.0.0/16 

这里执行完会生成一串命令用于node节点的加入,记录下来,接着执行以下命令

mkdir -p $HOME/.kube

cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

chown $(id -u):$(id -g) $HOME/.kube/config

部署node节点
复制上面生成的一串命令,我这里只是示例,命令根据你实际生成的复制去node节点执行

kubeadm join 192.168.19.100:6443 --token  ew01w0.s7951e0gggx5i6s7 --discovery-token-ca-cert-hash sha256:676f6de73444fdddba8510e0f61bba492cb190db86b8e5892d7a1e3c33411e75

6.安装网络插件(CNI)

下面两种插件二选一,master上执行,如果是云服务器建议按照flannel,calico可能会和云网络环境有冲突

安装flannel插件(轻量级用于快速搭建使用,初学推荐)
下载yaml文件(如下载出现问题,可以拷贝下面网址内容,本地创建kube-flannel.yml)

wget https://github.com/xuwei777/xw_yaml/blob/main/kube-flannel.yml

修改net-conf.json下面的网段为上面init pod-network-cidr的网段地址(必须正确否则会导致集群网络问题)

sed -i 's/10.244.0.0/192.168.0.0/' kube-flannel.yml

修改完安装插件,执行

kubectl apply -f kube-flannel.yml
kubectl get pods -n kube-system

安装calico插件(用于复杂网络环境)
下载yaml文件(如下载出现问题,可以拷贝下面网址内容,本地创建calico-3.9.2.yaml)

wget https://github.com/xuwei777/xw_yaml/blob/main/calico-3.9.2.yaml

修改配置文件的网段为上面init pod-network-cidr的网段地址(必须正确否则会导致集群网络问题)

sed -i 's/192.168.0.0/192.168.0.0/g' calico-3.9.2.yaml

修改完安装插件,执行

kubectl apply -f calico.yaml
kubectl get pod --all-namespaces -o wide

结尾

  • 感谢大家的耐心阅读,如有建议请私信或评论留言。
  • 如有收获,劳烦支持,关注、点赞、评论、收藏均可,博主会经常更新,与大家共同进步

minio分布式集群安装部署实战详细手册(代码片段)

文章目录前言一、准备工作二、集群搭建(每台服务器操作都一样)1.创建目录2.编写启动脚本3.赋权、启动4.浏览器访问5.Nginx负载均衡配置三.注意事项结尾前言Minio是GlusterFS创始人之一AnandBabuPeriasamy发布新的开源项目。... 查看详情

minio分布式集群安装部署实战详细手册(代码片段)

文章目录前言一、准备工作二、集群搭建(每台服务器操作都一样)1.创建目录2.编写启动脚本3.赋权、启动4.浏览器访问三.注意事项结尾前言Minio是GlusterFS创始人之一AnandBabuPeriasamy发布新的开源项目。基于ApacheLicensev2.0开... 查看详情

minio分布式集群安装部署实战详细手册(代码片段)

文章目录前言一、准备工作二、集群搭建(每台服务器操作都一样)1.创建目录2.编写启动脚本3.赋权、启动4.浏览器访问三.注意事项结尾前言Minio是GlusterFS创始人之一AnandBabuPeriasamy发布新的开源项目。基于ApacheLicensev2.0开... 查看详情

k8sdashboard安装部署实战详细手册(代码片段)

文章目录一、k8sdashboard搭建1.选择版本2.下载yaml3.执行yaml4.访问dashboard5.token登录6.配置权限结尾一、k8sdashboard搭建1.选择版本dashboard和k8s存在版本对应关系,具体可以去github查找https://github.com/kubernetes/dashboard/releases由于我的k8s... 查看详情

k8sdashboard安装部署实战详细手册(代码片段)

文章目录一、k8sdashboard搭建1.选择版本2.下载yaml3.执行yaml4.访问dashboard5.token登录6.配置权限结尾一、k8sdashboard搭建1.选择版本dashboard和k8s存在版本对应关系,具体可以去github查找https://github.com/kubernetes/dashboard/releases由于我的k8s... 查看详情

kubekey安装k8s集群详细手册(代码片段)

文章目录前言一、k8s集群搭建1.安装要求2.安装k8s环境依赖3.下载KubeKey4.编辑模板5.执行模板文件结尾前言KubeKey是go语言开发的一款云原生容器工具,使用KubeKe可以轻松、高效、灵活地单独或整体安装Kubernetes和KubeSphere。本节我... 查看详情

docker安装部署实战详细手册(代码片段)

...绍1.什么是docker2.为什么使用docker二、docker架构三、docker安装1.安装2.卸载结尾一、docker介绍1.什么是dockerDocker是一个开源的容器引擎,它有助于更快地交付应用。Docker可将应用程序和基础设施层隔离,并且能将基础设施当... 查看详情

云原生之kubernetes实战在k8s集群下部署wordpress(代码片段)

【云原生之kubernetes实战】在k8s集群下部署wordpress一、wordpress介绍1.wordpress简介2.wordpress的优点3.wordpress使用场景二、检查本地kubernetes集群状态三、配置nfs共享存储1.安装nfs2.创建共享目录3.配置共享目录4.使配置生效5.重启nfs相关服... 查看详情

云原生centos7搭建安装k8s集群v1.25版本详细教程实战(代码片段)

文章目录前言一.实验环境二.k8s的介绍三.k8s的安装3.1搭建实验环境3.1.1硬件层面的要求3.1.2软件层面环境配置3.2docker的安装3.2.1搭建docker3.2.2部署cri-dockerd3.3部署k8s3.3.1配置添加阿里云的yum源3.3.2安装kubeadmkubeletkubectl3.3.3k8s-master节点... 查看详情

云原生|kubernetes-kubeadm部署k8s集群(超详细)(代码片段)

...的一个简单上手的部署工具。不用把大量时间花费在搭建集群上面。只需通过两条命令就可以部署一个k8s集群#创建一个Master节点$kubeadminit#将一个Node节点加入到当前集群中$kubeadmjoin安装Kubeadm实验环境:CentOS7.9前期准备确认linux内... 查看详情

linux12企业实战--12ubuntu部署k8s集群(代码片段)

...5.6部署calico6.安装rancher6.1docker安装6.2设置6.3导入已有的k8s集群6.4K8S健康检查报错controller-managerUnhealthy7.安装harbor7.1下载安装包7.2登录7.3创建项目7.4搬运镜像8.普罗米修斯8.1修改配置文件修改镜像地址修改hostname修改web.external-url8.2... 查看详情

云原生之kubernetes实战在k8s集群下部署weavescope监控平台(代码片段)

【云原生之kubernetes实战】在k8s集群下部署WeaveScope监控平台一、WeaveScope介绍1.WeaveScope简介2.WeaveScope的特点3.WeaveScope的组成二、检查本地kubernetes集群状态1.检查工作节点状态2.检查系统pod状态三、安装nfs共享存储1.安装nfs2.创建共享... 查看详情

k8s单节点集群二进制部署(步骤详细,图文详解)(代码片段)

k8s单节点集群二进制部署(步骤详细,图文详解)一、k8s集群搭建环境准备1、etcd集群master01node01node02所有node节点部署docker引擎2、flannel网络插件3、搭建master组件4、搭建node组件(1)node1节点(2)node2节... 查看详情

k8s单节点集群二进制部署(步骤详细,图文详解)(代码片段)

k8s单节点集群二进制部署(步骤详细,图文详解)一、k8s集群搭建环境准备1、etcd集群master01node01node02所有node节点部署docker引擎2、flannel网络插件3、搭建master组件4、搭建node组件(1)node1节点(2)node2节... 查看详情

(2022版)一套教程搞定k8s安装到实战|k8s集群安装(kubeadm)(代码片段)

视频来源:B站《(2022版)最新、最全、最详细的Kubernetes(K8s)教程,从K8s安装到实战一套搞定》一边学习一边整理老师的课程内容及试验笔记,并与大家分享,侵权即删,谢谢支持!附上... 查看详情

企业运维实战-k8s学习笔记17.k8s集群+prometheus监控部署基于prometheus实现k8s集群的hpa动态伸缩虚拟机部署prometheus监控(代码片段)

企业运维实战-k8s学习笔记17.k8s集群+Prometheus监控部署、基于prometheus实现k8s集群的hpa动态伸缩一、Prometheus简介二、Prometheus+k8s部署1.k8s集群部署Prometheus2.设定Prometheus监控应用nginx3.基于prometheus实现k8s集群的hpa动态伸缩三、虚... 查看详情

harbor安装部署实战详细手册(代码片段)

文章目录前言一、安装docker二、安装docker-compose1.下载2.赋权3.测试三、安装harbor1.下载2.解压3.修改配置文件4.部署5.配置开机自启动6.登录验证7.补充说明四、harbor使用问题1.dockerlogin问题:Errorresponsefromdaemon:Gethttps://:http:servergav... 查看详情

harbor安装部署实战详细手册(代码片段)

文章目录前言一、安装docker二、安装docker-compose1.下载2.赋权3.测试三、安装harbor1.下载2.解压3.修改配置文件4.部署5.配置开机自启动6.登录验证7.补充说明四、harbor使用问题1.dockerlogin问题:Errorresponsefromdaemon:Gethttps://:http:servergav... 查看详情