Вышла Khative 1.0 — бессерверная платформа, упрощающая разработку в Kubernetes

2 ноября Google представила стабильный релиз платформы Knative 1.0, предназначенной для создания инфраструктуры бессерверных вычислений, развертываемой поверх системы контейнерной изоляции на базе платформы Kubernetes.

a775c08d8475cffd4c48e93da8d5add0.jpeg

Kubernetes — открытое программное обеспечение для автоматизации контейнеризированных приложений,  их развертывания, масштабирования и координации в условиях кластера. Он предназначен для управления кластером контейнеров Linux как единой системой, а также позволяет запускать и управлять контейнерами Docker на большом количестве хостов. Еще одной важной функцией Kubernetes является  обеспечение совместного размещения и репликации большого количества контейнеров. Изначально проект был начат Google, но сейчас его поддерживает довольно много компаний, в том числе Microsoft, Red Hat, IBM, SAP, VMware и Docker.

Google дала разработчикам абстрагироваться от сложных деталей базовой инфраструктуры и явила «проект Knative версии 1.0, достигнув важной вехи».  Сам проект был выпущен Google в июле 2018 года и является трудом более 600 разработчиков.

Knative был создан для систематизации передового опыта разработки облачных приложений с акцентом на трех областях: создание контейнеров, обслуживание и масштабирование рабочих нагрузок и обработки событий. Он предоставляет необходимый набор компонентов для создания и запуска бессерверных приложений в Kubernetes, позволяя автоматически масштабировать веб-хуки и службы. Масштабирование возможно даже до нуля, что помогает использовать дорогостоящие мощности серверных ресурсов с наибольшим коэффициентом полезного действия. 

Кроме исправления множества багов, разработчики Knative доработали стабильность и производительность платформы. Также было внесено много изменений, в том числе:

  • поддержка нескольких уровней маршрутизации HTTP (включая Istio, Contour, Kourier и Ambassador);

  • поддержка нескольких уровней хранения для концепций Eventing с общими методами подписки (включая Kafka, GCP PubSub и RabbitMQ);

  • поддержка HTTP / 2, gRPC и WebSockets;

  • поддержка автоматического предоставления сертификатов TLS (через запросы DNS или HTTP01);

  • редизайн форм API для обслуживания в соответствии с PodTemplateSpec, используемым Deployment, CronJob и т.д., упрощения работы Kubernetes-пользователей и много другое.

Довольно большой вклад в создание Knative внесла команда Red Hat. С момента выпуска  она является частью проекта, интегрировав Knative в свою гибридную облачную платформу Red Hat OpenShift на базе Kubernetes. Red Hat OpenShift Serverless включает бессерверное развертывание Knative и возможности обработки событий.  Работу с ним  можно установить одним кликом с помощью веб-интерфейса управления OpenShift. 

Команда OpenShift Serverless в течение последних 12 месяцев упорно работала над расширением возможностей Knative за счет внедрения бессерверных функций Red Hat OpenShift. Доступные в предварительном техническом превью для всех текущих версий OpenShift 4.x бессерверные функции значительно повышают скорость разработки и эффективность во многих средах выполнения, включая Node.js, Python, Quarkus, TypeScript, Rust и Go.

© Habrahabr.ru