'Kubectl run' очень похож на 'Docker run' в том смысле, что он создаст Pod с контейнером на основе образа docker (например, Как мне запустить команду curl изнутри модуля Kubernetes ).См. https://kubernetes.io/docs/reference/kubectl/docker-cli-to-kubectl/ для большего сравнения.Но то, что вы запускаете с помощью k8, это Pod / Jobs, которые содержат контейнеры, а не запускают контейнеры напрямую, так что это добавит вам дополнительный уровень сложности.
Kubernetes больше относится к организации сервисов, а не к выполнению краткосрочных заданий.Он имеет некоторые функции и может использоваться для запуска заданий, но это не является его главной задачей.Если вы идете в этом направлении, вы можете посмотреть на knative (и knative build) или на kubeless, поскольку то, что вы описываете, скорее похоже на концепцию без сервера.Или, если вы больше думаете о Джобсе, то, возможно, бригада (https://brigade.sh). (Подробнее см. https://www.quora.com/Is-Kubernetes-suited-for-long-running-batch-jobs) Если вы хотите запускать рабочие нагрузки веб-приложений, которые обслуживают запросы, обратите внимание, что вам не нужно убиватьконтейнеры, которые не отвечают на k8s, так как k8s будут отслеживать и перезапускать их для вас.
Я не знаю достаточно роя для сравнения. Я подозреваю, что вам будет немного легче, так как он нацелен на более централизованное управлениев docker (API k8s предназначен для поддержки других сред выполнения), но, возможно, кто-то другой может прокомментировать это. Может быть, использование Swarm поможет вам, я думаю, зависит от ваших мотиваций.