k8s系列-05-k8s集群搭建方案对比,以及containerd是什么,如何安装
Posted 公号运维家
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s系列-05-k8s集群搭建方案对比,以及containerd是什么,如何安装相关的知识,希望对你有一定的参考价值。
声明:本文乃“运维家”原创,转载请注明出处,更多内容请关注公众号“运维家”。
主旨
k8s在使用过程中,有多个部署方案,我们该如何做选择呢,各自更加适用于什么环境呢,为什么k8s中使用的是containerd,他和docker之间有什么关系呢?
集群
可选方案 | 方案来源 | 易难度 | 高可用 | 部署方式 |
kubeadm | 官方 | 适中 | 自定义 | 容器 |
kubespray | 官方 | 简单 | 生产级 | 容器 |
kubernetes-the-hard-way | 社区 | 困难 | 自定义 | 二进制 |
可以根据自己的实际需求,自行选择哈,咱们这个k8s系列,主要使用kubespray和kubernetes-the-hard-way这两个方式来延伸。
containerd
官网介绍:
containerd is available as a daemon for Linux and Windows. It manages the complete container lifecycle of its host system, from image transfer and storage to container execution and supervision to low-level storage to network attachments and beyond.
以上内容翻译过来就是:containerd是Linux和Windows的守护程序。它管理其主机系统的完整容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储到网络附件等等。
containerd是容器虚拟化技术,从docker中剥离出来,形成开放容器接口(OCI)标准的一部分。
Containerd 负责干下面这些事情:
•管理容器的生命周期(从创建容器到销毁容器)
•拉取/推送容器镜像
•存储管理(管理镜像及容器数据的存储)
•调用 runC 运行容器(与 runC 等容器运行时交互)
•管理容器网络接口及网络
注意:Containerd 被设计成嵌入到一个更大的系统中,而不是直接由开发人员或终端用户使用。
我们可以从下面几点来理解为什么需要独立的 containerd:
•继续从整体 docker 引擎中分离出的项目(开源项目的思路)
•可以被 Kubernets CRI 等项目使用(通用化)
•为广泛的行业合作打下基础(就像 runC 一样)
就简单说到这里吧,都是概念性的事儿,都是小问题,理解即可。
安装containerd
首先我们登录github官网上,可以看到截止今日最新版本是1.6.1,咱们这里就根据这个版本来进行安装。
软件获取:公众号“运维家”,后台回复“containerd”,即可获取下载链接,也可以从github上进行下载,不过网速堪忧啊。
[yunweijia@localhost ~]$ mkdir containerd
[yunweijia@localhost ~]$ cd containerd/
# 上传软件包
[yunweijia@localhost containerd]$ ls
cri-containerd-1.6.1-linux-amd64.tar.gz
[yunweijia@localhost containerd]$
解压:
剩余内容请转至VX公众号 “运维家” ,回复 “113” 查看。
以上是关于k8s系列-05-k8s集群搭建方案对比,以及containerd是什么,如何安装的主要内容,如果未能解决你的问题,请参考以下文章
Kubernetes(k8s)生产级实践指南 从部署到核心应用