ARTH — Task 30 👨🏻💻
✍🏻 Research for industry use cases of Openshift and create a blog, Article or Video elaborating how it works.
#vimaldaga #righteducation #educationredefine #rightmentor #worldrecordholder #linuxworld #makingindiafutureready #righteducation #arthbylw #openshift #DevOps #RedHat
What is OpenShift ?
OpenShift is a family of containerization software products developed by Red Hat. Its flagship product is the OpenShift Container Platform — an on-premises platform as a service built around Docker containers orchestrated and managed by Kubernetes on a foundation of Red Hat Enterprise Linux. The family’s other products provide this platform through different environments: OKD serves as the community-driven upstream (akin to the way that Fedora is upstream of Red Hat Enterprise Linux), OpenShift Online is the platform offered as software as a service, and Openshift Dedicated is the platform offered as a managed service.
The OpenShift Console has developer and administrator oriented views. Administrator views allow one to monitor container resources and container health, manage users, work with operators, etc. Developer views are oriented around working with application resources within a namespace. OpenShift also provides a CLI that supports a superset of the actions that the Kubernetes CLI provides.
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 Tekton — 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:
- 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.
- The out-of-the-box install of OpenShift comes included with an image repository.
- 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.
- 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.
- 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.
- 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.
- An embedded OperatorHub. This is a web gui where can browse and install a library of Kubernetes Operators and 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.
OpenShift introduced the concept of routes — points of traffic ingress into the Kubernetes cluster. The Kubernetes ingress concept was modeled after this.
OpenShift also provides value adds by bundling various software solutions — application runtimes as well as infrastructure components from the Kubernetes ecosystem. For example, for observability needs, Prometheus, Hawkular, and Istio (and their dependencies) are included out of the box. The Red Hat branding of Istio is called Red Hat Service Mesh, and is based on an opensource project called Maistra, that aligns base Istio to the needs of opensource OpenShift.
Havan, a Brazilian department store chain, needed to enhance its existing application development environment to support continuing business growth. By adopting a modern, container-based infrastructure using Red Hat OpenShift, the retailer has reduced delivery times from weeks to days, improved its code quality, and gained an advantage in recruiting and retaining skilled IT talent.
Supporting a DevOps approach with enterprise container technology from Red Hat After working with local Red Hat partner Service IT on a successful proof of concept (POC), Havan decided to adopt Red Hat OpenShift as the new foundation of its development environment. “Our development process was based on an old methodology,” said Varela. “We found that Red Hat OpenShift would assist us in adopting modern development best practices, including DevOps.” Deployed and run by Service IT, Red Hat OpenShift is a Kubernetes-based platform that offers a complete application container environment to support the architecture, processes, and services Havan needs to support its development and operations teams. In addition to ongoing assistance from Service IT, Havan works with a Red Hat Technical Account Manager (TAM), a highly skilled technical expert with extensive industry and Red Hat product knowledge, to support its new Red Hat OpenShift environment. “The close relationship between Red Hat and Service IT, with dedicated staff working exclusively on this project, made it easier to get things done,” said Varela.
Improved code quality and resource use to save time and money Changes to its infrastructure design has helped Havan reduce the number of bugs and errors in its production environment. The retailer has used Red Hat OpenShift to standardize development workflows for creating specific test, certification, and production environment configurations. Containers also help the company adapt to new market technology by isolating applications for greater stability across operating systems and framework versions. As a result, Havan’s teams can focus less on maintenance and bug fixes and more on valuable, end-user-facing work. “With fewer bugs, we save time and generate higher-quality solutions. This environment gives our developers and technicians confidence and autonomy, and we save time and money,” said Varela. Additionally, switching to container technology and adopting new monitoring and telemetry capabilities has helped the retailer cost-effectively adapt its hardware footprint and resource use as it grows. With Red Hat OpenShift, Havan can more easily view application and cluster resource use, as well as application logs. “If our headcount and number of locations doubles, we will not be able to double our hardware infrastructure. With the previous model, creating the same virtual machines and uploading the same servers would have required expanding our machine stock and our datacenter,” said Varela. “Red Hat’s solution makes those processes easier and less resource-intensive, an advantage that is fundamental to our growth.
As our customers begin to evaluate their digital transformation options, they are looking for a trusted partner to work with and a proven infrastructure platform to innovate upon. These are often the key factors for success. Take Royal Bank of Canada (RBC), for instance. RBC is in the top 10 of global banks with over 86,000 employees and a complex IT environment. As a leader in technology and innovation, RBC has been at the forefront of digital transformation. The bank has been recognized with multiple industry awards and honors, and continues to innovate to better serve their customers.
The majority of the commercial banks in the Fortune 500 rely on Red Hat, so it should come as no surprise that we have been a trusted technology advisor to RBC for many years. With a number of Red Hatters directly supporting the largest bank in Canada, the joint collaboration and teamwork has always been a highlight of our relationship. Over the years, the bank has used Red Hat platforms, starting with Red Hat Enterprise Linux (RHEL) and Satellite to Red Hat Ansible Tower and Red Hat OpenShift. Training and Consulting teams worked very closely with various IT and development teams at the bank to complete these engagements, while maintaining security and compliance across the bank’s mission-critical environments.