OpenShift - OpenShift

OpenShift
OpenShift-LogoType.svg
Deweloper(zy) czerwony kapelusz
Pierwsze wydanie 4 maja 2011 ; 10 lat temu ( 2011-05-04 )
Wersja stabilna
4.8.0 / 8 lipca 2021 ; 3 miesiące temu ( 2021-07-08 )
Magazyn
Napisane w Idź , Angular.js
System operacyjny Red Hat Enterprise Linux lub Container Linux od CoreOS
Rodzaj Przetwarzanie w chmurze , Platforma jako usługa
Licencja Licencja Apache 2.0
Strona internetowa openshift .com

OpenShift to rodzina oprogramowania do konteneryzacji opracowanego przez firmę Red Hat . Jej flagowym produktem jest OpenShift Kontener Platforma - na terenie platforma jako usługa zbudowany wokół pojemników Linux zorganizowanych i zarządzanych przez Kubernetes na fundamencie Red Hat Enterprise Linux . Inne produkty z tej rodziny udostępniają tę platformę w różnych środowiskach: OKD służy jako społeczność nadrzędna (podobnie jak Fedora nad Red Hat Enterprise Linux), OpenShift Online jest platformą oferowaną jako oprogramowanie jako usługa , a OpenShift Dedicated to platforma oferowana jako usługa zarządzana .

Konsola OpenShift posiada widoki zorientowane na programistów i administratorów. Widoki administratora pozwalają monitorować zasoby i stan kontenerów, zarządzać użytkownikami, pracować z operatorami itp. Widoki programistów są zorientowane na pracę z zasobami aplikacji w przestrzeni nazw. OpenShift udostępnia również interfejs wiersza polecenia, który obsługuje nadzbiór działań udostępnianych przez interfejs wiersza polecenia Kubernetes.

Historia

OpenShift pierwotnie pochodził z przejęcia przez Red Hat firmy Makara, która sprzedaje platformę jako usługę (PaaS) opartą na kontenerach Linux, w listopadzie 2010 roku. OpenShift został ogłoszony w maju 2011 roku jako technologia zastrzeżona i nie stał się open-source do maja 2012 roku Do wersji 3 technologia kontenerów i technologia orkiestracji kontenerów wykorzystywały technologie opracowane na zamówienie. Zmieniło się to w wersji 3 wraz z przyjęciem Dockera jako technologii kontenerów i Kubernetes jako technologii orkiestracji kontenerów. W produkcie v4 wprowadzono wiele innych zmian architektonicznych - widoczną z nich jest przejście do korzystania z CRI-O jako środowiska wykonawczego kontenera (oraz Podmana do interakcji z podami i kontenerami) oraz Buildah jako narzędzia do budowania kontenerów, łamiąc tym samym wyłączną zależność od Dockera .

Architektura

Główną różnicą między OpenShift a vanilla Kubernetes jest koncepcja artefaktów związanych z kompilacją. W OpenShift takie artefakty są uważane za zasoby Kubernetes pierwszej klasy, na których można zastosować standardowe operacje Kubernetes. Program kliencki OpenShift, „oc”, oferuje nadzbiór standardowych funkcji zawartych w głównym programie klienckim „kubectl” Kubernetes. Korzystając z tego klienta, można bezpośrednio wchodzić w interakcję z zasobami związanymi z kompilacją za pomocą podkomend (takich jak „nowy-buduj” lub „rozpocznij-buduj”). Oprócz tego, natywna technologia budowania pod OpenShift o nazwie Source-to-Image (S2I) jest dostępna po wyjęciu z pudełka, chociaż powoli jest wycofywana na rzecz Tekton – który jest natywnym sposobem budowania i wdrażania w chmurze do Kubernetesa. W przypadku platformy OpenShift zapewnia to możliwości równoważne z tym, co może zrobić Jenkins .

Kilka innych różnic, gdy OpenShift jest porównywany z Kubernetes:

  1. Linia produktów v4 korzysta ze środowiska wykonawczego CRI-O — co oznacza, że ​​demony dockera nie są obecne w węzłach głównych lub roboczych. Poprawia to stan bezpieczeństwa klastra.
  2. Gotowa instalacja OpenShift zawiera repozytorium obrazów.
  3. ImageStreams (sekwencja wskaźników do obrazów, które można powiązać z wdrożeniami) i szablony (mechanizm pakowania składników aplikacji) są unikalne dla OpenShift i upraszczają wdrażanie aplikacji i zarządzanie nimi.
  4. Polecenie "new-app", którego można użyć do zainicjowania wdrożenia aplikacji, automatycznie stosuje etykietę aplikacji (z wartością etykiety pobraną z argumentu --name ) do wszystkich zasobów utworzonych w wyniku wdrożenia. Może to uprościć zarządzanie zasobami aplikacji.
  5. Jeśli chodzi o platformy, OpenShift ograniczał się do własnej oferty Red Hata, ale do 2020 r. będzie wspierał inne, takie jak AWS, IBM Cloud, vSphere i wdrożenia bare metal z OpenShift 4.
  6. Implementacja wdrożenia OpenShift, o nazwie DeploymentConfig, jest oparta na logice w porównaniu z obiektami wdrażania opartymi na kontrolerach Kubernetes. Od wersji 4.5 OpenShift kieruje się bardziej w stronę wdrożeń, zmieniając domyślne zachowanie swojego CLI.
  7. Wbudowany OperatorHub. Jest to webowy interfejs użytkownika, w którym użytkownicy mogą przeglądać i instalować bibliotekę operatorów Kubernetes, które zostały spakowane w celu łatwego zarządzania cyklem życia. Należą do nich operatorzy autorzy Red Hat, certyfikowani operatorzy Red Hat i operatorzy społeczności

