OpenShift.IO: all-in-one development platform and CI/CD

Total containerization and redefining the role of the container in the process of development and the development of infrastructure could not coerce the main adherents of the open source world for the further achievements. Red Hat surely bends the line, and if a few years ago, OpenShift was the only PaaS om, today is something more. OpenShift itself is clear, but not simple. To make the process of managing containers and deploy applications as seamless as possible and safe — the main task, pursued by OpenShift, and it is worth noting that the guys from Red Hat have succeeded in this. But, by itself, does not OpenShift closer to the cherished dream — to provide the developer, PMU, QA engineer environment, where everything is. It's sort of a perfect world without Jira or RedMine, no endless Jenkins slave, incomplete updates, staging, various ides, which behave differently with different projects without manual settings projects on GitHub. This ideal world is a project that Red Hat announced recently, namely in may 2017, and his name openshift.io.

To make the most of OpenShift all the arms were taken a few opens source projects (as is usually the case with Red Hat, a business which is built around open source) — fabric8 and Eclipse Che. All in good time.

OpenShift copes with the application deployment in Kubernetes pods. But, it is hardly the platform gives everything that you may need to devops, Pmam and ordinary coders. Then to the rescue comes Fabric8 — integrated development platform for Kubernetes.

The basic idea is that it is not enough just to deploy the app. To begin at the beginning, namely with the creation of the project and control source code. So, running Fabric8 locally, or visigenic account on openshift.io (still closed beta), you will be prompted to create a space in which you specify the location of the source, and select the type of pipeline. Yes, openshift.io will automatically create multiple namespaces with service pods, depending on the type of CI/CD.



For example, you can order yourself one of the following chains:

the
    the
  • Build the release
  • the
  • Build the release > stage
  • the
  • Build release > stage > .


As you can see, going from simple to complex. That is, you can just use Jenkins for CI, and you will rise slaves in the pods, once triggered webhook on GitHub (provider may be different). Or, after the Jenkins build, the image will be published in the local registry and priispolzovanii stage already in the namespace. The final configuration involves promotion from staging to prodakshen — in this case it happens automatically, but only at the request of the user.



He fabric8 on OpenShift takes place in the form of pods. In dilapidated condition, with 1 project that uses advanced CI/CD — Build release > stage > prod — were counted as many as 39 running containers is the authentication server (this is the way KeyCloak), API server, database, office pods, Jenkins and his slave, Eclipse Che and related workspace. Stock up on RAM-om, in General :)

By the way, about Eclipse Che. Picture Openshift.io would not be complete if development is not stemmed directly from the browser. In CI/CD scripts, is clearly not enough. that and pull webhooks. And Openshift.io knows where you will KOMITET, offering to develop the same in OpenShift. Red Hat has long been interested in Eclipse Che and even bought the company Codenvy, the first of which are the founding fathers of the project. Interestingly, over the past 2 years web IDE either went bankrupt or were absorbed by the giants (remember the Cloud 9 care under the wing of AWS). Well, it is, by the way :)

Che

Eclipse Che is started in the pod on OpenShift and create a workspace configuration required. That is, after creating space and import the project, Eclipse Che importa sources online and opens in the IDE, right there on the spot. Che workspace is under on a set of servers and other software, which ultimately provide an IDE in the browser. Workspace start and stop on demand, that is, when the user needs it. Now the chain looks more coherent:
import the code and push CI/CD

Git Che

But this is not the end. In addition to writing code, CI and application deployment, there are planning. In order to provide all in one box was designed Planner. Such an analogy Jira, certainly much easier, but the platform development is still in full swing, so expect improvements.

Planner

Fabric8 and its commercial analogue openshift.io slowly, but surely, going (or trying to go) to solve the pain and problem, development teams, and first devaysov. At the moment the solution is crude and clearly not ready for real life projects, but OpenShift was not built. Banks, fin. companies, companies with the strictest security policy is the potential consumers of this solution. Especially under the Red Hat name. But, do not forget that every product of the company is an open source project — take and install, it would be time and desire to be picked.

Let's wait and see. Moreover, in openshift.io Red Hat is developing a system analysts. The company analyzes hundreds of thousands of projects in the public domain, to suggest how to improve your code, to offer a new version of the library, report a vulnerability, etc.

Microsoft, incidentally, is also trying to promote such a platform — VSTS. But, Unlike Red Hat in that they have relied on Kubernetes, and, apparently, not lost.
Article based on information from habrahabr.ru

Comments

Popular posts from this blog

Powershell and Cyrillic in the console (updated)

Active/Passive PostgreSQL Cluster, using Pacemaker, Corosync

Confirmed: Wikia Search launched Monday