Kubernetes (K8s) jest platformą ułatwiającą wdrażanie i zarządzanie aplikacjami dostarczanymi w kontenerach jako mikrousługi. Umożliwia migrację istniejących aplikacji do kontenerów, z podniesieniem ich wydajności i odporności na uszkodzenia. Klaster K8s w pełni kontroluje swoje kontenery, łącznie z aktualizacjami, samonaprawianiem i zarządzaniem bezpieczeństwem. Klastry K8s mogą być uruchamiane niezależnie od dostawcy – bezpośrednio na fizycznych serwerach, ale również w modelu chmury publicznej lub prywatnej. O ile jednak sam klaster K8s automatyzuje operacje administracyjne i wspiera działanie umieszczonych w nim kontenerów z aplikacjami, o tyle w środowiskach chmurowych jako problematyczne jawi się zarządzanie samym klastrem, czyli drugi aspekt optymalizacji skomplikowanego środowiska związany z dopasowaniem wielkości węzłów klastra do potrzeb obsługiwanych przez niego kontenerów. Maksymalna wydajność i minimalne koszty uzyskane zostaną w chwili, kiedy rozmiar węzła i działających w nim kontenerów zostaną zrównoważone.
Wychodząc naprzeciw tym potrzebom, platforma UniCloud umożliwia uruchomienie hostingu Kubernetes z zachowaniem maksymalnej wydajności pod względem zużycia zasobów.
- konfiguracja klastra odbywa się w sposób w pełni zautomatyzowany
- włączone jest natychmiastowe skalowanie pionowe oparte o zmiany obciążenia
- skalowanie poziome węzłów może odbywać się w sposób ręczny lub automatyczny, zintegrowany z automatyką K8s
- model cenowy Pay-per-Use jest odblokowany dla hostingu Kubernetes, więc nie należy obawiać się przepłacania za zasoby zarezerwowane, lecz niewykorzystywane
- system współdzielonego storage w UniCloud zintegrowany jest z Dynamic Volume Provisioner
- żadne publiczne adresy IPv4 nie są domyślnie wymagane, współdzielony Load Balancer działa od razu po uruchomieniu jako serwer proxy
Topologia klastra Kubernetes w UniCloud
Instalacja klastra Kubernetes
Aby rozpocząć, zaloguj się do pulpitu UniCloud, znajdź na liście gotowych aplikacji klaster Kubernetes i kliknij Zainstaluj.
Możesz również zaimportować manifest z GitHub, wykorzystując link:
https://github.com/jelastic-jps/kubernetes/blob/master/manifest.jps
Wybierz typ instalacji:
- czysty klaster z prostym przykładem
- niestandardowy stos za pomocą poleceń powłoki, wpisując listę poleceń dla przygotowania dedykowanego wdrożenia aplikacji
Domyślnie proponowane jest zainstalowanie środowiska serwera Open Liberty ze wstępnie zdefiniowanym zestawem poleceń.
W następnym kroku wybierz wymaganą topologię klastra, w zależności od zastosowania (środowiska deweloperskie i produkcyjne). Do celów testowych proponowana jest lekka wersja, podczas gdy środowiska produkcyjne przygotowywane są ze wstępnie skonfigurowaną wysoką dostępnością.
Możesz dołączyć dedykowaną pamięć masową NFS z dynamicznym udostępnianiem wolumenów. Domyślnie każdy węzeł ma własny system plików, w celu uzyskania dostępu z innych kontenerów, dane należy umieścić na dedykowanym wolumenie.
Wciśnij przycisk Zainstaluj i poczekaj, aż klaster zostanie uruchomiony.
W kolejnych artykułach przybliżymy proces konfiguracji i zarządzania klastrami Kubernetes.