Eric D. Schabell: February 2016

Thursday, February 25, 2016

Install OpenShift as your private PaaS (video)

An install so easy, your granny can do it!
Earlier this month we released a new demo project, one that showed you the easiest way to install OpenShift as a private Platform as a Service (PaaS) on your local machine.

While we thought that in three easy steps you could have the entire OpenShift installed as a private PaaS, we realize some still might not believe it is that easy.

Just for you, we have put together a video that is just over three and a half minutes, showing you exactly how to do it. We take you from zero to a fully functional private PaaS based on OpenShift with the install demo that makes it so easy, even your granny could do it.



If this won't convince you, then nothing will, so give it a try today and enter the world of self service development and start delivering your applications in your very own private PaaS.


Monday, February 22, 2016

How to install Red Hat Container Development Kit (CDK) in minutes

Red Hat Container Development Kit (CDK)
installation made easy!
As an application developer or architect tasked with exploring the possibilities that containerized applications offer, there is little help with getting all the tools together to get you started.

Until now.

Red Hat provides a Container Development Kit (CDK) that has all the tooling you need for your local OSX, Linux or Windows environment. It also has a few containers pre-configured for you to explore.

Since the announcement of the Red Hat CDK 2 beta a few months ago, we thought it was time to take a closer look and that resulted in creating an automated installation project called the Container Development Kit Install Demo.

What you get

First off, the Red Hat CDK is a product that is available to customers and partners, for more details on who has access and how to obtain access, see Red Hat Developers. Also for the details around what specifications for your machine, see the online documentation.

The Red Hat CDK is packaged into a RHEL 7 virtual machine that you can start on your machine after installing this project. There are several choices provided with pre-configured installations, but they all include the basic setup for Docker and the tools needed to start leveraging Docker based containers.

The following containers can be started after installing this project for you to start exploring:
  • OpenShift Enterprise - a containerized version of OpenShift Enterprise can be started that can be accesses through a Web console in your browser or via the OpenShift command line tools. Explore your very own private PaaS developer experience with this container.
  • Kubernetes - a container to set you up for exploring a Kubernetes cluster. It is setup to run as an all-in-one Kubernetes master to manage pods and node for running multiple pods.
  • Eclipse - a container setup for you to use the Eclipse IDE with a Linux Tools/Docker Tooling plug-in allowing developers to manage containers directly from their development environment.
CDK install demo!
On top of this you can start creating your own container based applications after you are comfortable with how these examples work.

Container development 

As you might not want to go through all the steps in the installation guide time and again to setup the Red Hat CDK on your machine, here I hope to make it so simple anyone can do it.

Not only that, you can do it in just four steps, I promise!

It is really that easy with the fully automated Container Development Kit Install Demo project put together to make the process both fool proof and repeatable. So what are the three steps you ask?
  1. Download and unzip CDK install demo.
  2. Add products as needed.
  3. Run 'init.sh' or 'init.bat' file.
  4. Read and follow displayed instructions and enjoy the Red Hat Container Development Kit (CDK) on your local machine!
Red Hat Cloud Suite
It will check if you have the pre-requisites installed, but if you don't and start the installation it will stop, warn you and provide the links to go and get what is missing. The same goes for the products needed, which depend on your OS for the correct virtual image you need to run the Red Hat CDK, don't worry, it will point you in the right direction if you read the output.

For more information around containers, a Cloud stack and why you need to care about this containerized stack for your application development, see the App Dev Cloud Stack series that takes you on a tour of the Red Hat Cloud Suite.

We will be back soon to dive deeper into how these container examples in the Red Hat CDK look and how to get started with them.





Thursday, February 18, 2016

App Dev Cloud Stack - Beginners guide to containers at scale

Containers at scale must be addressed in your Cloud stack.
This series started with the statement, what do you mean by "Can't ignore the stack anymore?"

When your background is application development, you have spent many hours, days and years perfecting your craft. You have not only learned languages and concepts, you have made it a point to learn to make good architectural decisions when pulling together the applications you develop.

The problem is, we tend to ignore the stack we are working on as much as we can. Well it's time that we as application developers broadened our horizons a bit, expanding our understanding of the stack we work on with the introduction of Cloud, Platform As A Service (PaaS) and containers to our toolboxes.

Our tour of your Cloud stack continues from our previous article in this series where we laid the first foundational bricks, our reliable and container supporting operating system. The core machines on which our Cloud will rest, that support containers but obviously don't do much more than that.

These foundational bricks only scale in one direction, vertically.

What scaling containers vertically means, why it would not make a very good Cloud stack and what we really need for our Cloud stack will be the focus of this article.

Containers at scale

The idea that we can put together an OS that enables all the tooling we need for generating and hosting containers for our application is exciting.

Limits to vertical scaling of your containers.
Every application developer that is looking at moving their applications into the Cloud will start by putting together containers to run their applications as microservices. The problem is that when you start to host these containers, just like putting containers on a cargo ship, you have a limit as to the number you can pile onto your OS.

This is the vertical scaling limits based on the resources a single machine can host. Just like there are only so many containers you can stick up on a cargo ship before it either become just dangerous or an accident happens.

There are also some issues you will run into as you scale vertically with your containers. You have to determine how to manage these containers, monitor their usage, charge back to the original departments for use of the resources and more as you deal with the increased demands your excited application developers will be putting on the limited resources.

As an administrator of these new containers you will begin to feel the need for a solution that can provide containers at scale. This would be a solution that allows you to scale the containers out vertically. This would be the same as putting more cargo ships into the fleet and spreading the containers across these new ships as the need grows.

Cloud stacks can scale out horizontally to
provide containers at scale.
This is done with virtualization solutions to provide Infrastructure as a Service (IaaS), but has it's limitations.

Scalable IaaS

This is fine if you can expect to have linear growth and constant usage of the underlying infrastructure, but what to do when you need to scale down, load balance for a specific container that is short term resource intensive or if you just need to manage the entire infrastructure as it scales out across more resources?

The next step is to provide abstraction from the individual resources and allow for the management of the entire set of resources for each specific container, application or microservice. This can be solved with Open Source solutions such as Red Hat Atomic Enterprise Platform that leverages projects like Docker, Kubernetes among others to provide containers at scale based on your current infrastructure, providing a powerful IaaS to the rest of the enterprise.

Containers at scale.
This is akin to having a shipping company that can now make use of a new cargo ship when the need arises due to a flood of extra containers needing to be shipped, say around the beginning of the new year as new car models are shipped globally to meet new consumer demands. This is like having instant access to an almost unlimited supply of cargo ships and loading facilities to process any amount of cargo containers we might be asked to ship on the high seas.

This layer is crucial to what an application developers does. By providing proper container hosting, proper container management and containers that scale out as needed, it keeps both application development and application deliver running smoothly across an enterprise infrastructure.

What is left for consideration?

How to manage all this IaaS so that we have some insights into who to charge for usage? How can we monitor for stress on our infrastructure resources? How can we determine when we need to take action, preventing any failures of our IaaS?

Red Hat Cloud Suite
These are all questions that will be covered in the following article from this series, where we talk about why scale matters and what some of the issues are that will arise for application developers as well as those responsible for maintaining this new Cloud stack.

App Dev Cloud Stack series

Missed a previous article or looking for a specific article in the series?
  1. Can’t ignore the stack anymore
  2. Foundations for a stable Cloud
  3. Beginners guide to containers at scale
  4. Why containers at scale matter
  5. It’s all about the PaaS baby
  6. Open interoperability critical to success
  7. Securing containers at scale




Monday, February 15, 2016

Codemotion Amsterdam 2016 - Cloud, private PaaS, BPM sessions galore

This coming Spring there will be a CodeMotion conference in Amsterdam in May from 11th - 12th, 2016.

It has been awhile since I last talked at CodeMotion Rome, more due to conflicting dates of their events with Red Hat Summit, JUDCon and now DevNation events.

This year I am able to time their Amsterdam event with other activities I am helping with in Europe, so I wanted to submit a few talks.

I now have a broader spectrum of technology to talk about and wanted to bring some of that to the event for you, so let's see how it plays out. The following talks have been submitted to the Call for Papers which is open until Feb 15, 2016.

