Ti, kteří chápou hodnotu zajištění konkurenční výhody využitím moderních nástrojů k zefektivnění procesu vývoje softwaru, vždy hledají inovativní řešení a neváhají je integrovat do svého pracovního toku, pokud jsou výhody, které nabízejí, dostatečně atraktivní.
RedHat OpenShift, který slibuje, že umožní vývojářům inovovat a dodávat rychleji, je jedním z předních nástrojů pro vývoj a nasazení moderních aplikací v různých prostředích a tento článek představuje koncepty, které za ním stojí.
Představujeme OpenShift
Cílem OpenShift je zjednodušit mnoho únavných a náchylných k chybám souvisejících s vývojem aplikací, jako je nasazování aplikací a správa každodenních operací. K dosažení tohoto cíle poskytuje OpenShift integrovanou aplikační platformu, která umožňuje vývojářům soustředit se na psaní jejich nejlepšího kódu, a umožňuje IT operacím tím, že poskytuje vynikající kontrolu, viditelnost a správu.
OpenShift byl poprvé vydán společností Red Hat v roce 2011 poté, co společnost získala společnost Makara, což byl startup zaměřený na poskytování cloudové platformy pro aplikace Java a PHP ve veřejných i soukromých cloudech. To však nebylo až do vydání OpenShift 3.0, kdy platforma jako služba (PaaS) od Red Hat získala svůj současný tvar, přijala Docker jako svou technologii kontejnerů a Kubernetes jako svou technologii orchestrace kontejnerů.
Nyní můžeme říci, že OpenShift je PaaS, který funguje kolem kontejnerů ve formátu Docker spravovaných platformou orchestrace kontejnerů Kubernetes s otevřeným zdrojem. Než se blíže podíváme na některé z jeho funkcí a schopností, pojďme poskytnout stručný přehled Docker a Kubernetes, aby bylo jasné, jak jednotlivé části zapadají do vzájemně propojeného, soudržného a konzistentního celku.
Přístavní dělník
Jak už možná víte, Docker je jednou z nejoblíbenějších kontejnerových technologií pro Linux. Umožňuje vývojářům distribuovat aplikace se všemi závislostmi v přenosném formátu pro obrázky, které běží napříč všemi systémy.
Docker byl poprvé vydán v roce 2013 a od té doby byl široce přijat malými i malými vývojáři. S Dockerem mohou vývojáři efektivněji využívat systémové prostředky, rychleji dodávat software a řešit méně bezpečnostních problémů.
Z těchto a dalších důvodů se Red Hat rozhodl vybudovat OpenShift postavený na Dockerových kontejnerech. Existuje však jen tolik, co lze udělat s jediným kontejnerem Docker, což je místo, kde Kubernetes přichází.
Kubernetes
Kubernetes je řešení open-source pro orchestraci kontejnerů. Poskytuje schopnost snadno překročit rámec jednoho kontejneru a postarat se o vyvážení zátěže, montáž atd. Kubernetes svazuje kontejnery do logických jednotek, takže aplikace lze snadno spravovat a škálovat na vyžádání.
Ačkoli byl Kubernetes vydán v roce 2014, jeho popularita se neomezuje pouze na první uživatele. Nejnovější průzkum Cloud Native Computing Foundation (CNCF) odhalil, že drtivá většina (78%) společností, které ve výrobě používají kontejnery, je spravuje pomocí Kubernetes.
Vlastnosti OpenShift
OpenShift prošel dlouhou cestou od vydání své první verze a nyní může nabídnout celou řadu výhod a vzrušujících funkcí. Zde je pět funkcí, o kterých byste měli vědět:
- Webová konzole: Aby byl vývoj a nasazení aplikací co nejjednodušší, obsahuje OpenShift webové vývojářské rozhraní s designem citlivého uživatelského rozhraní. Toto rozhraní je přístupné z jakéhokoli moderního webového prohlížeče a slouží k snadné správě aplikací a souvisejících zdrojů.
- Nástroje příkazového řádku: Kromě webového vývojářského rozhraní poskytuje OpenShift také sadu nástrojů příkazového řádku. Tyto nástroje jsou k dispozici a můžete si je stáhnout přímo z webového rozhraní. Tyto nástroje lze použít k vytváření a správě aplikací a projektů OpenShift z terminálu. Windows, macOS a Linux jsou podporovány a pro každou platformu je online k dispozici podrobný návod.
- Podpora IDE: V duchu softwaru s otevřeným zdrojovým kódem se OpenShift snaží poskytnout vývojářům co největší svobodu při volbě pracovního postupu, jak je to možné, integraci s Visual Studio, Eclipse a JBoss Developer Studio.
- Šablony aplikací: Součástí OpenShiftu jsou předem vytvořené šablony pro rychlé spuštění aplikace, jejichž účelem je umožnit vývojářům začít jednoduchým kliknutím bez ohledu na to, zda chtějí vyvíjet aplikaci pomocí prostředí Java, Python, PHP nebo jiného jazyka.
- Kontinuální integrace: Známá také jednoduše jako CI, nepřetržitá integrace je o častém slučování změn kódu do centrálního úložiště a OpenShift to usnadňuje, protože zahrnuje Jenkins, přední automatizační server open source. Jenkins se snadno nastavuje a podporuje stovky pluginů a integrací třetích stran.
Příchutě OpenShift
OpenShift je k dispozici ve třech variantách, z nichž všechny jsou poháněny stejnou základní komponentou open-source s názvem OKD:
- Platforma kontejnerů OpenShift: Do června 2016 byla platforma kontejnerů OpenShift známá jako OpenShift Enterprise, což ji někteří uživatelé OpenShift stále označují. Tento PaaS je určen pro organizace, které chtějí plnou kontrolu nad místním nebo veřejným cloudovým prostředím.
- OpenShift Dedicated: Některé organizace mohou upřednostňovat pohodlí plně spravovaného řešení, a právě tam zapadá OpenShift Dedicated, který nabízí možnost provozovat prostředí OpenShift pro jednoho klienta na veřejném cloudu.
- OpenShift online: Vývojáři a týmy, kteří vytvářejí aplikace ve veřejném cloudu, mohou pomocí OpenShift Online bez námahy vytvářet, nasazovat a škálovat kontejnerové aplikace z libovolného webového prohlížeče pomocí svých nástrojů podle svého výběru.
K dispozici je také OpenShift.io, také známý jako Red Hat CodeReady Toolchain, bezplatné end-to-end cloudové nativní vývojové prostředí dodávané jako řešení SaaS Developer Preview s OpenShift Online. S OpenShift.io, je možné snadno plánovat, vytvářet a nasazovat cloudové nativní aplikace.
Závěr
V dnešní době se od organizací očekává, že budou dodávat aplikace a funkce ohromující rychlostí napříč stále rozmanitějšími IT prostředími. OpenShift poskytuje významnou hodnotu organizacím všech velikostí tím, že umožňuje vývojářům a IT operacím pracovat efektivněji a poskytovat včasnější a neprůstřelné aplikace a funkce