
Četrta verzija OpenShift je bila izdana relativno nedavno. Trenutno aktualna verzija 4.3 je na voljo od konca januarja, vse spremembe v njej pa so ali popolnoma nove funkcionalnosti, ki jih v tretji verziji ni bilo, ali pa velike posodobitve vsega, kar se je pojavilo v različici 4.1. Vse, kar bomo zdaj povedali, je potrebno vedeti, razumeti in upoštevati za tiste, ki delajo z OpenShift in načrtujejo prehod na novo različico.
Z izdajo različice OpenShift 4.2 je Red Hat poenostavil delo s Kubernetesom. Pojavili so se novi instrumenti in vtičniki za ustvarjanje kontejnerjev, CI/CD cevovodov in serverless uvajanj. Novosti razvijalcem omogočajo, da se osredotočijo na pisanje kode, namesto da se ukvarjajo s Kubernetesom.
Kaj je torej novega v različicah OpenShift 4.2 in 4.3?
Premik proti hibridnim oblakom
Pri načrtovanju nove IT infrastrukture ali pri razvoju obstoječega IT okolja podjetja vse pogosteje razmišljajo o oblačnem pristopu k zagotavljanju IT virov, zato izvajajo zasebne oblačne rešitve ali uporabljajo zmogljivosti javnih oblačnih ponudnikov. Tako se sodobne IT infrastrukture vse pogosteje postavljajo po »hibridnem« oblačnem modelu, kjer se uporabljajo tako on-premises viri kot javni oblačni viri s skupnim sistemom upravljanja. Red Hat OpenShift 4.2 je posebej zasnovan za poenostavitev prehoda na model hibridnega oblaka in omogoča enostavno povezovanje virov takšnih ponudnikov, kot so AWS, Azure in Google Cloud Platform, poleg uporabe zasebnih oblakov na VMware in OpenStack.
Nov pristop k namestitvi
V 4. različici se je spremenil pristop k namestitvi OpenShift. Red Hat ponuja posebno orodje za uvajanje klasterja OpenShift – openshift-install. Orodje predstavlja en sam binarni datoteko, napisano v Go. Openshift-installer pripravi yaml datoteko s konfiguracijo, potrebnimi za uvajanje.
V primeru namestitve z uporabo oblačnih virov bo potrebno navesti minimalne informacije o prihodnjem klasterju: DNS cona, število delovnih vozlišč, specifične nastavitve za oblačnega ponudnika, podatke o računu za dostop do oblačnega ponudnika. Po pripravi datoteke konfiguracije lahko klaster namestite z eno samo ukazom.
При установке на собственных вычислительных ресурсах, таких как частное облако (поддерживаются vSphere и OpenStack), или на bare metal серверах, потребуется ручная настройка инфраструктуры — необходимо подготовить минимальное количество виртуальных машин или физических серверов для создания Control Plane кластера и настроить сетевые службы. После этой настройки кластер OpenShift можно будет создать с помощью команды утилиты openshift-installer.
Обновления инфраструктуры
Интеграция с CoreOS
Ключевое обновление — это интеграция с Red Hat CoreOS. Теперь master-ноды Red Hat OpenShift могут работать le на новой ОС. Это бесплатная операционная система от Red Hat, специально предназначенная для контейнерных решений. Red Hat CoreOS представляет собой облегчённый Linux, оптимизированный для запуска контейнеров.
Если в версии 3.11 операционная система и OpenShift существовали отдельно, то в версии 4.2 они неразрывно связаны друг с другом. Теперь это единый appliance — immutable infrastructure.

