Как стать автором
Обновить
3
0

Пользователь

Отправить сообщение
Пока нет, они используют общий список имаджей, но фактически информацию о контейнерах хранят в разных местах (планируется объединить)
Сейчас и docker и podman являются фактически обертками над runc, который собственно занимается созданием нужных неймспейсов. Разница в том, что в docker runc «впилен» в сам пакет докера, а в podman этот рантайм идет отдельно — и его можно заменять (к примеру, в Fedora 31 можно использовать crun).
Кроме того, общение с runc происходит по стандартному протоколу, который регулируется runtime spec. С недавних пор этот протокол поддерживает systemd-nspawn, а значит его можно использовать вместо run
Краткий ответ — никогда

Более развернутый ответ — для того чтобы использовать программу как container engine в kubernetes эта программа должна иметь отдельный сокет для работы по интерфейсу CRI. Чтобы управлять этим сокетом программа должна быть запущена как демон. Потому придется превратить podman обратно в демон, как docker.

Потому существует строгое разделение — podman для работы на пользовательских машинах (где демон только мешает и в большинстве случаев требует привелегий) и CRI-O — легковесный демон для работы с Kubernetes и специально заточенный под него. В итоге обе программы используют общий набор библиотек (libpod, containers/images) для работы.
>Заниматься этой уборкой в докере абсолютно осточертело.

podman system prune (как и в докере)
Для удаленной работы есть Varlink.

Основная «цена» отказа от демона — нельзя сериализировать пуллы, потому что нет демона который бы приоритезировал их. Остальное решается грамотной расстановкой локов
Вместо компоуза рекомендуется делать поды — developers.redhat.com/blog/2019/01/15/podman-managing-containers-pods и генерировать k8s yaml — developers.redhat.com/blog/2019/01/29/podman-kubernetes-yaml
>Скажите, MCO что ещё умеет делать? Файлы писать

Да

> команды запускать,

Нет, для этого есть DaemonSet и\или systemd units

> Как поддерживается изменённое состояние и как оно проверяется на дрифт?

Состояние хранится в репозитории en.wikipedia.org/wiki/OSTree. Если файл не совпадает с ожидаемым, значит пользователь использовал другие инструменты проме MCO. Тогда оператор попытается привести файл к ожидаемому виду и перезапишет его.

>Что-то похожее в чистом Kubernetes вам не встречалось?

MCO (как и большинство стандартных операторов OCP4) работает с «чистым» Kubernetes
>которые, помимо прочего, стоят немалых денег,

Продукт не стоит ни копейки, заказчики платят компании за поддержку и оперативное устранение ошибок.

Например, по вашей ссылке тред начался August 2 2017 at 8:39 AM, первый ответ от поддержки 2 August 2017 11:38 AM и фикс был протестирован и выпущен за немногим более чем 24 часа — 3 August 2017 11:53 PM

>заботливо разложенным ведущим вендором

Вы подразумеваете что это было сделано специально?
  1. Никак, это параллельные решения той же проблемы
  2. Операторы имеет более богатый API — не только создать/удалить сервис как у APB, но и реагировать на изменения CRD для переконфигурации готового сервиса, приводить сервис к требуемому виду при внешних измениях. Кроме того, для установки оператора не требуется сторонние расширения вроде APB/Service Catalog. Опциональным аналогом APB для операторов является OLM — он дает возможность устанавливать/обновлять операторы из Operator Hub, просматривать и удалять установленные
2

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность