Red Hat poinformował o wprowadzeniu na rynek platformy Red Hat OpenShift 4.2, środowiska z rozszerzonym i udoskonalonym zestawem narzędzi dla programistów.
Platforma Red Hat OpenShift 4, która pojawiła się na rynku w maju, to nowa generacja sprawdzonego środowiska Kubernetes dla przedsiębiorstw. Została przeprojektowana w taki sposób, aby uwzględnić złożoność procesów koordynacji aplikacji kontenerowych w systemach produkcyjnych. W OpenShift 4.2 zaimplementowane są także funkcje automatycznej aktualizacji i zarządzania cyklem życia oprogramowania w całej chmurze hybrydowej, oparte na sprawdzonych mechanizmach systemów operacyjnych Red Hat Enterprise Linux i Red Hat Enterprise Linux CoreOS.
Wersja Red Hat OpenShift 4.2 to także narzędzia przeznaczone specjalnie dla programistów i projektantów. Ułatwia ona pracę administratorom klastra, którzy mogą w łatwiejszy sposób zarządzać platformą i aplikacjami. Dostępne są również narzędzia do migracji platformy OpenShift z wersji 3.x do 4.x, a także nowa opcja instalacji w trybie bez połączenia.
Tworzenie innowacyjnych rozwiązań z wykorzystaniem technologii Kubernetes
Red Hat OpenShift to platforma, która ułatwia przedsiębiorstwom zastosowanie infrastruktury Kubernetes, wspierającej szybkie tworzenie i wdrażanie aplikacji. Zespoły operacyjne i programistyczne mają okazję skuteczniej ze sobą współpracować i w efektywny sposób wdrażać aplikacje kontenerowe. W wersji OpenShift 4.2 twórcy aplikacji uzyskują dostęp do zoptymalizowanego środowiska Kubernetes dopasowanego do potrzeb programistów. Oferuje ona także nowe narzędzia i dodatkowe wtyczki, których można użyć podczas budowania kontenerów, w procesach ciągłej integracji i ciągłego dostarczania oraz do obsługi tzw. przetwarzania bezserwerowego. Dzięki temu użytkownicy mogą się skoncentrować na kodowaniu, a nie zajmować szczegółami działania środowiska Kubernetes.
Wśród elementów platformy OpenShift 4.2 ułatwiających pracę programistom znajdują się następujące narzędzia klienckie:
- Konsola WWW dzięki której użytkownicy mogą skupić się na realizacji najważniejszych zadań. Prezentowane są jedynie niezbędne informacje i elementy konfiguracji. Rozszerzony interfejs użytkownika do obsługi topologii aplikacji i budowania aplikacji ułatwia kompilowanie, wdrażanie i wizualizację działania aplikacji kontenerowych oraz zasobów klastra.
- odo, interfejs wiersza komend przeznaczony dla programistów, który upraszcza proces tworzenia aplikacji na platformie OpenShift. Interakcja odbywa się w podobny sposób jak w przypadku komendy „git push”. Programiści, którzy nie zetknęli się dotąd z technologią Kubernetes, mogą tworzyć aplikacje na platformie OpenShift bez konieczności wgłębiania się w szczegóły funkcjonowania kontenerów Kubernetes.
- Red Hat OpenShift Connector, czyli moduł obsługujący środowiska Microsoft Visual Studio Code, JetBrains IDE (w tym IntelliJ) oraz Eclipse Desktop IDE. Dzięki jego zastosowaniu łatwiej uwzględnić platformę OpenShift w istniejących procesach wytwarzania oprogramowania. Programiści mogą tworzyć, budować, debugować i wdrażać aplikacje przeznaczone na te platformy bez konieczności zmiany używanego na co dzień środowiska roboczego.
- Red Hat OpenShift Deployment Extension for Microsoft Azure DevOps. Użytkownicy zestawu narzędzi DevOps mogą wdrażać stworzone przez siebie aplikacje na platformie Azure Red Hat OpenShift oraz w innych klastrach OpenShift bezpośrednio z poziomu środowiska usług Microsoft Azure DevOps.
Praca z platformą OpenShift na laptopach i komputerach stacjonarnych
Dzięki kontenerom Red Hat CodeReady, które są obecnie ogólnie dostępnym rozwiązaniem, zespoły programistów mogą tworzyć aplikacje przeznaczone na platformę OpenShift na swoich laptopach. Wstępnie skonfigurowany klaster OpenShift jest dostosowany do pracy w taki sposób, a osobisty klaster pozwala usprawnić prace programistyczne.
Service Mesh
OpenShift Service Mesh to rozwiązanie zbudowane w oparciu o projekty Istio, Kiali i Jaeger, wzbogacone o możliwości operatorów Kubernetes. Pozwala ono uprościć tworzenie i wdrażanie aplikacji na platformie OpenShift oraz bieżące zarządzanie takimi aplikacjami. Oferuje zestaw funkcji przydatnych w nowoczesnych aplikacjach przeznaczonych bezpośrednio do chmury, np. w mikrousługach. Dzięki temu programiści nie muszą zajmować się złożonymi zagadnieniami związanymi z implementacją specyficznych usług sieciowych na potrzeby konstruowanych aplikacji i realizowanej logiki biznesowej.
Rozwiązanie Red Hat OpenShift Service Mesh, które zostało niedawno udostępnione na platformie OpenShift 4, pozwala klientom stworzyć kompleksowe środowisko pracy programistów. Obejmuje to takie kluczowe elementy, jak funkcje śledzenia i pomiaru wskaźników, wizualizacja i obserwowalność. Instalacja i konfiguracja środowiska możliwa jest po jednym kliknięciu. Jeśli chodzi o korzyści związane z bezpieczeństwem i działaniem sieci, warto wspomnieć o szyfrowaniu komunikacji wewnętrznej w ramach klastra oraz integracji z bramą API obsługiwaną przez rozwiązanie Red Hat 3scale.
Przetwarzanie bezserwerowe
OpenShift Serverless ułatwia programistom wdrażanie i uruchamianie aplikacji z możliwością ich skalowania oraz minimalizowania nieaktywnych obciążeń na żądanie. Rozwiązanie OpenShift Serverless zostało oparte na projekcie open source Knative. Obecnie znajduje się w fazie „Technology Preview” i jest dostępne w postaci operatora w każdym klastrze OpenShift 4. Operator OpenShift Serverless to prosta metoda szybkiego instalowania komponentów niezbędnych do wdrażania aplikacji i funkcji działających w modelu bezserwerowym na platformie OpenShift. Perspektywa konsoli programisty dostępna w środowisku OpenShift 4.2 pozwala uwzględnić opcje przetwarzania bezserwerowego w normalnej pracy programistów, np. w funkcjach importu z repozytorium Git i wdrażania obrazu. Użytkownicy mogą tworzyć aplikacje tego typu bezpośrednio z poziomu konsoli.
Oprócz integracji z konsolą programisty dostępne są także inne nowe funkcje ułatwiające tworzenie aplikacji w technologii Kubernetes. To między innymi kn — interfejs wiersza komend platformy Knative umożliwiający użytkownikom intuicyjną obsługę, a także funkcje grupowania obiektów potrzebnych w aplikacjach, niemodyfikowalne obrazy stanu kodu i konfiguracji oraz możliwość skojarzenia urządzenia końcowego w sieci z konkretną wersją lub usługą. Funkcje te są dostępne jako „Technology Preview” w rozwiązaniu OpenShift Serverless. Dają one programistom możliwość rozpoczęcia pracy z architekturą bezserwerową i oferują elastyczne opcje wdrażania aplikacji w chmurze hybrydowej niezależnie od infrastruktury, bez konieczności wiązania się z jednym dostawcą.
Procesy ciągłej integracji i ciągłego dostarczania oprogramowania w środowisku chmury
Procesy ciągłej integracji i ciągłego dostarczania (ang. Continuous Integration / Continuous Delivery; CI/CD) stanowią jedną z najważniejszych metod stosowanych obecnie w inżynierii oprogramowania. Dzięki nim wdrażanie aplikacji trwa krócej i odbywa się w bardziej niezawodny sposób. Narzędzia CI/CD dają członkom zespołów projektowych możliwość komunikacji w ramach usprawnionego, zautomatyzowanego procesu, kluczowego z punktu widzenia elastyczności. W przypadku platformy OpenShift można skorzystać ze środowiska Jenkins lub z nowego rozwiązania o nazwie OpenShift Pipelines.
OpneShift 4.2 oferuje dwie opcje, ponieważ z jednej strony większość przedsiębiorstw używa obecnie mechanizmu Jenkins, z drugiej zaś myślimy o nowszych rozwiązaniach umożliwiających tworzenie aplikacji dla chmur. Produkt OpenShift Pipelines oparty na rozwiązaniu open source o nazwie Tekton lepiej obsługuje modele „pipeline-as-code” i GitOps często stosowane w takich sytuacjach. Każdy krok procesu jest wykonywany we własnym kontenerze, zatem zasoby używane są jedynie w trakcie realizacji takiego kroku. Programiści uzyskują pełną kontrolę nad procesem dostarczania oprogramowania, używanymi wtyczkami i mechanizmami kontroli dostępu. Nie istnieje centralny serwer CI/CD, którym trzeba administrować. Rozwiązanie OpenShift Pipelines znajduje się w fazie „Developer Preview” i jest dostępne w postaci operatora w każdym klastrze OpenShift 4. Użytkownicy platformy OpenShift mogą również użyć komponentu Jenkins, dostępnego w wersjach OpenShift 3 i 4. Opisane powyżej modyfikacje ułatwiają członkom zespołów programistycznych rozpoczęcie pracy na platformie Red Hat OpenShift.
Zarządzanie kontenerami w chmurze hybrydowej
Zadaniem platformy OpenShift jest stworzenie w całej chmurze hybrydowej środowiska funkcjonującego jak jedna chmura obliczeniowa, z wykorzystaniem funkcji automatycznej instalacji i aktualizacji platformy. Dotychczasowe wersje oprogramowania dostępne są w chmurach publicznych najpopularniejszych dostawców, chmurach prywatnych, na platformach wirtualizacji i na serwerach fizycznych. W wersji 4.2 platforma OpenShift 4 będzie dostępna w dwóch nowych chmurach publicznych, Microsoft Azure i Google Cloud Platform, a także w chmurze prywatnej OpenStack.
Nową opcją dostępną w wydaniu 4.2 jest możliwość instalacji w trybie bez połączenia. Instalacje tego typu, a także definiowanie proxy dla całego klastra i obsługa własnych pakietów CA, umożliwiają klientom spełnienie wymagań związanych z obowiązującymi standardami i wewnętrznymi protokołami zabezpieczeń. Dzięki instalacji w trybie bez połączenia klienci mogą uzyskać najnowszą wersję platformy kontenerowej OpenShift w środowiskach niedostępnych przez Internet oraz w sytuacji, gdy obowiązują ścisłe procedury testowania obrazów oprogramowania. Ponadto instalacja całego środowiska za pomocą automatycznego procesu wykorzystującego Red Hat Enterprise Linux CoreOS (wariant systemu Red Hat Enterprise Linux zużywający mniej zasobów) daje klientom możliwość zainstalowania platformy i rozpoczęcia pracy w chmurze w czasie nieprzekraczającym godziny.
Platforma kontenerowa OpenShift pozwala budować i wdrażać aplikacje kontenerowe i zarządzać nimi w jednolity sposób w chmurze i w infrastrukturze lokalnej. Dzięki uproszczonej, zautomatyzowanej i szybszej instalacji rozwiązanie OpenShift 4.2, dostępne obecnie dla wszystkich klientów w środowiskach AWS, Azure, OpenStack i GCP, umożliwia przedsiębiorstwom zarządzanie platformą Kubernetes w środowisku chmury hybrydowej.
Narzędzia do migracji platformy OpenShift z wersji 3 do 4
Użytkownicy aktualnie korzystający z platformy OpenShift mogą łatwo przejść na najnowszą wersję dzięki narzędziom do migrowania obciążeń. Zostaną one udostępnione w najbliższych tygodniach wraz z wersją OpenShift 4.2. Poprzednio operacja tego rodzaju wymagała wielu działań wykonywanych ręcznie – obecnie użytkownicy będą mieć do dyspozycji prostszą, szybszą metodę kopiowania obciążeń między klastrami OpenShift. Na przykład administrator klastra może wybrać klaster źródłowy na platformie kontenerowej OpenShift 3.x i projekt (lub przestrzeń nazw) w ramach tego klastra. Następnym krokiem może być skopiowanie lub przeniesienie powiązanych trwałych woluminów do docelowego klastra OpenShift w wersji 4.x. Aplikacje będą nadal działać w klastrze źródłowym do momentu ich zamknięcia przez administratora.
Narzędzie do migracji pozwala zrealizować różne scenariusze, m.in. z uwzględnieniem podziału procesu na etapy i przejścia na nowe środowisko produkcyjne. Woluminy trwałe można obsłużyć w różny sposób:
- Kopiowanie danych z wykorzystaniem repozytorium pośredniego (projekt Velero). W takim rozwiązaniu docelowe środowisko pamięci masowej może być inne niż źródłowe, na przykład migracja może odbyć się z systemu Gluster do Ceph.
- Zachowanie danych w istniejącym repozytorium i podłączenie go do nowego klastra, czyli przełączenie zasobów.
- Zastosowanie rozwiązania Restic do kopiowania na poziomie systemu plików.
Wcześniejszy dostęp do nowych wersji
Użytkownicy są często zainteresowani dostępem do wersji beta kodu i przetestowaniem nowych funkcji. Red Hat oferuje im możliwość eksperymentalnego wykorzystania najnowszych aktualizacji platformy OpenShift, począwszy od wstępnych wersji platformy OpenShift 4.2 klienci i partnerzy będą mogli uzyskać dostęp do najnowszych kompilacji. Warto zaznaczyć, że nie są one przeznaczone do użytku produkcyjnego, nie są objęte wsparciem, mają ograniczoną dokumentację i nie uwzględniają pełnych wersji wszystkich funkcji.
Informacja dla użytkowników uczestniczących w społeczności OKD
Red Hat rozpoczął prace nad wersją OKD 4.0, dystrybucją open source platformy Kubernetes, na której oparte zostało rozwiązanie Red Hat OpenShift. Wszyscy użytkownicy mogą przekazywać opinie na temat bieżących prac w projektach OKD4, Fedora CoreOS (FCOS) i Kubernetes, biorąc udział w dyskusjach na stronie grupy roboczej OKD. Stan prac można sprawdzić w serwisie OKD.io.
Wersja OpenShift 4.2, która wkrótce będzie dostępna na rynku, stanowi najbardziej kompleksową platformę opartą na technologii Kubernetes. Zautomatyzowane funkcje obsługi wszystkich elementów oprogramowania upraszczają zarządzanie chmurami hybrydowymi i środowiskami wielochmurowymi oraz umożliwiają zwiększenie produktywności pracy programistów i łatwe wdrażanie innowacyjnych rozwiązań.
Autorka: Kirsten Newcomer