Awaken the Force in your developers with a modern containerized Cloud

Application developers are constantly struggling to create enterprise solutions while deploying them across various environments and traversing new DevOps strategies.

How can we assist a smooth transition into the Cloud?

The answer can be found within a Cloud Suite solution. Attendees will be taken on a tour, one that provides them with the ability to enable and awaken the Force within their current developer team. Join us for an hour of power as we delve into OpenStack, OpenShift, containerized deployments as easy as jumps to light-speed.


Super charge your AppDev toolbox with OpenShift PaaS

There are very few things better for an application developer than a solid Platform as a Service (PaaS) infrastructure that takes away all of the underlying service pains and let's her focus on her application development. One of the best out there is OpenShift Online, which you can use freely online, but if you are interested in having a local installed private PaaS then we have the session for you!

Join us to install your very own OpenShift private PaaS in minutes, letting you focus on your application development and leaving heavy lifting to OpenShift. So easy even your Granny can do it!


7 steps to your first process with JBoss BPM Starter Kit

There is nothing quite like getting your developer game on with a new BPM technology or product, but are there enough resources at your disposal to kick-start your journey?
This session will answer that question, taking you on a journey through the ultimate JBoss BPM starter kit. You get a straight forward, easy to consume and ready to go set of hands-on resources that will have you producing BPM projects in a matter of hours. We will guide you through the 7 steps to your first process project with the JBoss BPM starter kit for attendees to take home with them.


What do you mean, "You can't ignore the stack anymore?"

When your background is application development, you have spent many years perfecting your craft, learned languages and concepts, made it a point to learn to make good architectural decisions when pulling together the applications you develop.

The problem is, we tend to ignore the stack we are working on as much as we can. Well it's time that we as application developers broadened our horizons a bit, expanding our understanding of the stack we work on with the introduction of Cloud, Platform As A Service (PaaS) and containers to our toolboxes.

Ready to stop ignoring your stack?


Hope to see you there!

Thursday, February 11, 2016

How to install OpenShift as your private PaaS

Ready for your own local OpenShift private Paas?
There are very few things better for an application developer than a solid Platform as a Service (PaaS) infrastructure that takes away all of the underlying service pains and let's her focus on her application development.

One of the best out there is OpenShift Online, which you can use freely or scale up with a subscription for more instances with more services such as size, scalability and storage capabilities. This is a public PaaS, and by no stretch of the imagination is this option a bad choice, but you might be interested in putting together your very own private PaaS experience.

Private PaaS

After spending a lot of time using, demoing and presenting on how to master various application developer facing topics around OpenShift Online, it is time to setup our own local private PaaS.

Before we dive into that, take some time to examine the following session that shows you what Mastering xPaaS with OpenShift using a public PaaS can do for your application development:



Now we are ready to put the power of this public PaaS at your finger tips by installing OpenShift as a private PaaS on your laptop.

OpenShift private PaaS installation

While many others have walked you through all the tedious steps needed to prepare, configure and finally install OpenShift as a private PaaS, here I hope to make it so simple anyone can do it.

Not only that, you can do it in just three steps, I promise!

It is really that easy with the fully automated OpenShift Install Demo project put together to make the process both fool proof and repeatable. So what are the three steps you ask?
  1. Install pre-requisites: Vagrant & Virtualbox
  2. Download and unzip OpenShift install demo
  3. Run the install script (init.sh)
You will need to have the pre-requisites installed, but if you don't and start the installation it will stop, warn you and provide the links to go and get what is missing. You will need to download and unzip the install project.

Finally you will need to run the installation, just one command (init.sh for Linux & OSX, Windows coming soon...) you type in and then sit back to enjoy a fully installed OpenShift Origin private PaaS.

For more information around the Cloud stack that supports your OpenShift private PaaS experience, see the App Dev Cloud Stack series that takes you on a tour of the Red Hat Cloud Suite.

We will be back soon to dive deeper into using this private PaaS for application development tasks and showcasing how productive and painless a good PaaS can be.





Monday, February 8, 2016

