Как среду выполнения CRI-O контейнер на CentOS 8 / CentOS 7
CRI-O — это основанная на OCI реализация Kubernetes Container Runtime Interface (CRI) . CRI-O предназначен для обеспечения пути интеграции между средами выполнения, совместимыми с OCI, и кублетом. В этом руководстве мы обсудим установку среды выполнения контейнера CRI-O в системе CentOS 8 / CentOS 7 Linux. Область применения CRI-O ограничена следующими функциями:
- Поддержка нескольких форматов изображений, включая существующий формат изображений Docker
- Поддержка нескольких способов загрузки изображений, включая доверие и проверку изображений
- Управление изображениями контейнеров (управление слоями изображений, наложением файловых систем и т. Д.)
- Управление жизненным циклом контейнерного процесса
- Мониторинг и регистрация необходимы для удовлетворения CRI
- Изоляция ресурсов в соответствии с требованиями CRI
CRI-O использует лучшие в своем классе библиотеки для различных аспектов:
- Время выполнения: runc (или любая реализация спецификации времени выполнения OCI) и инструменты времени выполнения oci
- Изображения: Управление изображениями с использованием контейнеров / изображений
- Хранение: хранение и управление слоями изображений с использованием контейнеров / хранилищ
- Сеть: поддержка сети с использованием CNI
Установите среду выполнения CRI-O на CentOS 8 / CentOS 7
CRI-O и Kubernetes придерживаются одного и того же цикла выпуска и политики устаревания. Для получения дополнительной информации посетите документацию по версиям Kubernetes . Обновите вашу систему перед установкой:
sudo yum -y update
Ниже приведены инструкции по установке CRI-O на сервере CentOS 8 / CentOS 7 Linux или рабочей станции.
Шаг 1: Добавить репозиторий CRI-O
Так что, если вы работаете с Kubernetes версии 1.17, вы будете устанавливать cri-o 1.17.x. Мы сохраним эту версию в переменной. Затем добавьте репозиторий в нашу систему.
Добавить репозиторий в CentOS 8:
VERSION=1.17
sudo dnf -y install 'dnf-command(copr)'
sudo dnf -y copr enable rhcontainerbot/container-selinux
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/CentOS_8/devel:kubic:libcontainers:stable.repo
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:${VERSION}.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable:cri-o:${VERSION}/CentOS_8/devel:kubic:libcontainers:stable:cri-o:${VERSION}.repo
Добавить репозиторий в CentOS 7 :
VERSION=1.17
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/CentOS_7/devel:kubic:libcontainers:stable.repo
sudo curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:${VERSION}.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable:cri-o:${VERSION}/CentOS_7/devel:kubic:libcontainers:stable:cri-o:${VERSION}.repo
Шаг 2. Установите среду выполнения CRI-O на CentOS 8 / CentOS 7
После добавления хранилища установите среду выполнения CRI-O в CentOS 8 / CentOS 7 с помощью этой команды:
sudo yum install cri-o
Согласитесь установить ряд показанных зависимостей:
Transaction Summary
========================================================================================================================================================
Install 19 Packages
Upgrade 8 Packages
Total download size: 91 M
Is this ok [y/N]: y
Ключ GPG также должен быть импортирован.
......
Importing GPG key 0x75060AA4:
Userid : "devel:kubic OBS Project <devel:[email protected]>"
Fingerprint: 2472 D6D0 D2F6 6AF8 7ABA 8DA3 4D64 3903 7506 0AA4
From : http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable:/cri-o:/1.17/CentOS_8/repodata/repomd.xml.key
Is this ok [y/N]: y
Подтвердите установку CRI-O на CentOS::
$ rpm -qi cri-o
Name : cri-o
Epoch : 2
Version : 1.17.2
Release : 1.2.el8
Architecture: x86_64
Install Date: Tue 21 Apr 2020 03:13:42 PM UTC
Group : Unspecified
Size : 171568080
License : ASL 2.0
Signature : RSA/SHA256, Tue 14 Apr 2020 03:44:45 AM UTC, Key ID 4d64390375060aa4
Source RPM : cri-o-1.17.2-1.2.el8.src.rpm
Build Date : Tue 14 Apr 2020 03:44:06 AM UTC
Build Host : localhost
Relocations : (not relocatable)
Vendor : obs://build.opensuse.org/devel:kubic
URL : https://github.com/cri-o/cri-o
Summary : Kubernetes Container Runtime Interface for OCI-based containers
Шаг 3: Запустите службу CRI-O
Служба cri-o не включена или не запущена по умолчанию. Давайте начнем это:
sudo systemctl enable --now cri-o
В следующих руководствах мы расскажем о создании кластера Kubernetes с механизмом выполнения CRI-O и, возможно, взаимодействием с кри-контейнерами с помощью инструмента командной строки crictl .