The release of the free PaaS platform Cozystack 1.2, built on Kubernetes, is now available. The project aims to provide a ready-made platform for hosting providers and a framework for building private and public clouds. The platform is installed directly on servers and encompasses all aspects of preparing infrastructure for delivering managed services. Cozystack allows 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 platform includes a free implementation of the network infrastructure (fabric) based on Kube-OVN and utilizes Cilium for organizing the service network, with MetalLB for announcing services externally. Storage is implemented on LINSTOR, offering the use of ZFS as the base layer for storage and DRBD for replication. There is a pre-configured monitoring stack based on VictoriaMetrics and Grafana. To launch of virtual machines KubeVirt technology is used, which allows running traditional virtual machines directly in Kubernetes containers and already has all the necessary integrations with Cluster API for launching managed Kubernetes clusters within a 'bare metal' Kubernetes cluster. Within the platform, you can deploy Kafka, FerretDB, PostgreSQL, Cilium, Grafana, Victoria Metrics, and other services with a click.
Key innovations in Cozystack 1.2.0:
- The Dashboard has added the 'Managed OpenSearch' application, supporting all releases of the OpenSearch platform. A multi-role topology is available, TLS is enabled by default, HTTP Basic authentication works out of the box, and if needed, the web interface for OpenSearch Dashboards can be deployed along with the engine.
- The VPC application has implemented support for VPC Peering, allowing direct connection of tenant private networks without routing traffic through public points. In multi-tenant installations, operators can design cleaner internal network topologies and expose only the necessary traffic externally. Deterministic allocation has been added (the key to connect to is specified, and iroh finds the associated host and establishes an encrypted connection using the QUIC protocol). Direct P2P connections are established whenever possible, but if not, it falls back to using relays, which are also employed for host discovery by keys. You can run your own relay or connect to public relays supported by the community. for peering and support for static routes.
- The SchedulingClass system has been implemented, allowing operators to manage where tenant workloads will run. For example, workloads can be tied to specific data centers, hardware classes, or node groups, without forcing tenants to understand the details of the Kubernetes scheduler's operation. By default, the cozystack-scheduler is enabled, making SchedulingClass part of the standard platform installation.
- VictoriaLogs has been transitioned to a cluster mode based on VLCluster to enhance the scalability of the logging stack.
- LINSTOR now supports moving volumes after cloning and restoration, improving data placement in clone and restore scenarios.
- external-dns is available as a separate additional package.
Source: opennet.ru