App Dev Cloud Stack - Foundations for a stable Cloud

A good foundation is flexible and stands the test 
of time for a Cloud stack.
This series started with the statement, what do you mean by "Can't ignore the stack anymore?"

When your background is application development, you have spent many hours, days and years perfecting your craft. You have not only learned languages and concepts, you have made it a point to learn to make good architectural decisions when pulling together the applications you develop.

The problem is, we tend to ignore the stack we are working on as much as we can. Well it's time that we as application developers broadened our horizons a bit, expanding our understanding of the stack we work on with the introduction of Cloud, Platform As A Service (PaaS) and containers to our toolboxes.

Everything in this world we build needs a foundation. A solid basis that starts with a first brick being laid before moving forwards. It does not matter if you are building a physical construction or something existential like applications and Cloud stacks, it all starts the same with some first brick.

From our first article, where we put introduce the idea application developers can't ignore their Cloud stack anymore, we now have arrive at the point where we need to lay our first brick.

To examine this first brick, we find it at the bottom of our Cloud stack and need to understand that it is also the foundation to all our application development. When we sit on top of a Cloud stack we can easily get lost in sea of complexity offered to us to facilitate our containerized workflows and application development.

Before we end up with a Cloud stack where we have Platform As A Service (PaaS), containers at scale and the various tools in our development toolboxes, we start with the foundation of an operating system (OS) that supports containers.

Basic foundation

The basis of our Cloud stack will be the enterprise version of Linux known as Red Hat Enterprise Linux (RHEL).

Cloud foundation starts with RHEL and RHEL Atomic.
The version we focus on is from RHEL 7 release, which contains fully integrated support for creating and hosting containers.

Along with RHEL as our OS we have the option to support containers in our foundation layer with RHEL Atomic. This is a light weight Linux based distribution designed with containers in mind. It contains just enough to run containers, so think of it as an appliance as you can not add any other software to it.

As an application developer you might love the flexibility of your personal development operating system, be that Windows or some flavor of Unix, but when wanting to deploy and host containers the consensus has been to use Docker tooling for containerized images.  It is enough to know that your Cloud environment can host these no matter where you develop them, no matter how you get them onto this foundation based on RHEL or RHEL Atomic.

What you will encounter when trying to manage your entire enterprise with just this foundation layer is that spinning up containers, managing them across the development, test and productions deployments can quickly become an intensive effort.

Outside of the operations tasks that go with managing your various enterprise infrastructure, there are also the issues that DevOps tackle that require managing modern containerized development workflows. These are the structured environments that support agile development methodologies needed for modern enterprises to keep pace with their customers ever changing needs.

This part of the containerized development environment must support continuous integration (CI), the ongoing testing of containerized microservices and continuous deployments (CD) that through automation are able to support the continuous change that is the modern agile enterprise developers daily life.

Red Hat Cloud Suite

Escalating scale?

Trying to maintain, update and manage a flexible DevOps infrastructure with just the foundation described is going to quickly become a large endeavor. You might even feel like you are swimming in a sea of containers that slowly seem to spread across the application development and deployment landscape.

Have no fear, the problem being faced is how to provide all these containers at scale. There is not only a need for scale, but also to manage all these containers across the multitude of hosts that are sure to be growing in your enterprise as you attempt to provide infrastructure and tooling to your application development teams.

Next up we will take you behind the scenes to explain how your Cloud stack can provide you with containers at scale horizontally across your foundation of hosts.

Stay tuned for the Beginners guide to horizontal scaling.

App Dev Cloud Stack series

Missed a previous article or looking for a specific article in the series?
  1. Can’t ignore the stack anymore
  2. Foundations for a stable Cloud
  3. Beginners guide to containers at scale
  4. Why containers at scale matter
  5. It’s all about the PaaS baby
  6. Open interoperability critical to success
  7. Securing containers at scale



Wednesday, February 3, 2016

Devoxx UK 2016 - helping developers get a grip on their Cloud

There will be another Devoxx in the United Kingdom this summer, June 8 - 10 and I have teamed up with Markus Eisele to put together a few sessions.

