Release of Cozystack 0.17.0, an open PaaS platform based on Kubernetes

The release of the free PaaS platform Cozystack 0.17.0, built on Kubernetes, has been published. The project aims to provide a ready-made platform for hosting providers and a framework for building private and public clouds. The platform installs directly on servers and covers all aspects of preparing the infrastructure for providing managed services. Cozystack allows for the launching and provisioning of Kubernetes clusters, databases, and virtual machines. The platform's code is available on GitHub and is distributed under the Apache-2.0 license.

The base technology stack uses Talos Linux and Flux CD. The images with the system, kernel, and necessary modules are pre-built and updated atomically, allowing for the avoidance of components such as dkms and package managers, while ensuring stable operation. A straightforward installation method is provided in an empty data center using PXE and the Debian-like installer talos-bootstrap.

The platform includes a free implementation of network infrastructure that is based on Kube-OVN and uses Cilium for organizing the service network, with MetalLB for announcing services externally. Storage is implemented on LINSTOR, which offers the use of ZFS as a base layer for storage and DRBD for replication. A pre-configured monitoring stack is based on VictoriaMetrics and Grafana. To launch of virtual machines KubeVirt technology is used, which allows for running traditional virtual machines directly in Kubernetes containers and already has all the necessary integrations with Cluster API for launching managed Kubernetes clusters within the 'bare-metal' Kubernetes cluster.

In the new version:

  • The platform now includes the ability to create virtual machines with multiple disks, perform installations from CD-ROM, and switch disks between different virtual machines. The old 'Virtual Machine' application has been divided into two separate applications: 'vm-disk' (Virtual Machine Disk) and 'vm-instance' (Virtual Machine Instance). The vm-disk application supports booting images from HTTP or local storage; when creating a disk, you can specify the source and the type of image — CD-ROM or classic. The vm-instance application allows starting a virtual machine from the created disks. The compatibility with the old Virtual Machine application has been retained.
  • Options for instanceType and instanceProfile have been added, along with a default set of instances and profiles for Ubuntu, RHEL, Alpine, and Windows. The ability to configure a virtual machine with optimal parameters depending on the OS is provided (for example, enabling TPM and virtio devices, using a tablet pointer), and instead of specifying resources for the virtual machine, standardized instances specifically designed for certain load types can be used. Instance types also apply to Kubernetes, allowing for more efficient planning of your node groups.
  • The ingress feature has been enhanced with the option to enable proxying for loading images from local machines, and CDI has been updated for more accurate operation with block devices. It is now possible to load images for LINSTOR using the virtctl utility.
  • Support for virtual machines running Windows has been added. Using the new vm-disk and vm-instance, the installation of Windows 10 and Windows Server 2015 from ISO has been tested, followed by switching to VirtIO drivers.
  • When ordering S3 buckets, automatic deployment of a web interface for accessing them has been implemented. Through the web interface, users can upload and delete files, as well as generate temporary links for public access. The interface is based on s3manager, which is distributed under the Apache 2.0 license.
    Release of Cozystack 0.17.0, an open PaaS platform based on Kubernetes
  • Alerts for FluxCD have been added, displaying the status of releases. Alerts are now structured and categorized, and the problematic resource is now displayed in the Resource field.
  • There is now the ability to deliver alerts to Telegram with deduplication and buttons for managing the lifecycle of each alert.
  • The Cluster API has included the MachineHealthChecks controller, which will monitor the health of nodes in the Kubernetes cluster. In case of issues, nodes will be automatically re-provisioned.
  • The external-dns component has been added, allowing for automatic DNS record configuration in Cloudflare. Additionally, it is now possible to order certificates via the Cloudflare API using the DNS method.
  • The external-secrets-operator has been introduced, enabling the synchronization of secrets with external systems.
  • Optional components have been introduced, which are disabled by default but can be enabled using the bundle-enable option in the Cozystack configuration.
  • Improved job scripts for initializing PostgreSQL and FerretDB, now waiting for the database to be up before performing any configuration actions.
  • Increased stability of Kube-OVN. Disabled communication with NetworkManager. This issue was blocking the launch of OVN controllers on some systems.
  • Added logging configuration for Clickhouse. Logs moved to a separate section and rotation configured.
  • Updated components: LINSTOR 1.29.1, Talos Linux 1.8.1, and Cilium 1.16.3.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster