Red Hat OpenShift Application Runtimes and Spring Boot – details you want to know

Have you read the announcement of the alpha release of Red Hat OpenShift Application Runtimes (RHOAR)? We also posted an introduction to the component in RHOAR earlier. This post dives into more detail on the Spring Boot certification support that is expected to be included with RHOAR.

First things first, Spring Boot remains part of the Spring Framework that is controlled by Pivotal. Red Hat and Pivotal are not announcing any sort of alliance to alter how elements of the Spring Framework, including Spring Boot, are defined or brought to market.

Instead, with RHOAR, Red Hat is working to certify some technologies and support others (when generally available) that Spring Boot will interoperate with. Conceptually, Red Hat wants to welcome Spring users to the Red Hat ecosystem and enhance their ability to deliver effective cloud native applications on the OpenShift Container Platform (OCP) using the Spring Boot java development framework. So let’s dive into the details a bit more.

First, lets look at some of what RHOAR will offer Spring Boot developers. For starters, if you’re new to working with Spring Boot, Red Hat will be offering a browser based utility to get started with multiple cloud-native runtimes, including Spring Boot. The utility known as a launchpad will create a fully-functional starter application for you. You can download the starter application as a zip file, or interact with an OCP instance. When the later is done, code is pushed to a GitHub namespace, sets up a build pipeline for for continuous delivery, and ensures it’s triggered to run on each push to your git repository. Now, the choice of OCP instance is up to you. You could certainly use a centralized public or private OCP deployment. But you could also use a local OCP environment right on your desktop. Pretty cool.

Continue reading “Red Hat OpenShift Application Runtimes and Spring Boot – details you want to know”

Vert.x for reactive programming in Red Hat OpenShift Application Runtimes

Have you read the announcement of the alpha release of Red Hat OpenShift Application Runtimes (RHOAR)? We also posted an introduction to the component in RHOAR earlier.

One of the curated runtimes included with RHOAR is Vert.x. Vert.x is an open source toolkit for building reactive, high concurrency, low latency applications and is well-suited for supporting the asynchronous communications required by a microservices architecture.

Vert.x is distributed as a toolkit for building reactive applications on the Java virtual machine (JVM). There are a three important points in this description: toolkit, reactive and “on the JVM.”

Continue reading “Vert.x for reactive programming in Red Hat OpenShift Application Runtimes”

Red Hat OpenShift Application Runtimes + JBoss EAP for fast, lightweight, Java EE cloud applications

Have you read the announcement of the alpha release of Red Hat OpenShift Application Runtimes (RHOAR)? We also posted an introduction to the component in RHOAR earlier.

Red Hat Intends to include entitlements for the JBoss Enterprise Application Platform (EAP) as part of a Red Hat OpenShift Application Runtimes (RHOAR) subscription.  The reasoning for this is dead simple, there is still strong demand for a Java application platform the implements the Java EE specification. JBoss EAP 7 fits that requirements with certified full platform and web profile support for the Java EE 7 specification. Best of all, JBoss EAP offers Java EE 7 capabilities in a small, fast, cloud ready footprint. It has been available on the OpenShift Cloud Platform (OCP) since version 6. JBoss EAP is cloud ready and deserves to be included as a RHOAR component.

I want to believe. Prove that JBoss is small and fast!

First lets agree on what a Java EE application platform is. I propose a minimalist definition. That being, a Java EE application platform is verified to have implemented a specific Java EE specification. The current Java EE 7 specification is extensive and runs 290 pages long. Implementing the details is no trivial task. As of the date of this article, there are eight products that have been verified by Oracle to be Java EE 7 full platform compatible implementations. Red Hat JBoss EAP 7 is one of those products. However, Apache Tomcat, JBoss Web Server, and Pivotal tcServer are not on the list. Those products are not Java EE application platforms.

Continue reading “Red Hat OpenShift Application Runtimes + JBoss EAP for fast, lightweight, Java EE cloud applications”

Eclipse MicroProfile continues its growth in the market

Organizations that have already embarked or are thinking about starting a digital transformation journey are assessing and looking for ways to leverage their Java EE expertise. IT development and operations have built Java expertise over years, and there is a challenge to balance their existing skill base with new digitally transformative technologies, such as microservices, APIs, container-based architectures, and reactive programming. Eclipse MicroProfile is an open source project and one of those digitally transformative technologies that enables and optimizes the development of microservices — using familiar Java EE technologies and APIs.

You can think of MicroProfile as minimal standard profile for Java microservices. As with Java EE, MicroProfile implementations across different vendors are fully interoperable.

MicroProfile is supported in WildFly Swarm on the recently announced Red Hat OpenShift Application Runtimes, our polyglot runtime platform powered by OpenShift, Kubernetes, and OpenStack. This delivers on the goal of simplifying the inherent complexity of developing cloud native applications.

