Проект Rancher Labs с открытым исходным кодом сводит Kubernetes к базовым элементам для периферийных вычислений и других случаев использования с ограниченными ресурсами
Rancher Labs, создатель системы управления Rancher Kubernetes и контейнерно-ориентированного дистрибутива Linux RancherOS, объявил о выпуске нового дистрибутива Kubernetes, который будет стройным и простым.
K3s, как его называют - «K8s», обычное сокращение для Kubernetes, нацелено, главным образом, на рынки периферийных вычислений и автономных устройств, но также может поддерживать сценарии, такие как автономное распространение приложений на базе Kubernetes. Поддерживаются архитектуры платформ x86-64, ARM64 и ARMv7.
K3s использует различные методы, чтобы сжать дистрибутив Kubernetes в 512 МБ ОЗУ, используя один двоичный файл объемом 40 МБ. В K3s пропущено множество функций, которые сводят на нет большинство дистрибутивов Kubernetes, таких как редко используемые плагины, и объединяются различные функции дистрибутива Kubernetes в единый процесс. Тем не менее, Rancher Labs утверждает, что K3s проходит испытания CNCF «Сертифицированный Kubernetes Distribution».
Большая часть того, что было удалено, - это «альфа-функция, которая по умолчанию отключена, или устаревшие функции, которые устарели, такие как старые группы API, которые все еще поставляются в стандартном развертывании», - говорится в пресс-заметках Rancher Labs. Новые развертывания Kubernetes не будут использовать эти функции в любом случае, так как они существуют исключительно ради обратной совместимости. Подавляющее большинство этих функций были реализованы в виде плагинов, что означает, что они могут быть повторно реализованы при необходимости.
K3s также заменяет компоненты, обычно встречающиеся в стеке Kubernetes, на менее ресурсоемкие заменители. Вместо полного экземпляра Docker в качестве движка времени выполнения для контейнеров, K3s использует среду исполнения основного контейнера Docker, Containerd. Таким образом, многие элементы, обычно включаемые в Docker, могут быть опущены.
Другой компонент Kubernetes, Etcd - распределенная база данных, используемая для отслеживания состояния в кластере, - может быть заменен на SQLite, поскольку SQLite использует меньше ресурсов.
K3s в настоящее время предлагается как проект с открытым исходным кодом без официальной поддержки со стороны Rancher Labs, но компания полагает, что начнет предлагать официальную поддержку к третьему кварталу 2019 года.