tnblog
首页
视频
资源
登录

Centos7安装k8s(基于kubeadm)

5310人阅读 2021/7/21 10:01 总访问:3467432 评论:0 收藏:0 手机
分类: 容器编排

Kubernetes

Centos7安装k8s(基于kubeadm)

下载相关包

链接:https://pan.baidu.com/s/1H9MuZsf28f_3uyVHBUS8jQ
提取码:w9tv

Master与Work节点共同步骤

先看看ip,然后确定Master与Work节点相通的ip是哪个

  1. ifconfig

修改hosts

  1. hostnamectl set-hostname k8s-1
  2. systemctl restart network
  3. # 把master与work节点都添加到hosts中
  4. echo "172.16.1.65 k8s-1" >> /etc/hosts
  5. echo "172.16.1.66 k8s-2" >> /etc/hosts
  6. ping k8s-1 -c 3
  7. # 没翻墙
  8. cat <<EOF > /etc/yum.repos.d/kubernetes.repo
  9. [kubernetes]
  10. name=Kubernetes
  11. baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
  12. enabled=1
  13. gpgcheck=1
  14. repo_gpgcheck=1
  15. gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
  16. EOF
  17. # 翻墙了的
  18. cat <<EOF > /etc/yum.repos.d/google-kubernetes.repo
  19. [kubernetes]
  20. name=Kubernetes
  21. baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
  22. enabled=1
  23. gpgcheck=1
  24. repo_gpgcheck=1
  25. gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
  26. EOF
  27. # 关防火墙
  28. systemctl stop firewalld
  29. systemctl disable firewalld
  30. # 设置selinux的参数
  31. sed -ie 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
  32. setenforce 0
  33. # 设置系统具体参数
  34. echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
  35. echo "net.bridge.bridge-nf-call-ip6tables = 1" >>/etc/sysctl.conf
  36. echo "net.bridge.bridge-nf-call-iptables = 1" >>/etc/sysctl.conf
  37. echo "net.bridge.bridge-nf-call-arptables = 1" >>/etc/sysctl.conf
  38. swapoff -a
  39. sysctl -p
  40. # 更新
  41. yum update -y
  42. # 安装docker-ce
  43. yum install -y yum-utils device-mapper-persistent-data lvm2
  44. yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  45. yum -y install docker-ce
  46. mkdir -p /etc/docker/
  47. cat <<EOF > /etc/docker/daemon.json
  48. {
  49. "registry-mirrors": ["https://cu2yw19m.mirror.aliyuncs.com"]
  50. }
  51. EOF
  52. # 重启
  53. systemctl daemon-reload
  54. systemctl restart docker
  55. systemctl enable docker
  56. # 安装 kubeadm kubectl kubelet
  57. yum -y install kubeadm-1.20.0 kubectl-1.20.0 kubelet-1.20.0
  58. systemctl restart network
  59. systemctl enable kubelet && systemctl restart kubelet
  60. cat /proc/sys/net/bridge/bridge-nf-call-iptables
  61. cat /proc/sys/net/bridge/bridge-nf-call-ip6tables
  62. # 关闭swap
  63. echo "KUBELET_EXTRA_ARGS="--fail-swap-on=false"" > /etc/sysconfig/kubelet
  64. systemctl restart kubelet
  65. # 到我们解压后的目录下
  66. cd /root/1.20.0/
  67. docker load -i kube-controller-manager.tar
  68. docker load -i kube-apiserver.tar
  69. docker load -i kube-proxy.tar
  70. docker load -i kube-scheduler.tar
  71. docker load -i coredns.tar
  72. docker load -i etcd.tar
  73. docker load -i flannel.tar
  74. docker load -i pause.tar
  75. docker load -i nettoolbox.tar

接着Master执行

  1. # 初始化后,保存join因为需要Work端执行
  2. kubeadm init --kubernetes-version=v1.20.0 --pod-network-cidr=10.244.0.0/16 --service-cidr=10.96.0.0/16 --ignore-preflight-errors=Swap
  3. mkdir -p $HOME/.kube
  4. sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  5. sudo chown $(id -u):$(id -g) $HOME/.kube/config
  6. kubectl taint nodes --all node-role.kubernetes.io/master-
  7. # 安装flannel
  8. kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
  9. kubectl get nodes -o wide
  10. kubectl get pods -o wide -n=kube-system
  11. kubectl run nettoolbox --image=burlyluo/nettoolbox --restart=Never
  12. kubectl get pods -o wide

接着Work节点执行

  1. # 执行复制的join

其他

CentOS 7 内核升级

  1. uname -r
  2. rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  3. rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
  4. yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
  5. grub2-set-default 0
  6. reboot
  7. uname -r

问题


遇到该问题:[Errno -1] repomd.xml signature could not be verified for kubernetes Trying other mirror
解决方法:

  1. #去掉kubernetes.repo文件中的下列两项
  2. gpgcheck=1
  3. repo_gpgcheck=1


