文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

一文学会利用Kubeadm安装Kubernetes1.20

2024-12-03 08:31

关注

正文

环境

kubeadm安装

添加国内源

  1. cat < /etc/yum.repos.d/kubernetes.repo 
  2. [kubernetes] 
  3. name=Kubernetes 
  4. baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 
  5. enabled=1 
  6. gpgcheck=0 
  7. repo_gpgcheck=0 
  8. gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg 
  9.        http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg 
  10. EOF 

 2.安装kubeadm

  1. yum -y install kubelet kubeadm kubectl docker 

查看镜像版本

  1. kubeadm config images list 

 

编辑安装脚本

  1. images=(  
  2.     kube-apiserver:v1.20.5 
  3.     kube-controller-manager:v1.20.5 
  4.     kube-scheduler:v1.20.5 
  5.     kube-proxy:v1.20.5 
  6.     pause:3.2 
  7.     etcd:3.4.13-0 
  8.     coredns:1.7.0 
  9. for imageName in ${images[@]} ; do 
  10.     docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName 
  11.     docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName 
  12.     docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName 
  13. done 

 5.出现下图,开启docker服务。

  1. systemctl start docker && systemctl enable docker 

kubeadm初始化集群

  1. kubeadm init --pod-network-cidr=172.17.0.0/16 

 

关闭swap分区

  1. swapoff -a 

 

出现异常

docker状态异常

  1. docker logs [你的docker id] 

 

查看docker日志

  1. ####这里多半为selinux未关闭#### 
  2. vim /etc/selinux/config 

 

  1. reboot 
  2. kubeadm reset 

hosts文件未写

添加hosts文件记录


初始化成功


如果出现该错误请执行下列命令

增加管理配置文件变量

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

 解决NotReady问题


安装flannel

如果出现超时,可以直接访问连接,直接复制粘贴,手工创建yaml文件(实在无法访问,可以私信我)

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

 

增加node节点

关闭selinux和swap(略,如上)

导入阿里源(略,如上)

安装kubeadm

加入K8S集群

前提条件为hosts文件已经添加,docker服务启动(systemctl enable docker && systemctl start docker)


  1. ####在master获取token及加入命令#### 
  2. kubeadm token create --print-join-command  
  3. ####在node执行接口#### 
  4. kubeadm join 192.168.31.55:6443 --token phuth9.n4lajzj9fx4fxvsr     --discovery-token-ca-cert-hash sha256:47860bea93955508dbf06ef8a62a3d97b02fead4f4160e3cfb1c246067c041d9 

 

获取加入命令


此时加入成功


但此时状态一直未Notready

查看kube-system下pod的情况,发现此时状态为异常状态

  1. kubectl get pods -n kube-system 

 

异常pod

  1. ####查看详细信息,主要是报错信息#### 
  2. kubectl describe pod kube-flannel-ds-tllzn  --namespace=kube-system 

 

在node节点主动拉取镜像

  1. docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.2 

在master节点查看相关镜像名称及标签,调整node节点标签

  1. ####记住是主节点执行该命令#### 
  2. docker image list 

 

修改tag与master节点一致

  1. ####记住在node节点操作#### 
  2. docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.2 k8s.gcr.io/pause:3.2 

 

修改标签

此时正常

再查看相关状态,发现kube-proxy依然有点问题,继续查看


状态异常

 因为超时,同样的方法处理

同样的方法

查看此时的状态,应该都是正常的

node正常

pod正常

总结

整体下来花费的时长比较长,过程不算曲折,node节点较折腾,但是官方文档还算是给力,另外测试时间比较久,初学不久,如果错误请包涵,共勉。

 

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