Aplikacje serverless są szybsze i prostsze dzięki OpenShift

Red Hat OpenShift Serverless to zestaw zarządzanych komponentów opartych na Kubernetes, ukierunkowanych na mikroserwisy, kontenery i realizacje Function-as-a-Service (FaaS).

Aplikacje serverless są szybsze i prostsze dzięki OpenShift

To rozwiązanie „w pudełku” zawiera środki bezpieczeństwa i zarządzania ruchem, oraz łączy w sobie Red Hat Operators, Knative i Red Hat OpenShift do uruchamiania obciążeń stateless i serverless na platformie OpenShift w środowiskach prywatnych, publicznych, hybrydowych i multi-cloud.

OpenShift Serverless pozwala developerom całkowicie skupić się na tworzeniu aplikacji nowej generacji, oferując szeroki wybór języków programowania, frameworków, środowisk deweloperskich i innych narzędzi do tworzenia oraz wdrażania innowacyjnych produktów biznesowych.

Kluczowe cechy Red Hat OpenShift Serverless:

  • Szeroki wybór języków programowania i komponentów runtime dla aplikacji serverless. Możesz wybrać dokładnie ten zestaw narzędzi, który odpowiada Twoim potrzebom.
  • Automatyczne skalowanie poziome w zależności od intensywności zapytań lub w przypadku wystąpienia zdarzeń dla efektywnego zarządzania zasobami na podstawie rzeczywistych, a nie hipotetycznych potrzeb.
  • Pełna integracja z OpenShift Pipelines, systemem ciągłej integracji i dostarczania (CI/CD) opartym na Kubernetes, bazującym na Tekton.
  • Baza w postaci Red Hat Operator, umożliwiająca administratorom bezpieczne zarządzanie działającymi instancjami oraz ich aktualizację, a także organizująca cykl życia aplikacji w stylu usług chmurowych.
  • Stałe śledzenie nowych wydań community, w tym Knative 0.13 Serving, Eventing i kn (oficjalne CLI dla Knative) – jak w przypadku wszystkich produktów Red Hat oznacza to skrupulatne testowanie i weryfikację na różnych platformach i konfiguracjach OpenShift.

Ponadto Red Hat ściśle współpracuje w zakresie technologii Serverless z wieloma partnerami, a także z Microsoftem w kwestiach Azure Functions oraz KEDA (więcej informacji w tutaj). W szczególności certyfikowany operator OpenShift już istnieje u TriggerMesh, a niedawno zaczęliśmy współpracę Serverless.com, aby Serverless Framework mógł działać z OpenShift Serverless i Knative. Te partnerstwa można traktować jako oznakę dojrzałości serverless i początek kształtowania się ekosystemu branżowego.

Jeśli wcześniej zainstalowałeś wersję beta Red Hat OpenShift Serverless, możesz ją zaktualizować do ogólnie dostępnej wersji GA (general availability). W tym celu należy skonfigurować kanał aktualizacji subskrypcji OLM, jak pokazano na Rys. 1.

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 1. Aktualizacja kanału subskrypcji.

Kanał subskrypcji należy zaktualizować, aby odpowiadał wersji OpenShift Container Platform 4.4 lub 4.3.

Knative Services – najwyższej klasy usługi

OpenShift 4.4 znacząco upraszcza wdrażanie aplikacji z funkcjami OpenShift Serverless, umożliwiając łatwe uruchamianie usług Knative bezpośrednio z trybu dewelopera w webowym interfejsie OpenShift.

Dodając nową aplikację do projektu, wystarczy wskazać dla niej typ zasobów Knative Service, co natychmiast aktywuje funkcjonalność OpenShift Serverless oraz włącza skalowanie do zera w trybie oczekiwania, jak pokazano na Rys. 2.

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 2. Wybór Knative Service jako typu zasobów.

Prosta instalacja z użyciem Kourier

Jak już pisaliśmy w zapowiedzi wersji OpenShift Serverless 1.5.0 Tech Preview, wykorzystanie Kourier umożliwiło znaczne zmniejszenie listy wymagań przy instalacji Serverless na OpenShift, a w wersji GA tych wymagań jest jeszcze mniej. Wszystko to przyczynia się do zmniejszenia zużycia zasobów, przyspieszenia zimnego uruchamiania aplikacji i eliminacji wpływu typowych, nie-serverless obciążeń działających w tej samej przestrzeni nazw.

Ogólnie rzecz biorąc, te ulepszenia oraz poprawki w OpenShift 4.3.5 przyspieszają tworzenie aplikacji z wcześniej zbudowanego kontenera o 40-50% w zależności od rozmiaru obrazu.
Jak wszystko przebiega bez użycia Kourier, można zobaczyć na Rys. 3:

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 3. Czas tworzenia aplikacji, gdy Kourier nie jest używany.