遇到Errors during downloading metadata for repository 'base':

  1. # 进入yum目录
  2. cd /etc/yum.repos.d
  3. # 删除目录下所有文件(注意完整复制,不要漏了那个点)
  4. rm -rf ./*
  5. # 安装正确的源
  6. wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
  7. # 生成缓存
  8. yum makecache


Problem: package containers-common-2:1-2.module_el8.5.0 890 6b136101.noarch requires runc, but none of the providers can be installed

  1. dnf -y module disable container-tools


Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist

  1. cd /etc/yum.repos.d
  2. vi CentOS-Linux-BaseOS.repo
  3. vi CentOS-Linux-AppStream.repo
  1. [baseos]
  2. name=CentOS Linux $releasever - BaseOS
  3. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
  4. #baseurl=http://mirror.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
  5. baseurl=https://vault.centos.org/centos/$releasever/BaseOS/$basearch/os/
  6. gpgcheck=1
  7. enabled=1
  8. gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
  1. [appstream]
  2. name=CentOS Linux $releasever - AppStream
  3. #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=AppStream&infra=$infra
  4. #baseurl=http://mirror.centos.org/$contentdir/$releasever/AppStream/$basearch/os/
  5. baseurl=https://vault.centos.org/centos/$releasever/AppStream/$basearch/os/
  6. gpgcheck=1
  7. enabled=1
  8. gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial


RPM: error: db5 error(-30969) from dbenv->open: BDB0091 DB_VERSION_MISMATCH: Database environment version mismatch

  1. cd /var/lib/rpm
  2. ls -a
  3. rm -rf __db.*
  4. rpm --rebuilddb
  5. dnf update

欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

评价

Centos7安装RabbitMq

CentOS7安装RabbitMq[TOC] 安装Erlang 通过访问Erlang下载链接进行下载:https://www.erlang.org/downloads 使用ro...

Centos7搭建高可用的RabbitMq集群

Centos7搭建高可用的RabbitMq集群[TOC] 环境准备 在三台CentOS7中搭建好Rabbitmq,如果不会搭建请参考:https://www.tnblo...

Centos7 设置.net core开机自启动服务

前言欢迎使用tnblog注意使用模板的时候选择保留原有内容哦,不然会不小心替换你的已经写好的内容哦。我希望有个如你一般的人...

Centos7 安装设置redis

还是很喜欢你,性情善良,待人真诚,像日光洒满天地,温柔惬意一、安装gcc依赖由于 redis 是用 C 语言开发,安装之前必先确...

Centos7安装redis 集群遇到的问题总结

1 、问题一 centos7 redis (error) NOAUTH Authentication required. 需要验证(设置的密码) redis-cli -h ip地址 -a ...

解决 VMware Centos7 虚拟机 ping 通外网的问题

虚拟机上 ping 命令通不通外网的问题在 vi /etc/sysconfig/network-scripts/ifcfg-ens33 不要设置 DNS在 vi /etc/resolv.co...

virtualbox虚拟机Centos7设置固定IP,并保证主机宿主机通信与虚拟机访问外网

视频演示地址:https://www.tnblog.net/edu/play?des=sjqkecmklq视频演示 修改网卡设置(这样设置ip可以固定但是虚拟机无...

Centos7 安装k8s 1.25.0

Centos7 安装k8s 1.25.0[TOC] 安装包链接: https://pan.baidu.com/s/1H3M8fo3hh_qj4bJFifLRIQ 密码: psha安装containerdy...

新手 Centos7.9 安装 Jenkins

查看是否有Jenkinsrpm -qa |grep jenkins卸载rpm -e jenkins删除jenkins残留文件find / -iname jenkins | xargs -n 1000 rm...

微信密码框提示下载并安装安全控件

登录微信商户平台 输入密码时 一直提示 微信密码框提示下载并安装安全控件 点击下载重复下载了很多次 依然没有用解决办...

.NET Windows服务发布、安装、卸载、监听脚本。服务调试

一、脚本 为方便不用每次都去写安装卸载的脚本1.安装脚本@echooff @echo开始安装【服务】 %SystemRoot%\Microsoft.NET\Fr...

Python学习 1-安装

Ptyhon非常简单易用的面向对象的脚本语言,跨平台 入门简单python分2个版本 Python2、Python3。Python 2.7 将于 2020 年结...

重新安装IIS

Win+R--&gt;cmd--&gt;输入命令:cd\--&gt;回车(回到C盘根目录)--&gt; 输入:cd C:\Windows\Microsoft.NET\Framework\v4.0.3...

超详细VMware安装及破解

https://blog.csdn.net/newbie_907486852/article/details/79824042

Redis基础安装操作-windows版

一、下载 redis官方没有提供windows版本,需要从微软的git下载releases版二、安装,启动1.解压出来 启动服务 可能会双击会...
这一世以无限游戏为使命!
排名
2
文章
634
粉丝
44
评论
93
docker中Sware集群与service
尘叶心繁 : 想学呀!我教你呀
一个bug让程序员走上法庭 索赔金额达400亿日元
叼着奶瓶逛酒吧 : 所以说做程序员也要懂点法律知识
.net core 塑形资源
剑轩 : 收藏收藏
映射AutoMapper
剑轩 : 好是好,这个对效率影响大不大哇,效率高不高
ASP.NET Core 服务注册生命周期
剑轩 : http://www.tnblog.net/aojiancc2/article/details/167
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术