目录
1. 部署方式
- 1. 部署方式
- 2. 集群规划
- 3. containerd安装
- 4. 安装k8s集群
- 4.1 基础环境
- 4.2 安装kubelet、kubeadm、kubectl
- 4.3 下载各个机器需要的镜像
- 4.4 初始化主节点(只在master节点执行)
- 4.5 设置.kube/config(只在master执行)
- 4.6 安装网络插件calico(只在master执行)
- 4.7 加入node节点(只在node执行)
- 4.7.1 node节点可以执行kubectl命令方法
- 5. 部署dashboard(只在master执行)
- 5.1 部署
- 5.2 设置访问端口
- 5.3 创建访问账号
- 5.4 获取访问令牌
- 6. 安装nginx进行测试
- 7. 其它可选模块部署
- 7.1 metrics-server安装
- 7.2 IPVS的开启
- 7.3 ingress-nginx的安装
- 7.4 搭建NFS服务器
有几下几种部署方式:
- minikube:一个用于快速搭建单节点的kubernetes工具
- kubeadm:一个用于快速搭建kubernetes集群的工具
- 二进制包:从官网上下载每个组件的二进制包,依次去安装
这里我们选用kubeadm方式进行安装
2. 集群规划Kubernetes有一主多从或多主多从的集群部署方式,这里我们采用一主多从的方式
服务器名称服务器IP角色CPU(最低要求)内存(最低要求)k8s-master192.168.23.160master2核2Gk8s-node1192.168.23.161node2核2Gk8s-node2192.168.23.162node2核2G 3. containerd安装containerd和kubernetes版本对应关系,参考:
- https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.24.md
- https://github.com/kubernetes/kubernetes/blob/master/build/dependencies.yaml
containerd的安装,请参考Centos7上安装容器运行时Containerd和命令行工具nerdctl、crictl
4. 安装k8s集群 4.1 基础环境1. 禁用selinux
临时禁用方法
[root@k8s-master ~]# setenforce 0
[root@k8s-master ~]# getenforce
Permissive
[root@k8s-master ~]#
永久禁用方法。需重启服务器
[root@k8s-master ~]# sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
2. 关闭swap
swap分区指的是虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间虚拟成内存来使用。但是会对系统性能产生影响。所以这里需要关闭。如果不能关闭,则在需要修改集群的配置参数
临时关闭方法
[root@k8s-master ~]# swapoff -a
[root@k8s-master ~]# free -m
total used free shared buff/cache available
Mem: 1819 286 632 9 900 1364
Swap: 0 0 0
[root@k8s-master ~]#
永久关闭方法。需重启服务器
[root@k8s-master ~]# sed -ri 's/.*swap.*/#&/' /etc/fstab
3. bridged网桥设置
为了让服务器的iptables能发现bridged traffic,需要添加网桥过滤和地址转发功能
新建modules-load.d/k8s.conf文件
[root@k8s-master ~]# cat
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?