Openshift is a Red Hat product focused on a containers platform for development and hosting enterprise applications. In technical terms, OpenShift is a PaaS (Platform as a Service) where you can handle and manage underline infrastructure components.
It comes in different flavors, which I’m going to explain next.
The origin version of OpenShift is an original upstream open-source project, is just an application container platform. The second version is the “web-based” or online version, where we found a public application development hosting server.
The dedicated flavor is a managed cluster on AWS or any other cloud provider available, and the last is the enterprise version, this is an on-premise private PaaS platform.
OpenShift is built on top of containers tools, at least the “origin” version, and aims to help developers to manage and support full DevOps Cycle, such as SCM, passing through, Pipelines, Registries, and Software-defined networking. Adding a centric API that helps on the integration of the existing infrastructure (rapid application development and lifecycle management at most).
OpenShift origin version is based on top of Docker containers where the system creates an image of the application with prepackaged dependencies, this also makes the deploy process very easy.
Kubernetes is also another fundamental tech in OpenShift because helps power the deployment and management of the Docker images across cluster autoscaled features
Let’s describe the components involved in the OpenShift process.
The Kubernetes layer deploys applications in form of containers (docker containers) from generated images. After that, you can pull from a public directory that generated image using the OpenShift container registry, similar to a Docker Hub.
The collection of multiple containers is called “POD” which stands for Pods and Services, which means, and I a quote “one or more containers deployed together on one host, and the smallest compute unit that can be defined, deployed, and managed.”. Multiple PODs generate deployments to other applications or services.
Also, OpenShift has a Web console where you can browse and manage your apps with integrated SCM and CI/CD workflow. That application source code goes into a Docker image so it can be pulled out from the OpenShift Container Registry also called OCR.
Another key component is a Master node, this hosts the API Server and other tools that handle tiny nodes by deploying one or many master nodes. (Only applies to Kubernetes).
This post intended to give you a little basic approach on what to expect about OpenShift, there’s a LOT more concepts to digest, but nothing will be better than working hands-on with the platform.
Happy coding :)
To join our community Slack 🗣️ and read our weekly Faun topics 🗞️, click here⬇