OpenShift: The Fast and Friendly Plat­form-as-a-Ser­vice

OpenShift is a next-gen­er­a­tion con­tainer based, se­cure and scal­able plat­form for rapid ap­pli­ca­tion de­vel­op­ment. Let’s first un­der­stand the way it works, and then use it to build a sim­ple ap­pli­ca­tion.

OpenSource For You - - Admin -

OpenShift is a Plat­form-as-a-Ser­vice by Red Hat, which pro­vides a quicker way to de­velop, de­ploy, mon­i­tor and scale ap­pli­ca­tions in a se­cure and on-de­mand cloud. OpenShift has been built with only one goal, which is “To quickly build an ap­pli­ca­tion and make your clients happy.” By us­ing OpenShift, de­vel­op­ers can fo­cus on the core logic of an ap­pli­ca­tion rather than con­fig­ur­ing and main­tain­ing it.

OpenShift be­came fa­mous af­ter v2.0. Cur­rently, it runs on v3.0, which is the next-gen PaaS that uses Docker con­tain­ers and Ku­ber­netes. In the next sec­tion, we will look more closely at all these terms. OpenShift v3.0 is dif­fer­ent from OpenShift v2.0, so we will not go deep into v2.0 but fo­cus more on v3.0.

Let’s study some of the ba­sic terms be­fore try­ing to un­der­stand the OpenShift stack.

Vir­tual ma­chines vs con­tain­ers: Vir­tual ma­chines con­tain all the bi­na­ries, li­braries and ap­pli­ca­tion code along with the guest OS, which will be in GBs.

Con­tain­ers con­tain the ap­pli­ca­tion and re­lated de­pen­den­cies. They share the same ker­nel with other con­tain­ers, and every con­tainer runs as an iso­lated process in user space on the host OS.

By com­par­ing vir­tual ma­chines and con­tain­ers, we can get more clar­ity on how con­tain­ers dif­fer from vir­tual ma­chines.

Docker: A Docker con­tainer is a piece of code in a file sys­tem which con­tains ev­ery­thing needed to run it, such as li­braries, ap­pli­ca­tion code and sys­tem tools. Ba­si­cally, it pro­vides ev­ery­thing that can be in­stalled on a server. The ad­van­tage of us­ing Docker con­tain­ers is that they can run any­where, in any cloud, and with any in­fra­struc­ture.

Ku­ber­netes: This is a tool/sys­tem that is used for au­tomat­ing con­tainer­ised ap­pli­ca­tions, and its func­tions in­clude de­ploy­ment, scal­ing, load bal­anc­ing and man­age­ment.

OpenShift stack

Fig­ure 1 demon­strates the new OpenShift stack for v3.0. OpenShift v3 is built on RHEL 7, which has more ca­pa­bil­i­ties com­pared to RHEL 6. Also, it is a part of the Atomic project, which was launched to en­hance

Linux host ca­pa­bil­i­ties and op­ti­mised con­tainer based ap­pli­ca­tion en­vi­ron­ments.

Red Hat is con­tribut­ing to a project called lib­con­tainer, which pro­vides stan­dard APIs for defin­ing con­tain­ers like network in­ter­faces, names­paces, cGroups, etc. So OpenShift uses Docker lib­con­tainer, which is light­weight and pro­vides iso­la­tion through OpenShift gear, which is the main fo­cus of de­vel­op­ers. OpenShift v3 cartridge en­ables cus­tomers to lever­age any ap­pli­ca­tion com­po­nent pack­aged as a Docker im­age, which also en­ables users to share and ac­cess con­tainer im­ages glob­ally (in the mar­ket place). xPaaS ser­vices in OpenShift pro­vide ca­pa­bil­i­ties like JBOSS port­fo­lio, SQL or NoSQL data­bases, cache, log man­age­ments, mon­i­tor­ing tools, mes­sage bro­kers and many more func­tion­al­i­ties.

Newspapers in English

Newspapers from India

© PressReader. All rights reserved.