
logo przytulnego stosu
PaaS (Platforma jako usługa) orazTo rozwiązanie chmurowe która zapewnia programistom zarówno sprzęt, jak i oprogramowanie niezbędne do tworzenia oprogramowania, pozwalając użytkownikom skupić się wyłącznie na tworzeniu aplikacji i zarządzaniu nimi, nie martwiąc się o utrzymanie infrastruktury.
Cozystack to platforma PaaS, projekt open source i oparty na Kubernetes pozycjonuje się jako platforma pod klucz dla dostawców usług hostingowych oraz ramy tworzenia chmur publicznych i prywatnych.
O Cozystacku
Platforma Instaluje się bezpośrednio na serwerach i obejmuje wszystkie aspekty przygotowania infrastruktury w celu świadczenia usług zarządzanych. Cozystack umożliwia uruchamianie i udostępnianie klastrów, baz danych i maszyn wirtualnych Kubernetes na żądanie.
Jako podstawowy stos technologii wykorzystywane są Talos Linux i Flux CD, Obrazy z systemem, jądrem i niezbędnymi modułami są generowane z wyprzedzeniem i aktualizowane atomowo, co pozwala obejść się bez komponentów takich jak dkms i menedżer pakietów i zapewnia stabilną pracę.
Do uruchamiania maszyn wirtualnych wykorzystywana jest technologia KubeVirt, która pozwala na uruchamianie klasycznych maszyn wirtualnych bezpośrednio w kontenerach Kubernetes i posiada już wszystkie niezbędne integracje z Cluster API, aby uruchamiać zarządzane klastry Kubernetes w ramach sprzętowego klastra Kubernetes.
Cozystack dba o:
- tworzyć, aktualizować, usuwać dokumenty w bazie danych;
- uwierzytelniać użytkowników i aplikacje klienckie;
- wysyłać maile;
- rozpocząć zadania na serwerze. Konektory importujące dane ze zdalnych stron internetowych to zadania. Zadania mogą być zadaniami jednorazowymi (wyślij wiadomość) lub zadaniami cyklicznymi. Zadania wymagające działania kodu innej firmy po stronie serwera (takiego jak łączniki) są uruchamiane w trybie piaskownicy;
- API replikacji baz danych, które umożliwia synchronizację dokumentów pomiędzy serwerem a lokalnymi bazami danych, np. na klientach mobilnych.
Zrzut ekranu z CosyStack
Jeden zkluczowe cechy z platformya to prosta metoda instalacji w pustym centrum danych używając PXE i podobnego do Debiana instalatora talos-bootstrap. Pomimo zainteresowania komercyjnego, Projekt jest rozwijany przez entuzjastów społeczności i planuje zawsze pozostać wolnym. Został złożony wniosek o przeniesienie Cozystack pod skrzydła organizacji CNCF (Cloud Native Computing Foundation).
Oprócz tego onPlatforma zawiera implementację fabryka sieci oparta na Kube-OVN i używa Cilium do organizowania sieci usług, a MetalLB do reklamowania usług za granicą. Pamięć masowa jest zaimplementowana na bazie LINSTOR, który proponuje użycie ZFS jako warstwy bazowej do przechowywania i DRBD do replikacji. Istnieje wstępnie skonfigurowany stos monitorowania oparty na VictoriaMetrics i Grafana.
Dla zainteresowanych dowiedzeniem się więcej na ten temat warto wiedzieć, że kod platformy dostępny jest pod adresem GitHub i jest rozpowszechniany na licencji Apache-2.0.
Jak zainstalować Cozystack?
Jak już wspomnieliśmy, platformę można zainstalować, kompilując ją z kodu źródłowego lub także za pomocą talos-bootstrap, prostszej i bardziej ostatecznej metody instalacji, która pozwala na uruchomienie Cozystack przy użyciu metody PXE lub ISO na zestawie serwerów w centrum podstawowe dane. Możesz uzyskać kod źródłowy lub obraz ISO z linku poniżej.
Dla tych, którzy są zainteresowani możliwością instalacji Cozystack, powinieneś wiedzieć, że musisz najpierw mieć następujące zależności:
- Odwrotne proxy (nginx, caddy, haproxy itp.)
- Serwer SMTP
- KanapaDB 3
- git
- Go
- Magia obrazu
Teraz, aby zainstalować Cozystack, musisz otworzyć terminal i wpisać:
git clone git@github.com:cozy/cozy-stack.git
cd cozy-stack
make
Następnie musimy dodać $GOPATH/bin do $PATH:
export PATH="$(go env GOPATH)/bin:$PATH"
Gdy już to zrobimy, możemy teraz przystąpić do konfigurowania przytulnego stosu za pomocą pliku konfiguracyjnego, a w tym przypadku CouchDB musi już działać na domyślnym porcie 5984, serwer można uruchomić za pomocą:
cozy-stack serve
A następnie, aby utworzyć instancję do programowania:
make instance
Na koniec, jeśli chcesz dowiedzieć się więcej na ten temat, możesz zapoznać się ze szczegółami W poniższym linku.