风流不在谈锋胜,袖手无言味最长。这篇文章主要讲述Containerd容器运行时:yum安装与二进制安装,哪个更适合你?相关的知识,希望能为你提供帮助。
【Containerd容器运行时(yum安装与二进制安装,哪个更适合你())】
一、前言Containerd的安装,如果使用yum安装会简单很多,但安装的版本基本是固定的,在实际的业务场景不太适合。
二进制安装的方式,相对比较灵活。
二、yum方式安装安装containerd会自动安装runc。
2.1 下载阿里云镜像源
$ wget -O /etc/yum.repos.d/docker-ce.repo ??https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo?
2.2 搜索containerd软件
$ yum list | grep containerd
containerd.io.x86_641.4.9-3.1.el7installed
containerd.x86_641.2.14-1.el7epel
containerd.io.x86_641.6.4-3.1.el7docker-ce-stable
2.3 安装
$ yum install-y containerd
$ rpm -qa |grep containerd
containerd.io-1.4.9-3.1.el7.x86_64
2.4 启动containerd服务
$ systemctl startcontainerd
$ systemctl enablecontainerd
$ systemctl statuscontainerd
2.5 查看服务信息
$ ctr version
Client:
Version:1.4.9#客户端版本号
Revision: e25210fe30a0a703442421b0f60afac609f950a3
Go version: go1.15.14
Server:
Version:1.4.9#服务端版本号
Revision:e25210fe30a0a703442421b0f60afac609f950a3
UUID: 3a988dc2-25d5-4753-914c-3344e4cb3c6e
三、二进制方式安装3.1 下载二进制包Containerd有两种安装包:
$ wget https://github.com/containerd/containerd/releases/download/v1.6.5/cri-containerd-1.6.5-linux-amd64.tar.gz
$ tar zxvf cri-containerd-1.6.5-linux-amd64.tar.gz
$ ls-l
drwxr-xr-x4 root root51 4月26 07:52 etc
drwxr-xr-x4 root root35 4月26 07:51 opt
drwxr-xr-x3 root root19 4月26 07:50 usr
etc目录:主要为containerd服务管理配置文件及cni虚拟网卡配置文件;
opt目录:主要为gce环境中使用containerd配置文件及cni插件; usr目录:主要为containerd运行时的二进制文件,包含runc;
containerd 的安装包中一共有五个文件,通过上面的命令它们被安装到了 /usr/local/bin 目录中:
3.2 拷贝二进制可执行文件到`$PATH`中在解压安装包后,在解压后的usr/local/bin、目录下有相关的二进制可执行文件,将其复制到$PATH环境中。
$ ls usr/local/bin/
containerdcontainerd-shimcontainerd-shim-runc-v1containerd-shim-runc-v2containerd-stresscrictl
critestctd-decoderctr
$ cp usr/local/bin/*
/usr/local/bin/
3.3 创建配置文件Containerd 的默认配置文件为 /etc/containerd/config.toml
$ mkdir -p /etc/containerd/
$ containerd config default >
/etc/containerd/config.toml
3.4 创建服务管理配置文件拷贝服务管理配置文件到/usr/lib/systemd/system/目录
$ grep -v ^# etc/systemd/system/containerd.service
$ cp etc/systemd/system/containerd.service
/usr/lib/systemd/system/containerd.service
3.5 启动 containerd 服务$ sudo systemctl daemon-reload
$ sudo systemctl enable --now containerd.service
$ sudo systemctl status containerd.service
查看版本
$ containerd--version
containerd github.com/containerd/containerd v1.6.3
f830866066ed06e71bad64871bccfd34daf6309c
3.6 安装runc(二进制)由于二进制包中提供的runC默认需要系统中安装seccomp支持,需要单独安装,且不同版本runC对seccomp版本要求不一致,所以建议单独下载runC 二进制包进行安装,里面包含了seccomp模块支持。
$ cp usr/local/sbin/runc/usr/bin/
$ runc -version
runc: symbol lookup error: runc: undefined symbol: seccomp_notify_respond
【报错原因】
缺少依赖包libseccomp(2.4以上版本)
【解决办法】 安装libseccomp 2.5.1
$ wget http://rpmfind.net/linux/centos/8-stream/BaseOS/x86_64/os/Packages/libseccomp-2.5.1-1.el8.x86_64.rpm
$ rpm -ivh libseccomp-2.5.1-1.el8.x86_64.rpm
$ rpm -qa |grep libseccomp
libseccomp-2.5.1-1.el8.x86_64
$ runc-version
runc version 1.1.2
commit: v1.1.2-0-ga916309f
spec: 1.0.2-dev
go: go1.17.11
libseccomp: 2.5.1
四、推荐阅读(精品文章)
推荐阅读
- python打印print打印语句当中的f是什么
- selenium强制等待,隐式等待,显式等待
- client-go gin的简单整合十-Update
- 测试Charles的map,rewrite,breakpoints的使用方法
- HTTPHTTP请求体中的四种格式,requests库发送post请求
- pythonprint和pprint的区别
- adbAndriod获取常用性能指标的方法
- 面试快手的客户端测试(直播)
- shell``和$()作用与区别