Для кластеров, использующих RHCOS для всех узлов, обновление OpenShift Container Platform проходит просто и хорошо автоматизировано.
Ранее для обновления OpenShift необходимо было сначала обновить базовую операционную систему, на которой продукт работал (это была Red Hat Enterprise Linux). Только после этого можно было обновлять OpenShift постепенно, узел за узлом. О какой-либо автоматизации в этом процессе не могло быть и речи.
В настоящее время, поскольку OpenShift Container Platform полностью контролирует системы и службы на каждом узле, включая ОС, эта задача решается нажатием кнопки из веб-интерфейса. После этого запускается специальный оператор внутри кластера OpenShift, который управляет всем процессом обновления.
Новый CSI
Второе — новый CSI — контроллер storage-интерфейса, который позволяет подключать различные внешние СХД к кластеру OpenShift. Поддерживается множество провайдеров storage-драйверов для OpenShift, работающих на базе storage-драйверов, разработанных самими производителями СХД. Полный список поддерживаемых CSI-драйверов можно найти в этом документе: . V tem seznamu lahko najdete vse glavne modele pomnilniških sistemov priznanih proizvajalcev (Dell/EMC, IBM, NetApp, Hitachi, HPE, PureStorage), rešitev SDS (Ceph) in oblačnih shranjevanj (AWS, Azure, Google). OpenShift 4.2 podpira delovanje z gonilniki CSI specifikacije CSI različice 1.1.
RedHat OpenShift Service Mesh
Na podlagi projektov Istio, Kiali in Jaeger - Red Hat OpenShift Service Mesh, poleg običajnih nalog usmerjanja zahtevkov med storitvami, omogoča njihovo sledenje in vizualizacijo. To razvijalcem pomaga poenostaviti interakcijo, opazovanje in upravljanje aplikacij, nameščenih znotraj Red Hat OpenShift.

Vizualizacija aplikacije, ki ima mikroservisno arhitekturo, z uporabo Kiali
Da bi kar najbolj poenostavili procese namestitve, storitve in upravljanja življenjskega cikla Service Mesh, Red Hat OpenShift administratore opremi s posebnim operaterjem - Service Mesh Operator. To je operater Kubernetes, ki omogoča namestitev prekonfiguriranih paketov Istio, Kiali in Jaeger v klaster, kar močno zmanjšuje administrativno obremenitev pri upravljanju aplikacij.
CRI-O namesto Docker
Privzeti runtim za kontejnerje Docker je bil zamenjan s CRI-O. Uporaba CRI-O je bila mogoča že v različici 3.11, vendar je v 4.2 postal glavni. Ni dobro in ni slabo, a to je treba upoštevati pri uporabi izdelka.
Operaterji in namestitev aplikacij
Operaterji so nova entiteta za RedHat OpenShift, ki se je pojavila v četrti različici. To je metoda pakiranja, nameščanja in upravljanja aplikacij Kubernetes. Lahko ga predstavimo kot plugin za aplikacije, ki jih nadzira API Kubernetes in orodja kubectl.
Operaterji Kubernetes pomagajo avtomatizirati katerokoli nalogo, povezano z administracijo in upravljanjem življenjskega cikla aplikacije, ki jo nameščate v svojem klasterju. Na primer, operater lahko avtomatizira posodobitve, varnostne kopije in razširitev aplikacije, spremeni konfiguracijo itd. Celoten seznam operaterjev si lahko ogledate na .
OperatorHub je dostopen neposredno iz spletnega vmesnika upravljalske konzole. Predstavlja katalog aplikacij za OpenShift, ki ga podpira Red Hat. T.j. vsi operaterji, ki jih odobri Red Hat, bodo podprti s strani dobavitelja.

Portal OperatorHub v upravljalski konzoli OpenShift
Univerzalna osnovna slika
To je standardizirani skup slika operacijskih sistemov RHEL, ki jih lahko uporabite za ustvarjanje svojih aplikacij v kontejnerjih. Na voljo so minimalni, standardni in celotni nabori. Zasedajo zelo malo prostora, podpirajo vse potrebne vnaprej nameščene pakete in programske jezike.
CI/CD orodja
V RedHat OpenShift 4.2 je mogoče izbrati med Jenkinsom in OpenShift Pipelines, ki temeljijo na Tekton Pipelines.
OpenShift Pipelines temelji na Tektonu, ki bolj podpira pristope Pipeline as Code in GitOps. V OpenShift konvejerskih procesih vsaka faza poteka v svojem kontejnerju, zato se sredstva uporabljajo le med izvajanjem faze. To daje razvijalcem popoln nadzor nad konvejerskimi dostavnimi moduli, vtičniki in nadzorom dostopa brez centralnega CI/CD strežnika za upravljanje.
OpenShift Pipelines je trenutno na voljo v fazi Preview za razvijalce in je na voljo kot operator v OpenShift 4 grozdu. Seveda lahko uporabniki OpenShifta še vedno uporabljajo Jenkins v RedHat OpenShift 4.
Posodobitve v upravljanju za razvijalce
V 4.2 je OpenShift popolnoma prenovil spletni vmesnik tako za razvijalce kot za skrbnike.
V prejšnjih različicah OpenShifta so vsi delali v treh konzolah: storitvenem katalogu, konzoli skrbnika in delovni konzoli. Zdaj je grozd razdeljen samo na dva dela — konzolo skrbnika in konzolo razvijalca.
Konzola za razvijalce je prejela pomembne izboljšave uporabniškega vmesnika. Zdaj je prikazovanje topologij aplikacij in njihovih gradnikov bolj pregledno. To razvijalcem olajša ustvarjanje, uvajanje in vizualizacijo kontejnerskih aplikacij ter grozdnih virov. Omogoča jim, da se osredotočijo na to, kar je zanje pomembno.