Jak wszystko przebiega, gdy stosuje się Kourier, można zobaczyć na Rys. 4:

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 4. Czas tworzenia aplikacji przy użyciu Kourier.

TLS/SSL w trybie automatycznym

OpenShift Serverless może teraz automatycznie tworzyć i wdrażać TLS/SSL dla trasy (OpenShift Route) Twojego Knative Service, abyś nie musiał się martwić o realizację i utrzymanie tych funkcji podczas pracy nad aplikacją. Innymi słowy, Serverless uwalnia programistów od trudności związanych z TSL, zachowując jednocześnie wysoki poziom bezpieczeństwa, którego wszyscy oczekują od Red Hat OpenShift.

Interfejs wiersza poleceń OpenShift Serverless

W OpenShift Serverless nazywa się kn i jest dostępny bezpośrednio w konsoli OpenShift na stronie Narzędzia wiersza poleceń, jak pokazano na Rys. 5:

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 5. Strona pobierania narzędzia wiersza poleceń OpenShift Serverless.

Pobierając z tej strony, otrzymujesz wersję kn dla MacOS, Windows lub Linux, która została sprawdzona przez Red Hat i gwarantuje brak złośliwego oprogramowania.

Na Rys. 6 pokazano, jak w kn można w jednej komendzie wdrożyć serwis, aby w kilka chwil stworzyć instancję aplikacji na platformie OpenShift z dostępem przez URL:

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 6. Użycie narzędzia wiersza poleceń kn.

To narzędzie pozwala na pełne zarządzanie zasobami Serverless Serving i Eventing bez potrzeby przeglądania lub edytowania jakichkolwiek konfiguracji YAML.

Ulepszona wizualizacja Topology w trybie dewelopera konsoli

Teraz zobaczmy, jak poprawiona wizualizacja Topology ułatwia zarządzanie usługami Knative.

Wizualizacja skoncentrowana na Knative Service

Usługi Knative na stronie wizualizacji Topology wyświetlane są w postaci prostokąta, zawierającego wszystkie rewizje, jak pokazano na Rys. 7:

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 7. Usługi Knative na stronie wizualizacji Topology.

Tutaj można na pierwszy rzut oka zobaczyć bieżące procenty podziału ruchu Knative Service oraz pogrupować usługi Knative w ramach grupy aplikacji, aby łatwo wizualnie monitorować co się dzieje wewnątrz wybranej grupy.

Zwijanie list usług OpenShift Knative

Kontynuując temat grupowania, warto wspomnieć, że w OpenShift 4.4 można zwijać usługi Knative w obrębie grupy aplikacji dla bardziej wygodnego przeglądania i zarządzania usługami, gdy w projekcie wdrażane są bardziej złożone aplikacje.

Usługa Knative w szczegółach

W OpenShift 4.4 także poprawiono boczny panel dla usług Knative. Pojawiła się na nim karta Zasoby, na której wyświetlane są komponenty serwisu, takie jak Pods, Revisions i Routes. Te komponenty również umożliwiają szybkie i proste przejście do logów poszczególnych podów.

Wizualizacja Topology również pokazuje procenty podziału ruchu i nawet pozwala szybko zmienić konfigurację. Dzięki temu można szybko poznać podział ruchu dla wybranej usługi Knative w czasie rzeczywistym po liczbie podów działających dla danej rewizji, jak pokazano na Rys. 8.

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 8. Podział ruchu Knative Service.

Głęboki wgląd w rewizje Serverless

Widok Topologii teraz umożliwia znacznie głębsze spojrzenie na wybraną rewizję, na przykład, można szybko zobaczyć wszystkie jej podzbiory i, jeśli to konieczne, przejrzeć ich dzienniki. Ponadto w tym widoku można łatwo uzyskać dostęp do wdrożeń i konfiguracji rewizji, a także do podścieżki, która wskazuje bezpośrednio na tę rewizję, jak pokazano na Rys. 9:

Aplikacje serverless są szybsze i prostsze dzięki OpenShift
Rys. 9. Zasoby skojarzone z rewizjami.

Mamy nadzieję, że opisane powyżej nowości przydadzą się Wam przy tworzeniu i zarządzaniu aplikacjami serverless, a w kolejnych wersjach pojawi się jeszcze więcej przydatnych funkcji dla programistów, takich jak możliwość tworzenia źródeł zdarzeń i inne.

Zainteresowany?

Wypróbuj OpenShift!

Twoja opinia jest dla nas ważna

Powiedz, co myślisz o serverless. Dołącz do naszej grupy Google OpenShift Developer Experience aby uczestniczyć w dyskusjach i seminariach Office Hours, aby współpracować z nami i przesyłać swoje opinie oraz sugestie.

Dodatkowe informacje

Dowiedz się więcej o tworzeniu aplikacji OpenShift za pomocą następujących zasobów Red Hat:

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster