Containerd容器運行yum安裝與二進(jìn)制安裝
一、前言
Containerd的安裝,如果使用yum安裝會簡單很多,但安裝的版本基本是固定的,在實際的業(yè)務(wù)場景不太適合。
二進(jìn)制安裝的方式,相對比較靈活。
二、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_64 1.4.9-3.1.el7 installed containerd.x86_64 1.2.14-1.el7 epel containerd.io.x86_64 1.6.4-3.1.el7 docker-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服務(wù)
$ systemctl start containerd $ systemctl enable containerd $ systemctl status containerd
2.5 查看服務(wù)信息
$ ctr version Client: Version: 1.4.9 #客戶端版本號 Revision: e25210fe30a0a703442421b0f60afac609f950a3 Go version: go1.15.14 Server: Version: 1.4.9 #服務(wù)端版本號 Revision: e25210fe30a0a703442421b0f60afac609f950a3 UUID: 3a988dc2-25d5-4753-914c-3344e4cb3c6e
三、二進(jìn)制方式安裝
3.1 下載二進(jìn)制包
Containerd有兩種安裝包:
containerd-xxx:這種包用于單機測試沒問題,不包含runC,需要提前安裝。
cri-containerd-cni-xxxx:包含runc和k8s里的所需要的相關(guān)文件。k8s集群里需要用到此包。雖然包含runC,但是依賴系統(tǒng)中的seccomp(安全計算模式,是一種限制容器調(diào)用系統(tǒng)資源的模式。)
$ 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-x 4 root root 51 4月 26 07:52 etc drwxr-xr-x 4 root root 35 4月 26 07:51 opt drwxr-xr-x 3 root root 19 4月 26 07:50 usr
etc目錄:主要為containerd服務(wù)管理配置文件及cni虛擬網(wǎng)卡配置文件;
opt目錄:主要為gce環(huán)境中使用containerd配置文件及cni插件;
usr目錄:主要為containerd運行時的二進(jìn)制文件,包含runc;
containerd 的安裝包中一共有五個文件,通過上面的命令它們被安裝到了 /usr/local/bin 目錄中:
containerd:即容器的運行時,以 gRPC 協(xié)議的形式提供滿足 OCI 標(biāo)準(zhǔn)的 API;
containerd-release:containerd 項目的發(fā)行版發(fā)布工具;
containerd-stress:containerd壓力測試工具;
containerd-shim:這是每一個容器的運行時載體,我們在 docker 宿主機上看到的 shim 也正是代表著一個個通過調(diào)用 containerd 啟動的 docker 容器;
ctr:它是一個簡單的 CLI 接口,用作 containerd 本身的一些調(diào)試用途,投入生產(chǎn)使用時還是應(yīng)該配合docker 或者 cri-containerd 部署;
3.2 拷貝二進(jìn)制可執(zhí)行文件到`$PATH`中
在解壓安裝包后,在解壓后的usr/local/bin、目錄下有相關(guān)的二進(jìn)制可執(zhí)行文件,將其復(fù)制到$PATH環(huán)境中。
$ ls usr/local/bin/ containerd containerd-shim containerd-shim-runc-v1 containerd-shim-runc-v2 containerd-stress crictl critest ctd-decoder ctr $ cp usr/local/bin/* /usr/local/bin/
3.3 創(chuàng)建配置文件
Containerd 的默認(rèn)配置文件為 /etc/containerd/config.toml
$ mkdir -p /etc/containerd/ $ containerd config default > /etc/containerd/config.toml
3.4 創(chuàng)建服務(wù)管理配置文件
拷貝服務(wù)管理配置文件到/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 服務(wù)
$ 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(二進(jìn)制)
由于二進(jìn)制包中提供的runC默認(rèn)需要系統(tǒng)中安裝seccomp支持,需要單獨安裝,且不同版本runC對seccomp版本要求不一致,所以建議單獨下載runC 二進(jìn)制包進(jìn)行安裝,里面包含了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
以上就是Containerd容器運行yum安裝與二進(jìn)制安裝的詳細(xì)內(nèi)容,更多關(guān)于Containerd容器yum與二進(jìn)制安裝的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
k8s?Ingress實現(xiàn)流量路由規(guī)則控制的定義格式類型
這篇文章主要為大家介紹了k8s?Ingress?實現(xiàn)流量路由規(guī)則控制的定義格式及類型詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04K8S部署Kafka界面管理工具(kafkamanager)方法詳解
這篇文章主要介紹了K8S部署Kafka界面管理工具(kafkamanager)方法詳解,需要的朋友可以參考下2022-01-01教你在k8s上部署HADOOP-3.2.2(HDFS)的方法
這篇文章主要介紹了k8s-部署HADOOP-3.2.2(HDFS)的方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-04-04K8S?實用工具之合并多個kubeconfig實現(xiàn)詳解
這篇文章主要為大家介紹了K8S?實用工具之合并多個kubeconfig實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03