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 , 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.
History of OpenShift
OpenShift originally came from Red Hat’s acquisition of Makara— a company with a proprietary PaaS solution based on Linux containers. Even though OpenShift was announced in May 2011, it was proprietary technology and did not become open-source until May of 2012. Up until v3, the container technology and container orchestration technology used custom developed technologies. This changed in v3 with the adoption of Docker as the container technology, and Kubernetes as the container orchestration technology. The v4 product has many other architectural changes — a prominent one being a shift to using CRI-O as the container runtime (and Podman for interacting with pods and containers), and Buildah as the container build tool, thus breaking the exclusive dependency on Docker.
Architecture of OpenShift
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.
Benefits of OpenShift container platform
1. Innovate and go to market faster
OpenShift enables your development team to focus on doing what they do best — designing and testing applications. When they are freed from spending excessive time managing and deploying containers, they can speed up the development process and get products to market more rapidly.
2. Accelerate application development
Deploying and managing containers at scale is a complicated process. OpenShift enables efficient container orchestration, allowing rapid container provisioning, deploying, scaling, and management. The tool enhances the DevOps process by streamlining and automating the container management process. Cutting down on time that would otherwise be spent managing containers improves your company’s productivity and speeds up application development.
3. Enterprise-grade, container-based platform with no vendor lock-in
A company’s IT needs can vary greatly from one period to the next. Selecting a proprietary container management platform subjects you to the possibility that your vendor won’t be able to provide an acceptable solution if your company’s IT focus changes. In such cases, the expense and time involved in moving from a proprietary vendor to a new platform can be considerable.
4. Enable DevOps and department-wide collaboration
The DevOps process relies upon transparent communication between all involved parties. Containerization provides a convenient means of enabling your IT operations staff to test instances of a new app. OpenShift assists this process by making it easy to test apps throughout your IT architecture without being impeded by framework conflicts, deployment issues, or language discrepancies.
5. Self-service provisioning
Assembling the proper tools to create applications on your system architecture can be a challenge, especially at the enterprise level. OpenShift makes the process easy by allowing for the integration of the tools you use most across your entire operating environment.
What’s new in Red Hat OpenShift 4
Immutable Red Hat Enterprise Linux CoreOS
Improved installation based on immutable Red Hat® Enterprise Linux® CoreOS for consistency and upgradability.
Single-step installation for Kubernetes applications and services, plus automated, over-the-air updates and performance tuning with Kubernetes operators.
OpenShift service mesh
Increased resiliency and performance for your distributed applications with OpenShift service mesh.
Developer-friendly serverless framework and components for building, serving, and running event-driven applications.
Lenovo, a multinational technology manufacturer, wanted to transform digitally to meet business demand and gain competitive advantage. The company needed agile and cloud capabilities to launch applications more efficiently. Using a Red Hat® Platform-as-a-Service (PaaS) solution, Lenovo decreased system deployment time and improved productivity through greater automation and increased support for collaborative DevOps work.
Lenovo wanted to achieve a rapid digital transformation to improve its capabilities and meet businesses demands faster. However, this transformation required frequent updates and changes to the company’s entire IT environment, and some legacy systems could not keep up. As a result, the team faced major challenges in quickly developing and delivering resources. Lenovo needed a comprehensive solution that could support agile application delivery, increase productivity, and improve internal support for DevOps.
To meet its requirements, Lenovo decided to implement cloud computing with a PaaS solution. “We chose PaaS as the preferred solution to gain efficient and agile support for our business team,” said Zhenyu Yao, executive director, Integrated Technology Service at Lenovo. Building on its strong relationship with Red Hat, Lenovo chose Red Hat OpenShift Container Platform as its PaaS solution.
With its new solution, Lenovo has fully automated its development and production processes, helping developers become more efficient and productive. Its unified PaaS environment lets developers and operations staff collaborate, leading to faster deployment time and increased competitive advantage. IT staff can now build a new IT infrastructure in minutes instead of a week. “With a PaaS built on Red Hat OpenShift Container Platform, along with our automated management tools, we can provide efficient and agile cloud services internally and externally,” said Yao.