OpenShift — SaaS (Software-as-a-Service)

Niharika Dhanik
Geek Culture
Published in
4 min readJul 28, 2021

--

OpenShift…ummm…is this some kind of shift like night shift, day shift? Well…..No! But don’t worry, if you don’t know. This blog will help you understand all the aspects of OpenShift. So let’s go!

What is OpenShift —

OpenShift includes an enterprise grade linux operating system, container runtime, networking, monitoring, registry, and authentication and authorization solutions. Automate life-cycle management to get increased security, tailored operations solutions, easy-to-manage cluster operations, and application portability. It’s full-stack automated operations, consistent experience across all environments and self-service provisioning for developers lets teams work together to more efficiently move ideas from development to production. It is available as a fully managed cloud service on leading public clouds, or as a self-managed software offering for organizations requiring more customization.

Containers are standalone processes that run within their own environment, independent of operating system and the underlying infrastructure. OpenShift helps you to develop, deploy, and manage container-based applications. It provides you with a self-service platform to create, modify, and deploy applications on demand, thus enabling faster development and release life cycles.

How is it Different from Kubernetes —

The main difference between OpenShift and vanilla Kubernetes is the concept of build-related artifacts. In OpenShift, such artifacts are considered first class Kubernetes resources upon which standard Kubernetes operations can apply. OpenShift’s client program, known as “oc”, offers a superset of the standard capabilities bundled in the mainline “kubectl” client program of Kubernetes. Using this client, one can directly interact with the build-related resources using sub-commands (such as “new-build” or “start-build”). In addition to this, an OpenShift-native pod build technology called Source-to-Image (S2I) is available out of the box, though this is slowly being phased out in favor of Tekto which is a cloud native way of building and deploying to Kubernetes. For the OpenShift platform, this provides capabilities equivalent to what Jenkins can do.

Some other differences when OpenShift is compared to Kubernetes:

  1. The v4 product line uses the CRI-O runtime which means that docker daemons are not present on the master or worker nodes. This improves the security posture of the cluster.
  2. The out-of-the-box install of OpenShift comes with an image repository.
  3. ImageStreams (a sequence of pointers to images which can be associated with deployments) and Templates (a packaging mechanism for application components) are unique to OpenShift and simplify application deployment and management.
  4. The “new-app” command which can be used to initiate an application deployment automatically applies the app label (with the value of the label taken from the — name argument) to all resources created as a result of the deployment. This can simplify the management of application resources.
  5. In terms of platforms, OpenShift used to be limited to Red Hat’s own offerings but now supports others like AWS, IBM Cloud and vSphere with OpenShift 4.
  6. OpenShift’s implementation of Deployment, called DeploymentConfig is logic-based in comparison to Kubernetes’ controller-based Deployment objects. As of v4.5, OpenShift is steering more towards Deployments by changing the default behavior of its CLI.
  7. An embedded OperatorHub. This is a web GUI where users can browse and install a library of Kubernetes Operators that have been packaged for easy lifecycle management. These include Red Hat authored Operators, Red Hat Certified Operators and Community Operators.

Openshift also tightly controls the Operating Systems used. The Master components have to be running Red Hat CoreOS. This level of control enables the cluster to support upgrades and patches of the Master nodes with minimal effort. The Worker Nodes can be running other variants of Linux or even Windows.

Real Life Application —

Orange Sonatel, Senegal’s leading telecommunications service provider, needed to speed service delivery to maintain its competitive advantage. The service provider decided that a cloud-native, DevOps-based approach would provide the efficiency and scale needed. By building a new platform, Malaw, with OpenShift and Ansible Automation, Orange Sonatel can quickly migrate and build core applications. Benefits of using Openshift turned out as following:

  • Cut application deployment time from days or weeks to minutes
  • Improved developer productivity with self-service IT environment and automation
  • Reduced compute resource requirements by 66%

Together with Ansible, Red Hat OpenShift helps developers use a new DevOps approach to focus on valuable innovation, rather than managing the underlying infrastructure and compute resources needed for a Kubernetes cluster. By adopting Red Hat OpenShift, supported by OpenShift Container Storage, the service provider has reduced its compute resource requirements. With efficient management of memory and CPU (central processing unit) resources, Orange Sonatel needs only one-third of the resources to run its infrastructure, compared to its previous approach of running deployments directly on virtual machines (VMs). As a result, the service provider anticipates that it will achieve return on investment (ROI) within the next two years. After the success of its initial migration to Red Hat OpenShift, Orange Sonatel is migrating more complex applications to the environment. The service provider plans to migrate at least 60 total applications to within the next 2 years.

Thank You!!

--

--