Openshift również ściśle kontroluje używane systemy operacyjne. Komponenty „master” muszą działać pod kontrolą systemu Red Hat CoreOS. Ten poziom kontroli umożliwia klastrowi obsługę uaktualnień i poprawek węzłów nadrzędnych przy minimalnym wysiłku. Węzły robocze mogą działać z innymi wariantami systemu Linux lub nawet Windows.

OpenShift wprowadził pojęcie tras – punktów wejścia ruchu do klastra Kubernetes. Na tej podstawie wzorowano się na koncepcji Kubernetes ingress.

OpenShift obejmuje inne oprogramowanie, takie jak środowiska uruchomieniowe aplikacji, a także komponenty infrastruktury z ekosystemu Kubernetes. Na przykład dla potrzeb obserwowalności uwzględnione są Prometheus , Hawkular i Istio (oraz ich zależności). Marka Red Hat Istio nazywa się Red Hat Service Mesh i opiera się na projekcie opensource o nazwie Maistra, który dostosowuje bazę Istio do potrzeb OpenShift Opensource.

Produkty

Platforma kontenerowa OpenShift

OpenShift Container Platform (wcześniej znana jako OpenShift Enterprise) to lokalna prywatna platforma Red Hat jako produkt usługowy , zbudowana wokół kontenerów aplikacji obsługiwanych przez Docker, z orkiestracją i zarządzaniem zapewnianą przez Kubernetes , na Red Hat Enterprise Linux i Container Linux (wcześniej znanym jako CoreOS lub RHCOS).

OKD

OKD , znany do sierpnia 2018 r. jako OpenShift Origin (Origin Community Distribution) to nadrzędny projekt społeczności używany w OpenShift Online, OpenShift Dedicated i OpenShift Container Platform. Oparta na rdzeniu pakietu kontenerów Docker i zarządzania klastrami kontenerów Kubernetes, OKD jest wzbogacona o funkcje zarządzania cyklem życia aplikacji i narzędzia DevOps. OKD zapewnia platformę kontenerową aplikacji typu open source. Cały kod źródłowy projektu OKD jest dostępny na licencji Apache (wersja 2.0) w serwisie GitHub .

Red Hat OpenShift Online

Red Hat OpenShift Online (RHOO) to usługa tworzenia i hostingu aplikacji w chmurze publicznej firmy Red Hat, która działa na AWS i IBM Cloud.

Online oferował wersję 2 kodu źródłowego projektu OKD, który jest również dostępny na licencji Apache License w wersji 2.0. Ta wersja obsługiwała różne języki, struktury i bazy danych za pośrednictwem gotowych „kaset” działających w ramach przydziału zasobów „koła zębate”. Deweloperzy mogą dodawać inne języki, bazy danych lub komponenty za pośrednictwem interfejsu programowania aplikacji OpenShift Cartridge . Zostało to zdeprecjonowane na korzyść OpenShift 3 i zostało wycofane 30 września 2017 r. dla niepłacących klientów i 31 grudnia 2017 r. dla płacących klientów.

OpenShift 3 jest oparty na Kubernetes . Może uruchamiać dowolny kontener oparty na platformie Docker , ale Openshift Online ogranicza się do uruchamiania kontenerów, które nie wymagają root .

Dedykowane OpenShift

OpenShift Dedicated to oferta zarządzanych prywatnych klastrów Red Hat, zbudowana wokół rdzenia kontenerów aplikacji obsługiwanych przez Docker, z orkiestracją i zarządzaniem dostarczanymi przez Kubernetes, na fundamencie Red Hat Enterprise Linux . Jest dostępny na platformach Amazon Web Services (AWS), IBM Cloud , Google Cloud Platform (GCP) i Microsoft Azure od grudnia 2016 roku.

OpenShift Data Foundation

OpenShift Data Foundation (ODF) zapewnia natywną pamięć masową, zarządzanie danymi i ochronę danych dla aplikacji działających na platformie OpenShift Container w chmurze, lokalnie oraz w środowiskach hybrydowych/wieluchmurowych

Zobacz też

Bibliografia

Dalsza lektura

Zewnętrzne linki