Издаването на Cozystack 0.37, отворената PaaS платформа, базирана на Kubernetes

Налична е версия на свободната PaaS платформа Cozystack 0.37, построена на базата на Kubernetes. Проектът е насочен към предоставяне на готова платформа за хостинг провайдъри и фреймуорк за изграждане на частни и публични облаци. Платформата се инсталира директно на сървърите и обхваща всички аспекти на подготовката на инфраструктурата за предоставяне на управлявани услуги. Cozystack позволява стартиране и предоставяне на Kubernetes клъстери, бази данни и виртуални машини. Кодът на платформата е наличен в GitHub и се разпространява под лиценцията Apache-2.0.

Като базов стек технологии се използва Talos Linux и Flux CD. Образите със системата, ядрото и необходимите модули се формират предварително и се актуализират атомарно, което позволява да се избегнат компоненти като dkms и пакетен мениджър, и да се гарантира стабилна работа. Предоставя се прост метод за инсталация в празен дата център с помощта на PXE и debian-подобен инсталатор talos-bootstrap. В рамките на платформата могат да се разгръщат с едно кликване Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics и други услуги.

Платформата включва свободна реализация на мрежовата инфраструктура на Kube-OVN, и използва Cilium за организация на услугите, MetalLB за обявяване на услугите навън. Съхранението е реализирано на LINSTOR, където се предлага използването на ZFS като основен слой за съхранение и DRBD за репликация. Има предварително конфигуриран стек за мониторинг на базата на VictoriaMetrics и Grafana. За стартиране на виртуални машини се използва технологията KubeVirt, която позволява стартирането на класически виртуални машини директно в Kubernetes контейнери и вече има всички необходими интеграции с Cluster API за стартиране на управлявани Kubernetes клъстери в рамките на физическия Kubernetes клъстер.

През последните един и половина месеца екипът на проекта освободи нови версии 0.36 и 0.37. Сред промените в тези версии:

  • Интерфейсът на потребителя е пренаписан от нулата. За основа е използван проектът openapi-ui.
    Издаването на Cozystack 0.37, отворената PaaS платформа, базирана на Kubernetes
  • В интерфейса се появи селектор на клъстера. Сега таблото работи в режим на един клъстер (по едно табло на клъстер). В бъдеще този същият интерфейс ще се използва за много клъстерен режим.
  • На екрана на клъстера сега веднага се виждат всички налични пространства в имената. Списъкът се съставя чрез агрегиращия слой Kubernetes (tenant namespace), поради което се показват само тези пространства, до които има достъп.
  • Създаването на ресурси сега става чрез форми, автоматично генерирани от Kubernetes OpenAPI. Коментарите от YAML не са нужни: полетата и валидирането се вземат директно от спецификациите.
  • Спецификацията на новите приложения се съставя от Helm-чартове с помощта на cozy-values генератора, а въведените полета във формата синхронно се отразяват в окончателния YAML.
  • Модулите за управление на tenant-ите преместиха в секцията на администриране: тук можете да създавате субтенанти и да задавате специфични модули/приложения за тях (достъпът зависи от ролята и правата на потребителя).
  • Планирано е добавяне на таб с VNC конзола за виртуалните машини. За някои типове ресурси ще бъдат добавени специални табове/поля (например, за KubeVirt-VM).
  • Стабилизиран е механизмът за управление на ресурсите за tenant-ите на Cozystack. Администраторите на платформата вече могат да задават явни лимити за CPU, памет и хранилище за всеки tenant-namespace в спецификацията на tenant-а. По този начин никой от tenant-ите не може да "изяде" всичко, оставяйки другите tenant-и без ресурси.
  • Добавен компонент Kube-OVN Plunger за непрекъснато проследяване на състоянието на централния управляващ кластер на мрежата Kube-OVN. Внешният агент събира статус на кластер OVN и информация за консенсуса, показва метрики Prometheus и поток от събития чрез SSE (Server-Sent Events).
  • Допълнението CoreDNS сега се разгръща чрез Helm-чарт и се настройва в спецификацията на клъстера (автоматично мащабиране, брой реплики, сервисен IP и др.). CoreDNS може да се конфигурира както в таблото за управление, така и чрез API Cozystack.
  • S3 хранилището на базата на SeaweedFS стана по-гъвкаво на ниво компоненти. Helm-чартът позволява независимо конфигуриране на всеки компонент и неговите ресурси: master-узли, volume-сървъри (с поддръжка на множество зони), база данни и S3 шлюз. Администраторите могат да задават за всеки компонент брой реплики, лимити на CPU/памет и обем хранилище.
  • Интегрирана е ФС SeaweedFS 3.97 с поддръжка за сървърно шифроване на S3 контейнери (SSE-C, SSE-KMS, SSE-S3). При обновление на Cozystack версията на SeaweedFS ще бъде актуализирана, а спецификацията на услугите автоматично преобразувана в нов формат.
  • NGINX контролерът сега може да се конфигурира на ниво всяка реплика: могат да се задават заявки/лимити на CPU и памет директно или да се избира един от готовите предварителни настройки.
  • Ако на виртуалната машина е назначен външен IP, той винаги се използва за egress трафик, независимо от метода на назначаване на този IP.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster