Opublikowano wersję wolnej platformy PaaS Cozystack 0.8.0, zbudowanej na bazie Kubernetes. Projekt ma na celu dostarczenie gotowej platformy dla dostawców usług hostingowych oraz ram dla budowy prywatnych i publicznych chmur. Platforma jest instalowana bezpośrednio na serwerach i obejmuje wszystkie aspekty przygotowania infrastruktury do świadczenia zarządzanych usług. Cozystack umożliwia uruchamianie i dostarczanie klastrów Kubernetes, baz danych i maszyn wirtualnych. Kod platformy jest dostępny na GitHubie i rozpowszechniany na licencji Apache-2.0.
Jako podstawowy stos technologii używany jest Talos Linux i Flux CD. Obrazy systemu, jądra i niezbędnych modułów są wstępnie formowane i aktualizowane atomowo, co pozwala uniknąć takich komponentów jak dkms i menedżer pakietów, a tym samym gwarantuje stabilną pracę. Oferowany jest prosty sposób instalacji w pustym centrum danych za pomocą PXE i instalatora podobnego do debiana talos-bootstrap.
Platforma obejmuje wolną implementację sieciowej fabryki na bazie Kube-OVN i wykorzystuje Cilium do organizacji sieci serwisowej, MetalLB do ogłaszania usług na zewnątrz. Przechowywanie danych jest realizowane na LINSTOR, gdzie proponowane jest wykorzystanie ZFS jako podstawowej warstwy dla przechowywania oraz DRBD do replikacji. Wbudowany jest skonfigurowany stos monitorowania oparty na VictoriaMetrics i Grafana. Do uruchomienia maszyn wirtualnych wykorzystywana jest technologia KubeVirt, która pozwala na uruchamianie klasycznych maszyn wirtualnych bezpośrednio w kontenerach Kubernetes i już posiada wszystkie niezbędne integracje z Cluster API do uruchamiania zarządzanych klastrów Kubernetes w ramach „żelaznego” klastra Kubernetes.
W nowej wersji:
- FluxCD został zaktualizowany do wersji 2.3. Całkowicie przebudowano logikę instalacji FluxCD, a helm chart społecznościowy został zastąpiony oficjalnym operatorem fluxcd.
- Dodano wsparcie dla zarządzanych rozszerzeń dla niestandardowych klastrów: teraz można je zainstalować jednym kliknięciem w GUI, w tym ingress-nginx, cert-manager i FluxCD.
- Dodano możliwość routingu ruchu do niestandardowych klastrów Kubernetes przez główny kontroler ingress.
- Dodano testy e2e.
- Dla PostgreSQL zrealizowano możliwość włączenia synchronizacji replikacji w oparciu o kworum.
- Dodano podstawowe wsparcie dla architektury ARM w zestawie distro-hosted.
- Ulepszenia w DX: dodano zewnętrzny procesor kustomize, dzięki czemu make apply / make diff symuluje operację „apply”, jak gdyby była wykonana przez FluxCD, i pokazuje tylko aktualne zmiany.
- Zawarty w platformie operator Etcd zaktualizowany do wersji 0.3.0:
- Dodano wsparcie dla ARM.
- Opracowano architekturę operatora, stworzono diagram przepływu, wprowadzono zmiany poprawiające sprawdzanie statusu.
- Udoskonalono pracę z magazynem: tryb automatycznego pakowania jest teraz domyślnie włączony, dodano logikę automatycznego obliczania quota-backend-bytes, które teraz jest ustawiane automatycznie do 95% rozmiaru PVC (domyślnie etcd nic nie wie o rozmiarze magazynu, a nowa funkcja włącza automatyczne ustawienia magazynu domyślnie).
Źródło: opennet.ru
