在Ubuntu 20.04 | 18.04上安装CRI-O容器运行时

这是续集。
您可以通过以下链接以PDF格式下载本文,以为我们提供支持。

以PDF格式下载指南


这是续集。

这是续集。
这是续集。

本指南涵盖了在Ubuntu 20.04 / 18.04上CRI-O Container Runtime的安装。 CRI-O是Kubernetes的基于OCI的实现 容器运行时接口(CRI) 它旨在提供符合OCI的运行时和kubelet之间的集成路径。

创建CRI-O是为了提供以下核心功能:

  • 支持多种图像格式,包括现有的Docker图像格式
  • 支持多种下载图像的方式,包括信任和图像验证
  • 容器图像管理(图像层,覆盖文件系统等的管理)
  • 容器过程生命周期管理
  • 满足CRI所需的监视和日志记录
  • CRI要求的资源分离

CRI-O使用的库是:

在Ubuntu 20.04 | 18.04上安装CRI-O容器运行时

使用预构建的二进制软件包安装CRI-O容器运行时。请按照以下步骤在Ubuntu 20.04 | 18.04上安装CRI-O Container Runtime。

步骤1:更新系统

确保您的Ubuntu系统已更新。如果这可能会损坏您的系统,则可以跳过它。

sudo apt update && sudo apt upgrade

我们建议您重新启动系统以使用更新的版本运行。

sudo systemctl reboot

步骤2:添加CRI-O Kubic存储库

添加Kubic存储库以托管基于Debian的系统的二进制软件包。如果要将CRI-O与Kubernetes一起使用,请安装与您要设置的Kubernetes版本匹配的版本。

Kubernetes版本是 1.17, 安装CRI-O版本 1.17。

CRIO_VERSION=1.17
. /etc/os-release
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/x${NAME}_${VERSION_ID}/ /' >/etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list"

将存储库添加到系统后,导入GPG密钥。

wget -nv https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/x${NAME}_${VERSION_ID}/Release.key -O- | sudo apt-key add -

步骤3:在Ubuntu 20.04 | Ubuntu 18.04上安装CRI-O

添加存储库后,更新apt缓存并在Ubuntu上安装CRI-O。

sudo apt update
sudo apt install cri-o-${CRIO_VERSION}

接受安装提示 ÿ 键。

The following additional packages will be installed:
  conmon containers-common containers-golang containers-image libgpgme11 runc
Suggested packages:
  containernetworking-plugins
The following NEW packages will be installed:
  conmon containers-common containers-golang containers-image cri-o-1.17 libgpgme11 runc
0 upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
Need to get 23.3 MB of archives.
After this operation, 107 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

启动并启用crio服务。

sudo systemctl enable crio.service
sudo systemctl start crio.service

您可以使用以下命令检查服务状态。

$ systemctl status crio
● crio.service - Container Runtime Interface for OCI (CRI-O)
     Loaded: loaded (/lib/systemd/system/crio.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-06-07 20:16:50 CEST; 37s ago
       Docs: https://github.com/cri-o/cri-o
   Main PID: 2461 (crio)
      Tasks: 13
     Memory: 7.7M
     CGroup: /system.slice/crio.service
             └─2461 /usr/bin/crio

Jun 07 20:16:50 ubuntu systemd[1]: Starting Container Runtime Interface for OCI (CRI-O)...
Jun 07 20:16:50 ubuntu systemd[1]: Started Container Runtime Interface for OCI (CRI-O).

步骤4:在Ubuntu 20.04 | 18.04上使用CRI-O

命令行工具 犯罪 可以从cri-tools软件包中安装。

sudo apt install cri-tools

检查crictl命令是否存在。

$ crictl info
{
  "status": {
    "conditions": [
      {
        "type": "RuntimeReady",
        "status": true,
        "reason": "",
        "message": ""
      },
      {
        "type": "NetworkReady",
        "status": false,
        "reason": "NetworkPluginNotReady",
        "message": "Network plugin returns error: Missing CNI default network"
      }
    ]
  }
}

拉测试图像。

# crictl pull nginx
Image is up to date for docker.io/library/[email protected]:c870bf53de0357813af37b9500cb1c2ff9fb4c00120d5fe1d75c21591293c34d

# crictl pull hello-world
Image is up to date for docker.io/library/[email protected]:6a65f928fb91fcfbc963f7aa6d57c8eeb426ad9a20c7ee045538ef34847f44f1

# crictl pull busybox
Image is up to date for docker.io/library/[email protected]:95cf004f559831017cdf4628aaf1bb30133677be8702a8c5f2994629f637a209

可用图像列表:

# crictl images
IMAGE                           TAG                 IMAGE ID            SIZE
docker.io/library/alpine        latest              a24bb4013296f       5.85MB
docker.io/library/busybox       latest              1c35c44120825       1.44MB
docker.io/library/hello-world   latest              bf756fb1ae65a       20kB
docker.io/library/nginx         latest              4392e5dad77db       136MB

创建一个pod沙箱配置文件。

cat >nginx.json<net-pod.json<

运行吊舱

sudo crictl runp net-pod.json
sudo crictl create nginx.json net-pod.json
sudo crictl ps -a

在Ubuntu上使用Kubernetes享受CRI-O。如果您想精通Kubernetes的管理,请查看以下课程。


Kubernetes的绝对初学者实践

★★★★★
(13555)

$ 13.60

$ 226.59

有现货

立即购买

在Ubuntu 20.04 | 18.04上安装CRI-O容器运行时Udemy.com


Kubernetes管理员(CKA)认证和认证测试

Kubernetes管理员(CKA)认证和认证测试

★★★★★
(11083)

$ 13.60

$ 226.59

有现货

立即购买

在Ubuntu 20.04 | 18.04上安装CRI-O容器运行时Udemy.com


学习DevOps:完整的Kubernetes课程

学习DevOps:完整的Kubernetes课程

★★★★☆
(10561)

$ 14.73

$ 45.31

有现货

立即购买

在Ubuntu 20.04 | 18.04上安装CRI-O容器运行时Udemy.com

有关在CentOS Linux上安装CRI-O的信息,请参见下文。

在CentOS Linux上安装CRI-O容器运行时

这是续集。
您可以通过以下链接以PDF格式下载本文,以为我们提供支持。

以PDF格式下载指南


这是续集。

这是续集。
这是续集。

Sidebar