centos7 k8s集群(centos7安装k8s集群)

技术centos7系统部署k8s集群的示例分析centos7系统部署k8s集群的示例分析,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1 版

很多新手对centos7系统中k8s集群部署的实例分析不是很清楚。为了帮助大家解决这个问题,下面小编就详细讲解一下。需要的人可以从中学习,希望你能有所收获。

1 版本、规划

10

1.1 版本信息:

名称版本号内核3.10.0-1160.el7.x86_64操作系统Centos Linux发行版7.9.2009(核心)Docker 20 . 10 . 11 Kube ADM 1 . 23 . 0 Kube let1 . 23 . 0 Kube CTL 1 . 23 . 0

1.2集群规划

IP主机名192.168.0.114 k8s-master

从步骤1到步骤8,所有节点都必须操作主节点:步骤9和10,节点节点:步骤11,

2.部署

,关机:systemctl停止firewalld D。

永久关闭:systemctl禁用防火墙

00-1010关闭:设置强制0

00-1010临时关闭:swapoff -a

永久关闭:sed-ri的/。*交换。*/#/'/etc/fstab,并通过此命令用交换行注释掉代码。

检验:免费-m

00-1010根据1.2中的计划,在/etc/hosts中添加映射关系。

192 . 168 . 0 . 114 k8 s-主机

192.168.0.115k8s-node01

192 . 168 . 0 . 116 k8s-node 02

1、关闭防火墙

使用以下命令添加配置:

cat/etc/sysctl . d/k8s . CredPof

net . bridge . bridge-nf-call-ip6 tables=1

net . bridge . bridge-nf-call-iptables=1

EOF执行sysctl - system命令使配置生效:

2、关闭selinux

wget https://mirrors . aliyun.com/docker-ce/Linux/centos/docker-ce . repo-O/etc/yum . repo . d/docker-ce . repo

Yuminstalldocker-ce设置开机和自启动

systemctlstartdocker

Systemctlenabledocker查看版本:docker版本可能会遇到的坑(暂时跳过这里,可以稍后再回来修改):

问题:使用命令docker info|grep cgroup检查docker使用的cgroup驱动程序是否是cgroupfs。它可能与kubelet冲突,需要更改为一致的systemd。

解决方案1: VI/etc/docker/daemon.json .将以下代码添加到文件中,然后重新启动docker。

{
	"exec-opts": ["native.cgroupdriver=systemd"]
}

解决方法2:也可以修改docker启动服务中的ExecStart,添加参数"--exec-opt native.cgroupdriver=systemd"

# docker.service
vi /usr/lib/systemd/system/docker.service
# 添加
ExecStart=/usr/bin/dockerd --exec-opt native.cgroupdriver=systemd

7、添加阿里云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
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

可能遇到的坑(此处暂且跳过,后面遇到可回来操作)

问题:安装过程中,可能提示xxx.rpm 公钥尚未安装

解决方法1:导入公钥后,再次重装即可

wget https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
wget https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
rpm --import yum-key.gpg
rpm --import rpm-package-key.gpg

解决方法2:kubernetes.repo文件中配置gpgchekc为0,不检查即可

8、安装kubeadm、kubelet、kubectl

安装:yum install -y kubelet-1.23.0 kubectl-1.23.0 kubeadm-1.23.0

或者安装最新也行:yum install -y kubelet kubectl kubeadm

设置开启自启:systemctl enable kubelet,此处只需设置开机启动即可。因为配置还未成,不必启动,启动也会不成功

9、初始化master节点

初始化命令

kubeadm init \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.0 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16

参数说明

--image-repository string     Choose a container registry to pull control plane images from (default “k8s.gcr.io”)此处使用阿里云的registry,否则会很慢,甚至失败

若安装失败,需要先用kubeadm reset命令清理下环境,再重装。

遇到的坑:

问题:The HTTP call equal to 'curl -sSL http://localhost:10248/healthz' failed with error: Get "http://localhost:10248/healthz": dial tcp [::1]:10248: connect: connection refused.解决方法:详见第6步

centos7系统部署k8s集群的示例分析

初始化成功 如果出现以下结果,表示初始化成功

centos7系统部署k8s集群的示例分析

根据提示,执行以下命令

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

# 第1条命令:表示创建隐藏文件夹.kube
# 第2条命令:表示复制文件admin.conf到该文件夹下
# 第3条命令:表示设置文件的所属用户、用户组

执行完以上命令即可使用kubectl命令,否则会提示The connection to the server localhost:8080 was refused - did you specify the right host or port?

centos7系统部署k8s集群的示例分析

10、安装pod网络插件(CNI)

GitHub地址:https://github.com/flannel-io/flannel,也可以直接下载文件

centos7系统部署k8s集群的示例分析

安装插件:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

遇到的坑

问题:The connection to the server raw.githubusercontent.com was refused - did you specify the right host or port?解决:在/etc/hosts中添加raw.githubusercontent.com映射。ip地址可以通过https://www.ipaddress.com进行查看

centos7系统部署k8s集群的示例分析

centos7系统部署k8s集群的示例分析

查看是否部署成功:kubectl get pods -n kube-system

centos7系统部署k8s集群的示例分析

再次查看节点,状态变为ready

centos7系统部署k8s集群的示例分析

11、node节点加入集群

向集群添加新节点,只需要将master节点中执行kubeadm init成功后的kubeadm join命令复制到要添加的node节点中执行即可

kubeadm join 192.168.0.114:6443 --token whxbm2.x70y9k1feop2604b \
  --discovery-token-ca-cert-hash sha256:d4306836b7ef32fd802e559cf717bbbe3af6dd75d3cb2fa4d3db7a16cc25a657

成功加入后,通过master节点使用命令kubectl get nodes,即可发现node节点已加入到集群中,并且状态为ready(此处要稍等一会)

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/147372.html

(0)

相关推荐

  • javameta-info里边放的是什么(meta标签name属性有哪些参数)

    技术Java的meta标签有什么作用这篇文章主要介绍“Java的meta标签有什么作用”,在日常操作中,相信很多人在Java的meta标签有什么作用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

    攻略 2021年12月22日
  • 铁的质量分数,四氧化三铁的原子质量分数

    技术铁的质量分数,四氧化三铁的原子质量分数解答(1)相对分子质量=相对原子质量与相应原子个数的乘积和铁的质量分数,则四氧化三铁的相对分子质量=56×3+16×4=232;(2)某元素质量分数═该原子的相对原子质量×该原子

    生活 2021年10月29日
  • 心形线,求心形函数表达式~~~

    技术心形线,求心形函数表达式~~~1.直角坐标方程心形线的平面直角坐标系方程表达式分别为 心形线:
    x^2+y^2+a*x=a*sqrt(x^2+y^2)
    x^2+y^2-a*x=a*sqrt(x^2+y^2)
    2.极坐

    生活 2021年10月29日
  • Spark driver端得到executor返回值的方法

    技术Spark driver端得到executor返回值的方法这篇文章将为大家详细讲解有关Spark driver端得到executor返回值的方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后

    攻略 2021年11月12日
  • BeanDefinition的原理是什么

    技术BeanDefinition的原理是什么这期内容当中小编将会给大家带来有关BeanDefinition的原理是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、BeanDefi

    攻略 2021年12月3日
  • 如何了解Django ORM操作

    技术如何了解Django ORM操作本篇内容主要讲解“如何了解Django ORM操作”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何了解Django ORM操作”吧!查询

    攻略 2021年10月20日