The focus will be on helping developers getting to grips with their Cloud stack, the tools that will help and some of the interesting JBoss community work that is evolving to ease the work of application deployments.

Be sure to register and hope to see you there?

Super charging your IDE for container based development

While application developers are getting a handle on the concepts of containers, PaaS and containerized deployments with Docker, they are yet forced to use a disjunct set of tooling navigate code-to-deployment workflows.

What is available to help ease this transition from code, to Docker image and finally to containerized PaaS deployment?

Let us show you how easy it is to super charge your Eclipse IDE with the Container Development Kit (CDK). Nothing will be the same as you leverage a single toolchain in your IDE to integrate, manage, deploy and ease the application development lifecycle from code to deployed containerized images.


Awaken the force in your developers with OpenShift & Wildfly Swarm

Application developers are constantly struggling to create enterprise solutions while deploying them across various environments to production, meet budgets, heed requirements and keep operations happy as they traverse new DevOps strategies.

How can we assist them, remove infrastructure roadblocks, ease the deployment of containerized microservice-based applications and continue to monitor across enterprise infrastructures? The answer can be found in the Clouds with a containerized PaaS integrated with Wildly Swarm. The attendees will be taken on a tour, one that provides them with the ability to enable and awaken the Force within their current developer teams.

Join us for an hour of power as we delve into OpenShift, containerized PaaS, Modularized Java EE with Wildly Swarm and the tooling that will enable your developers to go from source to images and containerized deployments as easy as jumps to light-speed.



Monday, February 1, 2016

App Dev Cloud Stack - Can’t ignore the stack anymore

Application developers can't ignore
their Cloud stack anymore...
This story may seem a bit odd at first glance.

What do you mean by "Can't ignore the stack anymore?"

When your background is application development, you have spent many hours, days and years perfecting your craft. You have not only learned languages and concepts, you have made it a point to learn to make good architectural decisions when pulling together the applications you develop.

Up to now the abstraction layer you focused on was generally in the space of frameworks and not so much on the stack you were working on. Just recently Mark Little, Red Hat JBoss CTO, notes that application developers whom are"...the users of frameworks are excused from knowing too much about what is happening under the covers."

To some extent this has been a legacy standpoint, after all if the stack we use is done right we only need to leverage the frameworks and language features that shield us from the gory details.

Sounds like something you have heard before?

Well it's time that we as application developers broadened our horizons a bit, expanding our understanding of the stack we work on with the introduction of Cloud, Platform As A Service (PaaS) and containers to our toolboxes.

Can't ignore

The ideal world was one in which you worked on your application development, using languages that you either liked or your employer required and leveraged various frameworks that hopefully made your life easier.

This is a thing of the past for enterprise application developers that are heading into the Cloud. This Cloud stack offers an array of tools and features that ease both development, testing and deployments as well as the operations tasks to maintain, manage and monitor.

We will take you on a tour of the various layers and components that make up your underlying Cloud stack, but at a depth that gives an understanding to application developers without delving into the infrastructure components in great detail.

Red Hat Cloud Suite
From the basic hardware ecosystem, to the operating systems that provide you with your containers, to how these containers are can be setup to overcome the challenges faced when we want to scale, to a full service PaaS that supports your efforts and finally we will tie it all together in a suite that gives your enterprise the flexibility to develop, deploy, manage and monitor your containerized microserivce-based applications.

What's next?

It is not too late to take a closer look at the modern Cloud based PaaS stack. You can become a better application developer by gaining a bit of understanding of the stack you are working on in the Cloud. As Mark Little concluded, "...ultimately we need to take the time to investigate the entire solution not just the framework because one really can't succeed without the other."

This is where this series comes in, because as a true enterprise application developer we cannot and must not ignore our Cloud stack anymore.

Stay tuned for the next in the series, Foundations for a stable Cloud.

App Dev Cloud Stack series

Missed a previous article or looking for a specific article in the series?
  1. Can’t ignore the stack anymore
  2. Foundations for a stable Cloud
  3. Beginners guide to containers at scale
  4. Why containers at scale matter
  5. It’s all about the PaaS baby
  6. Open interoperability critical to success
  7. Securing containers at scale