There are a lot of reasons to begin adopting MicroProfile:

  • Open source, of course
  • Agility in developing microservices
  • Ability to leverage innovation
  • Architectural interoperability across different vendor offerings
  • No vendor lock-in
  • Fast learning curve for Java EE users (Java EE users can leverage their knowledge when using MicroProfile)
  • Ability to run on Red Hat OpenShift Application Runtimes 

Since MicroProfile was announced in June 2016, a lot has happened.  MicroProfile v 1.0 was released on September 19, 2016. Its implementation interoperability was demonstrated on November 2016 at Devoxx, where Red Hat, IBM, Tomitribe, and Payara demoed a unified web application with underlying microservices which had been developed separately by each vendor using MicroProfile. In addition, MicroProfile became part of the Eclipse Foundation as an incubation project back in December 14, 2016. New members have joined MicroProfile, such as SOUJava, Hazelcast, Fujitsu, Hammock, and kumuluzEE (the complete list of members can be found here).

Future releases of MicroProfile will build upon the existing foundation with organic growth by adding configuration, security, health check, and fault tolerance APIs, as well as adding support for later versions of CDI, JAX-RS, and JSON-P. The MicroProfile open source project plans to put out releases on an agile schedule and based on feedback from the open source community, which is accessible to everyone. Join the conversation and check out the MicroProfile site.

Announcing the Alpha release of Red Hat OpenShift Application Runtimes

Today Red Hat announced the alpha release of Red Hat OpenShift Application Runtimes (RHOAR). This is the first of many articles on the subject that will be published on the JBoss Middleware blog.

So what is RHOAR?

RHOAR provides application developers with a variety of application runtimes running on the OpenShift Container Platform. Specifically, the following application runtimes will be included in RHOAR:

  • Red Hat JBoss Enterprise Application Platform (EAP) – existing Java EE / Spring apps.
  • WildFly Swarm running MicroProfile – Java EE centric MSA
  • Spring Boot / Cloud – Spring centric MSA
  • Vert.x – greenfield reactive Java
  • Node.js – greenfield reactive JavaScript

Continue reading “Announcing the Alpha release of Red Hat OpenShift Application Runtimes”

Five Links: A Big Cup of Joe Edition

Happy Friday, everyone.

This week started off great with a bout on Monday with a lot of people talking about AI and virtual reality (links picked at random). I’m not saying I started a trend, I am simply observing a certain zeitgeist. This is week, I’ve been looking at more familiar worlds: Java, Java EE, and app development. This is the heart of what we do in middleware.

coffeeclosersv1-1312_1

Image credit: Headline Shirts. Also, the shirt is on sale now.

Continue reading “Five Links: A Big Cup of Joe Edition”

Containerizing an application for the cloud: A journey of settings, state, and security.

Red Hat Developers and author N. Harrison Ripps have just begun releasing a ten-part series in which Harrison describes the process of deploying an application using containers into a clustered environment on the cloud.

Using the ZRC IRC client as a sample application, Harrison demonstrates each step in the process of containerizing software, dealing with issues like statelessness, security, and robustness that are typically architectural hurdles for most development teams moving to a cloud infrastructure.

Parameterizing application settings is a common requirement of applications that end up deploying to any environment, and containers have only heightened this need — with the emergence of on-demand environments, scriptability and configurability of the application images being deployed is a must.

Harrison suggests that containerizing applications should happen later, while development should happen first. This might seem intuitive, but his point is that containerizing an application actually need not introduce many development-time changes that would affect the architecture of your system — it can, but it need not. For a small sacrifice of startup performance, container images can be made more configurable and flexible, supporting DevOps procedures and deployments.

Once configured, the series also demonstrates how to host the application on a private instance of the OpenShift Container Platform, including clustering, via either the Red Hat Container Development Kit (CDK), or binary download of OpenShift. Harrison goes step-by-step through the process of starting the private cloud, deploying the application, and using Kubernetes to cluster the application.

Using attached storage, Harrison introduces a window of statefulness into our container environment. This produces an application that runs on the cloud in stateless containers, but maintains its internal state throughout the lifecycle as pods are brought up and down.

Follow along and learn some of these core cloud concepts as the series is published:

Title Date
That app you love, part 1: Making a connection 2016/09/27
That app you love, part 2: Immutable but flexible – What settings matter? 2016/09/29
That app you love, part 3: Every setting in its place 2016/10/04
That app you love, part 4: Designing a config-and-run container 2016/10/06
That app you love, part 5: Upping our (cloud) game 2016/10/11
That app you love, part 6: Container, meet cloud 2016/10/13
That app you love, part 7: Wired for sound 2016/10/18
That app you love, part 8: A blueprint for “that app you love” 2016/10/20
That app you love, part 9: Storage and statefulness 2016/10/25
That app you love, part 10: Long live “that app you love” 2016/10/27