Friday 8 May 2020

Openshift Container Platform: architecture and features.

OpenShift logo


Openshift is an open source container platform, built on Kubernetes, delivered also by Red Hat in its enterprise version.


What is the difference between Kubernetes and Openshift?

Openshift adds to Kubernetes all the capabilities required to manage the cluster and its resources in an easier way, both from developers and system administrators point of view.

These capabilities are:

  • Extensions: Openshift provides additional resource types to those belonging to Kubernetes;
  • Devops tools: Openshift adds to Kubernetes automated development workflows thanks to the Source-to-image feature, that takes an application, packages it and containerize it
  • Centralized management: thanks to its Web Console, it is easy to manage clusters, nodes, metrics, workloads and configurations.
  • Internal registry: Openshift comes with an internal registry that can be used to store all the images used by pods running on the cluster.

Red Hat OpenShift Container Platform: Kubernetes for rapid innovation
Apart from Kubernetes resources, Openshift uses in addition other two types of resources:
  • projects
  • users
A project is a logical group of Kubernetes resources, that permits to assign specific roles to users, limitations on resources (volumes, cpu, RAM) usage with the concept of "quota".


SOURCE-TO-IMAGE (S2I)
S2I is a special process that pulls code from a SCM repository, detects automatically the runtime needed by the source code, and starts a pod using a base image related to that runtime.
In this pod, Openshift builds the application in the same way that a developer would do (for example, running npm for a Node.js application), and if the build is successful, it is created another image with all the binaries obtained from the previous one. The image is automatically pushed to the internal Registry and, from here, it can be used to create a pod running the application.


IMAGE STREAMS
An image stream is a set of related container images, identified by their tags. Builds and deployments can watch image streams to be notified when a new image has been added and trigger a build or a deployment.


Links:
opensource project: https://github.com/openshift
Red Hat Enterprise: https://www.openshift.com/




No comments:

Post a Comment