Co czyni przedsiębiorstwo solidnym i elastycznym? Możliwość tworzenia i uruchamiania złożonych aplikacji, mogących obsługiwać nieustrukturyzowane dane oraz obsługiwać równocześnie wielu użytkowników rozsianych po całym świecie. Wśród najnowszych wymagań dotyczących zarządzania danymi, sporą popularnością cieszą się technologie przechowywania danych w NoSQL, ponieważ zapewniają one wysoką skalowalność, szybkość i zmienność danych.

Wśród dostępnych rozwiązań NoSQL, Couchbase zaprojektowana jest tak, aby zapewniać dużym aplikacjom minimalne opóźnienia w zarządzaniu danymi. Dzięki łatwej obsłudze, szybkiemu działaniu oraz zaawansowanemu silnikowi do przetwarzania zapytań SQL, Couchbase jest w stanie sprostać większości wymagań, którym powinna sprostać baza danych.

Aby umożliwić naszym klientom korzystanie ze wszystkich zalet tego systemu przechowywania danych, postanowiliśmy tym razem zająć się rozwiązaniem jednokliknięciowym. Rozwiązanie zostało opracowane w taki sposób, aby łatwo można było wdrożyć skalowalny klaster Couchbase do pojemników Dockera wewnątrz chmury. W poniższym artykule spojrzymy również na konkretne specyfikacje pakietu i przeanalizujemy szczegółowy przewodnik po jego konfiguracjach instalacyjnych i łączności.

Specyfikacje autoskalowalnego pakietu Couchbase Cluster

Pakiet Couchbase Cluster opiera się na oficjalnym obrazie Dockera couchbase, wykorzystywanym jako baza danych. Podczas jego wdrażania można stworzyć dowolną liczbę węzłów klastra (do 10 instancji). Wszystkie elementy klastra, zarówno te stworzone na samym początku, jak i te dodawane z biegiem czasu, zostaną automatycznie podłączone w celu uzyskania pojedynczego systemu przechowywania danych charakteryzującego się wysoką dostępnością. W ten sposób otrzymujemy gotowe do użycia logiczne grupowanie instancji kontenera, a nie zestaw autonomicznych węzłów, które wymagają dodatkowych urządzeń konfiguracyjnych do równomiernego rozkładu danych.

couchbase server cluster

Każdy pojemnik Couchbase ma, w obrębie pakietu, przypisanych 16 dynamicznych cloudletów (dynamic cloudlets), jako przestrzeń zasobów do pionowego skalowania (vertical scaling), o maksymalnej pojemności 2 GIB RAM i 6.4 GHz CPU. W razie konieczności limit ten można dostosować zgodnie z wytycznymi przedstawionymi w powyższej instrukcji.

Jeśli chodzi o parametry alokacji pamięci, są one ustawione domyślnie dla każdego węzła w klastrze w następujący sposób:

  • Rozmiar pamięci RAM dla danych (Data RAM size), wymagany do obsługi operacji danych CRUD (tworzenie/ czytania/ uaktualnianie/ usuwanie), ograniczony jest do 1024 MIB,
  • Pamięć Index RAM, która utrzymuje indeksy drugorzędne i przeprowadza skanowanie indeksu dla zapytań N1QL, może zużywać do 256 MIB,
  • Full Text Search (FTS) RAM, który używany jest do tworzenia, zarządzania i wyszukiwania indeksów pełnotekstowych w dokumentach JSON, ma przypisane maksymalnie 256 MIB.

Konfiguracje autoskalowania i przekształcania

Klaster Couchbase jest rozszerzany/zmniejszany za pomocą automatycznego skalowania poziomego (tj. poprzez zmianę liczby kontenerów) na podstawie następujących warunków zużycia zasobów:

  • +1 dowiązanie (do 10 instancji na warstwę), jeśli zużycie pamięci RAM lub CPU przekroczy 70% przypisanej wydajności przez co najmniej 5 minut,
  • -1 dowiązanie (ale nie mniej niż liczba kontenerów, które wcześniej podałeś, np. podczas instalowania pakietów) za każdym razem, gdy pamięć RAM lub CPU spadnie poniżej 40% ustalonego limitu i pozostanie w tym przedziale przez co najmniej 5 minut.

Odpowiednie modyfikacje są automatycznie stosowane do dodania / usunięcia węzłów Couchbase. Po każdej wykonanej operacji skalowania otrzymujesz powiadomienie również na e-mail. Jeśli to konieczne, domyślne ustawienia wyzwalania automatycznego skalowania można dostosowywać (pomocny artykuł na temat automatycznego skalowania).

Za każdym razem, gdy klaster jest powiększany lub pomniejszany, następuje proces ponownego przekształcania (rebalancing). Odpowiada to zautomatyzowanej operacji redystrybucji danych w ramach dostępnych węzłów w klastrze. W trakcie tej operacji klaster pozostaje w pełni sprawny i nadal obsługuje żądania klientów.

rebalancing

W ten sposób elastyczny system klastrów Couchbase w UniCloud może działać w sposób ciągły, zapewniając wysoką dostępność Twoich usług przy minimalnym poziomie zaangażowania z Twojej strony.

Klaster Couchbase w chmurze: Przesyłanie za pomocą jednego kliknięcia

Dzięki wcześniej przygotowanemu rozwiązaniu, wszystko można wykonać za pomocą jednego kliknięcia. Cały proces wdrażania klastra Couchbase jest w pełni zautomatyzowany i nie wymaga żadnych ręcznych konfiguracji – wystarczy zaledwie kilka kroków i wszystko jest gotowe.

  1. Zaloguj się do UniCloud podając swoje dane uwierzytelniające i kliknij Lista gotowych aplikacji w górnym panelu.
    lista gotowych aplikacji UniCloud
    W części Aplikacje, w polu wyszukiwania wpiszAuto Scalable Couchbase Cluster, a następnie Zainstaluj.04 auto scalable couchbase cluster
  2. W otwartym okienku ustaw liczbę Węzłów w Klastrze (Nodes in Cluster), jaka ma zostać utworzona. Pamiętaj, że wartość ta będzie podana jako minimalny rozmiar klastra i nie będzie można jej zmniejszyć ze względu na automatyczne skalowanie. Następnie wpisz nazwę Środowiska, podaj Nazwę wyświetlaną i kliknij Zainstaluj.04 konfiguracja couchbase cluster
  3. Gdy przesyłanie klastra zostanie zakończone, w nowym okienku pojawią się dane uwierzytelniające do jego zarządzania. W tym samym czasie zostaną one również na adres email przypisany do konta.Kliknij link Web Console i podaj wspomniane dane, aby przejść do panelu zarządzania Couchbase.
  4. Na stronie startowej pojawi się widok ogólny Cluster Overview. Składa się on z następujących sekcji:
    • Cluster (Klaster) – przeznaczony do dostarczania danych o klastrze RAM oraz o zużyciu przestrzeni dyskowej,
    • Servers (Serwery) – wyświetla ogólne informacje o liczbie serwerów w klastrze oraz ich statusie.

couchbase cluster overview

Szczegółowe informacje na temat pracy z Couchbase Web Console, znajdują się w oficjalnej dokumentacji.

Nasz klaster już działa a to oznacza, że dysponujesz wysoce dostępnym i elastycznym miejscem do przechowywania danych, które może w niesamowity sposób wspomagać Twoją aplikację. Odkrywaj niezwykłą wydajność przedstawionego klastrowego rozwiązania Couchbase DB na platformie UniCloud.