安装

常用两种部署方式

  • 传统方式 手动部署 组件做为独立进程 部署较为麻烦,要设置多组CA,若是进程挂掉的要手动启动

  • kubeadm方式 组件部署为pod 部署较为简单,组件托管给k8s

kubeadm

  1. master,nodes: 安装kubelet, kubeadm, docker

  2. nodes: kubeadm join

时间同步服务是基础 确保iptables和firewalld 都没有启动

docker repo

yum 镜像设置

cd /etc/yum.repos.d/
wget http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

kubernetes repo

在kubernetes.repo里写入

install

遇到错误

手动导入gpg

再次运行

若是有提示

确保下面的文件的值都为1

修改办法

添加以下内容

然后执行

由于kubernetes默认不允许使用swap所以修改文件

添加

run

参考文档

https://kuboard.cnarrow-up-right

kubeadm安装

说明

集群

单master节点 一个master节点 两个worker节点

软件版本

Kubernetes v1.18.x calico 3.13.1 nginx-ingress 1.5.5 Docker 19.03.8

配置要求

3台2核VM CentOS7.8

检查

检查hostname

检查Centos

检查linue版本

查看cpu

检查网络

所有节点执行

所有节点上 Kubernetes 所使用的 IP 地址必须可以互通(无需 NAT 映射、无安全组或防火墙隔离)

关闭防火墙

centos7.6启用的防火墙一般都是firewalld

查看firewall状态

所有节点开启时间同步服务

ntp 时间同步设置arrow-up-right

设置hosts

各节点都配置 192.168.31.134 apiserver.name 192.168.31.134 master134 192.168.31.188 worker188 192.168.31.24 worker24

请认真核对如下选项,7 个都确认可以后才能安装。

安装条件检查

  • 我的任意节点 centos 版本为 7.6 或 7.7

  • 我的任意节点 CPU 内核数量大于等于 2,且内存大于等于 4G

  • 我的任意节点 hostname 不是 localhost,且不包含下划线、小数点、大写字母

  • 我的任意节点都有固定的内网 IP 地址

  • 我的任意节点都只有一个网卡,如果有特殊目的,我可以在完成 K8S 安装后再增加新的网卡

  • 我的任意节点上 Kubelet使用的 IP 地址 可互通(无需 NAT 映射即可相互访问),且没有防火墙、安全组隔离

  • 我的任意节点不会直接使用 docker run 或 docker-compose 运行容器

  • 我的任意节点的防火墙都已关闭

  • 我的任意节点的时间同步服务都已开启

安装docker-ce kubelet kubeadm kubectl

worker节点可不安装kubectl

yum仓库地址配置

docker repo

yum 镜像设置

kubernetes repo

在kubernetes.repo里写入

检查镜像

安装

镜像无问就可以安装了

启动docker

启动

设置网络参数

设置docker镜像

修改 /etc/docker/daemon.json 文件(如果没有,则创建):

配置生效

master节点初始化

Swap禁用或错误忽略

kubernetes默认是不让开启swap的 但是我们由于是用的虚拟测试机,配置较低, 不用swap的话, 性能会有大降低的,所以我们这里忽略错误

错误忽略

增加内容

初始化worker节点

Swap禁用或错误忽略

kubernetes默认是不让开启swap的 但是我们由于是用的虚拟测试机,配置较低, 不用swap的话, 性能会有大降低的,所以我们这里忽略错误

错误忽略

增加内容

在master节点上执行

设置worker节点hosts

Last updated