// 查看系统版本

cat /etc/centos-release

CentOS Linux release 8.1.1911 (Core)

// 如果系统环境为8.0(云服务器默认最大安装环境为8.0)使用如下命令进行升级操作

sudo dnf update -y

// 配置网络

cat /etc/sysconfig/network-scripts/ifcfg-enp0s3

// 添加阿里源

rm -rfv /etc/yum.repos.d/*

curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo

// 配置主机名

cat /etc/hosts

// 关闭swap,注释swap分区

swapoff -a

cat /etc/fstab

// 配置内核参数,将桥接的IPv4流量传递到iptables的链

cat > /etc/sysctl.d/k8s.conf <<EOF

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

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

EOF

sysctl --system

// 安装常用包

yum install vim bash-completion net-tools gcc -y

// 使用aliyun源安装docker-ce

yum install -y yum-utils device-mapper-persistent-data lvm2

yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

yum -y install docker-ce

// 安装docker-ce如果出现以下错

CentOS-8 - Base - mirrors.aliyun.com 14 kB/s | 3.8 kB 00:00

CentOS-8 - Extras - mirrors.aliyun.com 6.4 kB/s | 1.5 kB 00:00

CentOS-8 - AppStream - mirrors.aliyun.com 16 kB/s | 4.3 kB 00:00

Docker CE Stable - x86_64 40 kB/s | 22 kB 00:00

Error:

Problem: package docker-ce-3:19.03.8-3.el7.x86_64 requires containerd.io >= 1.2.2-3, but none of the providers can be installed

  • cannot install the best candidate for the job
  • package containerd.io-1.2.10-3.2.el7.x86_64 is excluded
  • package containerd.io-1.2.13-3.1.el7.x86_64 is excluded
  • package containerd.io-1.2.2-3.3.el7.x86_64 is excluded
  • package containerd.io-1.2.2-3.el7.x86_64 is excluded
  • package containerd.io-1.2.4-3.1.el7.x86_64 is excluded
  • package containerd.io-1.2.5-3.1.el7.x86_64 is excluded
  • package containerd.io-1.2.6-3.3.el7.x86_64 is excluded

    (try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)

// 解决方法

wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

yum install containerd.io-1.2.6-3.3.el7.x86_64.rpm

// 然后再安装docker-ce即可成功

yum -y install docker-ce

//添加aliyundocker仓库加速器

mkdir -p /etc/docker

tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["https://fl791z1h.mirror.aliyuncs.com"]

}

EOF

systemctl daemon-reload

systemctl restart docker

// 安装kubectl、kubelet、kubeadm

// 添加阿里kubernetes源

cat < /etc/yum.repos.d/kubernetes.repo

[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

// 安装

yum install kubectl kubelet kubeadm

systemctl enable kubelet

// 初始化k8s集群

kubeadm init --kubernetes-version=1.18.0

--apiserver-advertise-address=172.21.0.14

--image-repository registry.aliyuncs.com/google_containers

--service-cidr=10.10.0.0/16 --pod-network-cidr=10.122.0.0/16

// 如果出现错误执行入下命令

kubeadm config images list

// 逐个安装

docker pull daocloud.io/daocloud/kube-apiserver:v1.18.3

docker pull daocloud.io/daocloud/kube-controller-manager:v1.18.3

docker pull daocloud.io/daocloud/kube-scheduler:v1.18.3

docker pull daocloud.io/daocloud/kube-proxy:v1.18.3

docker pull daocloud.io/daocloud/pause:3.2

docker pull daocloud.io/daocloud/etcd:3.4.3-0

docker pull daocloud.io/daocloud/coredns:1.6.7

// 给镜像打tag

docker tag daocloud.io/daocloud/kube-apiserver:v1.18.3 k8s.gcr.io/kube-apiserver:v1.18.3

docker tag daocloud.io/daocloud/kube-controller-manager:v1.18.3 k8s.gcr.io/kube-controller-manager:v1.18.3

docker tag daocloud.io/daocloud/kube-scheduler:v1.18.3 k8s.gcr.io/kube-scheduler:v1.18.3

docker tag daocloud.io/daocloud/kube-proxy:v1.18.3 k8s.gcr.io/kube-proxy:v1.18.3

docker tag daocloud.io/daocloud/pause:3.2 k8s.gcr.io/pause:3.2

docker tag daocloud.io/daocloud/etcd:3.4.3-0 k8s.gcr.io/etcd:3.4.3-0

docker tag daocloud.io/daocloud/coredns:1.6.7 k8s.gcr.io/coredns:1.6.7

// 清理原镜像

docker rmi daocloud.io/daocloud/kube-apiserver:v1.18.3

docker rmi daocloud.io/daocloud/kube-controller-manager:v1.18.3

docker rmi daocloud.io/daocloud/kube-scheduler:v1.18.3

docker rmi daocloud.io/daocloud/kube-proxy:v1.18.3

docker rmi daocloud.io/daocloud/pause:3.2

docker rmi daocloud.io/daocloud/etcd:3.4.3-0

docker rmi daocloud.io/daocloud/coredns:1.6.7

使用kubeadm在Centos8上部署kubernetes1.18的更多相关文章

  1. Kubeadm部署-Kubernetes-1.18.6集群

    环境配置 IP hostname 操作系统 10.11.66.44 k8s-master centos7.6 10.11.66.27 k8s-node1 centos7.7 10.11.66.28 k ...

  2. 在CentOS上部署kubernetes1.9.0集群

    原文链接: https://jimmysong.io/kubernetes-handbook/cloud-native/play-with-kubernetes.html (在CentOS上部署kub ...

  3. 03 . 二进制部署kubernetes1.18.4

    简介 目前生产部署kubernetes集群主要两种方式 kubeadm Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群 ...

  4. 使用kubeadm在CentOS上搭建Kubernetes1.14.3集群

    练习环境说明:参考1 参考2 主机名称 IP地址 部署软件 备注 M-kube12 192.168.10.12 master+etcd+docker+keepalived+haproxy master ...

  5. kubernetes:用label让pod在指定的node上运行(kubernetes1.18.3)

    一,为什么要为node指定label? 通常scheduler会把pod调度到所有可用的Node,有的情况下我们希望能把 Pod 部署到指定的 Node, 例如: 有的Node上配备了速度更快的SSD ...

  6. 【k8s学习笔记】使用 kubeadm 部署 v1.18.5 版本 Kubernetes集群

    说明 本文系搭建kubernetes v1.18.5 集群笔记,使用三台虚拟机作为 CentOS 测试机,安装kubeadm.kubelet.kubectl均使用yum安装,网络组件选用的是 flan ...

  7. kubeadm安装kubernetes1.18.5

    前言 尝试安装helm3,kubernetes1.18,istio1.6是否支持现有集群平滑迁移 版本 Centos7.6 升级内核4.x kubernetes:v1.18.5 helm:v3.2.4 ...

  8. [转帖]Breeze部署kubernetes1.13.2高可用集群

    Breeze部署kubernetes1.13.2高可用集群 2019年07月23日 10:51:41 willblog 阅读数 673 标签: kubernetes 更多 个人分类: kubernet ...

  9. kubespray-2.14.2安装kubernetes-1.18.10(ubuntu-20.04.1)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  10. 生产环境:ansible自动化部署kubernetes-1.14

    概述: 本文提供ansible-playbooks用来帮助读者用ansible构建二进制kubernetes1.14, 集群包含calico.nginx-ingress.HA 提供资源有kuberne ...

随机推荐

  1. WPF动画入门教程

    Windows Presentation Foundation (WPF)是一种用于创建Windows客户端应用程序的UI框架.它让我们能够创建丰富的图形界面,包括各种各样的动画效果.接下来,我们将介 ...

  2. 关于Unity 如何与Blazor Server结合

    关于Unity 如何与Blazor Server结合 一.介绍 最近工作中有`Unity`与`Blazor Server`结合的需求,在网上找了一圈,发现这方面的资料比较少,特此写下这篇记录一下自己的 ...

  3. 【Python进阶-PyQt5】00搭建PyQt5环境

    1.创建独立开发虚拟环境 1.1虚拟环境简介 我们编写的程序,有时用到的Python库是不一样的,比如说开发桌面应用程序我们主要用到PyQt5相关的Python库.开发Web应用程序我们主要用到Dja ...

  4. LeetCode 周赛上分之旅 #48 一道简单的树上动态规划问题

    ️ 本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 和 BaguTree Pro 知识星球提问. 学习数据结构与算法的关键在于掌握问题背后的算法思维框架,你的思考越 ...

  5. matlab启动时的路径警告

    前段时间在做HDLCoder时为方便修改设置加了一条路径在搜索路径目录,后来把路径名称修改了,文件夹也删掉了,换句话说就是路径不存在了,然后在matlab的setpath对话框里边也把该目录删除了. ...

  6. Jellyfin Documentation

    Skip to main content     Introduction On this page Welcome to the Jellyfin Documentation Jellyfin is ...

  7. MySQL快速导入千万条数据(1)

    目录 一.命令行导入方式 二.LOAD DATA导入方式 对于传统的关系数据库如oracle,在大量数据导入方面的效率,我们一般有一个大概的认知,即1分钟以内可以导入千万条数据,而对于MySQL数据库 ...

  8. Lab3 存储过程与触发器

    实验三 存储过程与触发器  实验目的: 学习SQL语言进行编程的基本方法与技术,能够编写存储过程.触发器解决数据库需要处理的复杂问题.  实验内容: 1. 设计一个存储过程或者自定义函数,练习存储 ...

  9. 虹科干货 | 虹科Redis企业版数据库的延迟如此之小,proxy功不可没!

    在Redis企业版集群的后台发生了许多事件,proxy(代理)隐藏了数据库客户端的所有活动. 大多数开发人员在构建应用程序时都会从小规模开始,使用简单的Redis开源(Redis OSS)数据库.在初 ...

  10. 配置nginx访问控制-设置防盗链

    1.设置访问控制.只允许本机查看nginx的status状态信息,其它人均拒绝: nginx -V查看nginx是否有status模块,如果没有需要添加 编辑修改nginx.conf文件:在serve ...