Portal razvijalca v nadzorni konzoli OpenShift
Odo
Odo je ukazna vrstica, usmerjena na razvijalce, ki poenostavi razvoj aplikacij v OpenShift. Z uporabo interakcije v slogu git push ta CLI pomaga razvijalcem, ki niso seznanjeni z Kubernetesom, pri ustvarjanju aplikacij v OpenShift.
Integracija z razvojnimi okolji
Razvijalci zdaj lahko ustvarjajo, odkrivajo napake in uvajajo svoje aplikacije v OpenShift, ne da bi zapustili svoje najljubše okolje za razvoj kode, na primer Microsoft Visual Studio, JetBrains (vključno z IntelliJ), Eclipse Desktop itd.
Razširitev za Red Hat OpenShift Deployment za Microsoft Azure DevOps
Pojavilo se je razširitev Red Hat OpenShift Deployment za Microsoft Azure DevOps. Sedaj lahko uporabniki tega nabora DevOps orodij deployajo svoje aplikacije v Azure Red Hat OpenShift ali katerikoli drug OpenShift klaster neposredno iz Microsoft Azure DevOps.
Prehod iz tretje verzije na četrto
Ker gre za novo izdajo in ne za nadgradnjo, ni mogoče kar tako vzeti in namestiti četrte verzije nad tretjo. Nadgradnja iz tretje na četrto verzijo ne bo podpirana.
Vendar pa je tu dobra novica: Red Hat ponuja orodja za prenos projektov iz 3.7 na 4.2. S pomočjo orodja Cluster Application Migration (CAM) lahko prenesete obremenitve aplikacij. CAM omogoča nadzor migracije in zmanjša čas izpada aplikacije.
OpenShift 4.3
Glavne novosti, opisane v tem članku, so se pojavile v različici 4.2. V nedavno izdani 4.3 spremembe niso tako obsežne, vendar še vedno obstaja nekaj novega. Seznam sprememb je dovolj obsežen, zato bomo navedli nekaj pomembnejših po našem mnenju:
Posodobitev različice Kubernetes na 1.16.
Različica je nadgrajena kar za dva koraka, v OpenShift 4.2 je bila 1.14.
Šifriranje podatkov v etcd
Začnemo s verzijo 4.3, omogočeno je šifriranje podatkov v bazi etcd. Po aktivaciji šifriranja bo možno šifrirati naslednje vire OpenShift API in Kubernetes API: Secrets, ConfigMaps, Routes, dostopne in OAuth avtorizacijske tokene.
Helm
Dodana podpora za Helm 3 – priljubljenega upravitelja paketov za Kubernetes. Podpora zaenkrat velja kot TEHNOLOGIJA PREDPREGLED. V prihodnjih različicah OpenShift bo podpora za Helm razširjena na popolno. Orodje helm cli je priloženo OpenShift in ga je mogoče prenesti iz spletne konzole za upravljanje klasterja.
Posodobitev Project Dashboard
V novi različici Project Dashboard nudi dodatne informacije na strani projekta: status projekta, izkoriščenost virov in kvote za projekt.
Prikaz ranljivosti za quay v spletni konzoli
V upravljalsko konzolo je dodana funkcija prikazovanja znanih ranljivosti za podobe v repozitorijih Quay. Podprto je prikazovanje ranljivosti za lokalne in zunanje repozitorije.
Poenostavljeno ustvarjanje offline operatorhub
Za primer namestitve OpenShift klasterja v izolirani mreži, kjer je dostop do interneta omejen ali odsoten, je poenostavljeno ustvarjanje "zrcala" za registracijo OperatorHub. To zdaj lahko storite v samo treh ukazih.
Avtorji:
Viktor Pučkov, Jurij Semenjukov
Izvor: habr.com
