Wednesday, September 28, 2016

Installing the Red Hat Container Development Kit 2.2 release

Get started today with Red Hat CDK 2.2
When an application developer or architect tasked with exploring the possibilities that containerized applications offer, nothing is easier than the Red Hat Container Development Kit (CDK).

The Red Hat CDK has all the Cloud tooling you need for your local OSX, Linux or Windows environment and it has a few containers pre-configured for you to explore.

Last week this project released version 2.2, so we updated the automated installation project called the Container Development Kit Install Demo.

This article will get you started in just minutes with the entire Red Hat CDK installed locally on your personal machine to provide you with your very own personal private PaaS.

My testing on a simple macbook pro resulted in startup times exceeding those of the previous release and I consistently was able to get the OpenShift Enterprise virtual image starting in just 1:30 (one minute and 30 seconds)!

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  - a containerized version of OpenShift 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.
On top of this you can start creating your own container based applications after you are comfortable with how these examples work.
Check out the video where I walk you through
the easy installation process in just a few minutes.

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, free downloads available here.
  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.

Be sure to visit the Red Hat Demo Central collection of example applications and projects to get you started containerizing various JBoss technologies.

Monday, September 26, 2016

Scotland JBug Recap - An evening of Cloud, Containers, BPM & more

I was lucky enough to be invited back to the Scotland JBug in Edinburgh, Scotland last week.

I always have such a good time with everyone involved here so was more than happy to share my current thoughts and works around BPM, AppDev and Cloud development strategies.

It was a combination of session talks and half workshop based as I provided all the software bits to get you started, even if there would be Internet issues so that you could take it all home and explore it all self-paced.

The attendance was good and we had a good time with the live demos. I started it all off with an overview of my upcoming book and gave a bit of background into how the project started, developed and is progressing.

There was plenty of activity online in social channels as I got started.



The slides for the JBoss BPM book story can be found here:



Then I moved on to showcasing getting a private Cloud up and running with the Red Hat Container Development Kit (CDK) in just minutes. I brought along as much of the software as I could so that those that brought laptops could give it a spin. We had the Red Hat CDK installed in no time and in minutes we even spun up our OpenShift based Cloud so that we had a private PaaS on our laptops.

The slides for this talk can be found below:



After a break I showcased the collection on Red Hat Demo Central, all application development examples centered around Red Hat JBoss technologies. Included in the software were the JBoss BRMS and JBoss BPM Suite so that the attendees could install them on their private PaaS and take them for a spin.

The slides for that talk are below:



Some feedback from attendees below.








Also a small side note, when I was entertaining the Scotland JBug group, Red Hat released CDK 2.2, so I promised to update the content and installation project by the start of this week. Proof is in the pudding as they say:


If you would like any of these talks at your own meetup, feel free to reach out to me via this sites contact form.

Wednesday, September 21, 2016

London JBug Recap - A night of AppDev and private Cloud

As previously mentioned, I was in London this week and was fortunate enough to be invited by the fun loving London JBug group to speak.

They let me talk about installing a private PaaS in just minutes and I brought along as much of the software as I could so that those that brought laptops could give it a spin. We had the Red Hat CDK installed in no time and in minutes we even spun up our OpenShift based Cloud so that we had a private PaaS on our laptops.

The slides for this talk can be found below:



After a break I showcased the collection on Red Hat Demo Central, all application development examples centered around Red Hat JBoss technologies. Included in the software were the JBoss BRMS and JBoss BPM Suite so that the attendees could install them on their private PaaS and take them for a spin.

The slides for that talk are below:



If you attended, let me know what you thought?

As always, I really enjoy the London JBug enthusiasts who turn up every time I get the chance to talk here. Hope to be back again soon!

Monday, September 19, 2016

Red Hat Forum Finland 2016 - Why change? Why Open Source? Why Red Hat? Why now?


In the Fall of 2016 there will be a series of events called Red Hat Forum's running across most of Europe. Each country is hosting speakers and break out sessions that cover all manner of topics.

Many include customer talks as well, because the best stories about Red Hat come from her customers who are booking success with its technologies.

I will be presenting the keynote session, "Why change? Why Open Source? Why Red Hat? Why now?"  To just mention one session that might catch your eye, renowned OpenShift Technology Evangelist Siamak Sadeghianfar will be take you on a tour of containers and DevOps.

Join us on 4 Oct 2016 in Helsinki, Finland at Finlandia Talo, but register ahead of time for the Red Hat Forum Finland to see some of the great speakers and their stories:


See you soon!

Friday, September 16, 2016

Your Cloud installed before lunch with QuickStart Cloud Installer 1.0

Figure 1. Inside QuickStart Cloud Installer.
What if I told you that you can have your Red Hat Enterprise Linux (RHEL) based Cloud infrastructure, with Red Hat Virtualization, OpenStack, OpenShift and CloudForms all setup before you have to stop for lunch?

Would you be surprised?

Could you do that today?

In most cases I am betting your answer would be not possible, not even on your best day. Not to worry, the solution is here and it's called the QuickStart Cloud Installer (QCI).

Today Red Hat announced the general availability of QCI 1.0. It's a good time to take a closer look at this Cloud tool came from, how it evolved and where it is headed.

Born from need

As products like Red Hat Cloud Suite emerge onto the technology scene, it exemplifies the need for companies to be able to support infrastructure and application development use case such as the following:
The problem is how to streamline the setup of such intricate solutions?

Figure 2. Getting Cloud infrastructure installation down
from months, tho days, to finally just hours based on
testing by Red Hat.
It started with researching in 2013 how the product Red Hat Cloud Infrastructure (RHCI) was being deployed by Red Hat customers. That information was used to start to an effort creating several simple, reproducible installation guides that would cut down the time needed to install the following products.
The final product installation documentation brought the deployment time for this infrastructure solution down to just several days, instead of a month. Figure 2 shows the progress made between the efforts of installing RHCI.

The next evolution included Satellite and OpenShift offerings that you now find in the Red Hat Cloud Suite solution. This brought more complexity into the installation process and a push was made to go beyond just documentation. An installation effort commenced that had to bring together all the products, deal with their configurations and manage it all to a full deployment in a faster time frame than several days.

How it works

The QCI progressed and expanded by functioning as an extension (plugin) of Satellite with intentional roadmap alignment. It uses specific product plugins that interface with their individual APIs so that they can be used for both individual product installations and complete solution based installs.

Figure 1 shows you the architectural layout of QCI as it relates to Satellite. See the online documentation for the versions supported by QCI at the time of this writing, we expect to update the documentation on a regular basis as products are released that QCI supports.

The installer, when first started, spins up the Fusor Installer. This is a plugin to Foreman and is used to perform the initial setup such as networking and provisioning within Satellite to be used later in the deployment.

Some of the deployment steps depend on the path you have chosen when specifying the products you wish to install:
  • if a RHV with CloudForms deployment is chosen, the QCI calls Puppet modules for configuring and setting up the RHV environment. It installs RHV-M and runs Python scripts which will set the RHV Datacenter up.
  • CloudForms management engine is deployed as a Satellite resource and as such can be launched on top of RHV.
  • Most of the OpenShift product deployment uses Ansible to facilitate the installation and setup of the environment.
  • OpenStack uses what is known as the TripleO installation. This means OpenStack installed on OpenStack (hence the three O's). It uses an all-in-one ISO image containing OpenStack which then deploys a customized version configured through QCI user interface.
The two deployment patterns supported by QCI are:
Now here is the unbelievable part we suggested in the title, that both deployment patterns can be installed in under four hours.
Figure3. The timeline from pushing the deploy button
to completion of your RHEL-based Cloud infrastructure.

Yes, you can arrive in the morning to work and have your OpenStack Cloud infrastructure setup by the time you have to break for lunch!

Figure 3 shows you a condensed timeline of our testing of the RHCI installation as an example, but the same is possible with Red Hat Cloud Suite.

The future is bright

There is nothing brighter for you than a future where you can reduce deployment times for your Cloud infrastructure, but there is more positive points to take note of when you leverage QCI:
  • Simple fully integrated deployments of RHCI and Red Hat Cloud Suite requiring only minimal documentation.
  • Easy to use, single graphical web-based user interface for deploying all products.
  • Leverages existing Red Hat Storage (Ceph and Gluster) deployments for Red Hat Virtualization, Red Hat OpenStack, and OpenShift product installations.
  • Integrated with Red Hat’s Customer Portal for automated subscription management.
  • Avoids the need for costly consultants when deploying proof-of-concept environments.
With this in mind the team behind this fantastic technology is busy looking at expanding into more products and solutions within the Red Hat portfolio. Who knows, maybe the next step could be including partner technologies or other third-party solutions?

No time like the present for you to dive right and take QCI for a spin and be sure to let us know what you think of it.

(This article written together with Red Hat Software Engineer Nenad Peric and posted on RHEL Blog.)

Monday, September 12, 2016

Should you slap the next person selling you cloud-native?

Cloud-native applications and architectures giving
putting your enterprise in bad weather?
Does the prospect of slapping someone get your attention, or is it the term cloud-native architectures?

I would hope it is the last, but if not stay tuned. Let's dig into why this terminology has become so clouded.

Sorry for the pun, but that is what it is, taking age old problems and putting it into new exciting terminology.

Let's take a look at what cloud-native is and why I think you need to pay strict attention when someone is trying to sell you on this concept.  It is not just a change in how your architecture is deployed, but also a change in how you might leverage the Cloud you are given.

What Cloud Native means

The issue here is that many different interpretations are given to this term, cloud-native. There are those that point out you can design applications to run in a Cloud agnostic way, leveraging the layers of abstraction delivered by a Cloud platform to hide the underlying physical resources. The other extreme would be bypassing these abstraction layers and taking direct advantage of the aspects of a Cloud platform by using their native interfaces.

When usage is how you are charged, then designing applications to be more efficient becomes the path everyone is seeking.  There is a danger of locking yourself into a Cloud platform when you start to seek out and leverage that platform's specific interfaces for performance reasons.

The Cloud Native Computing Foundation (CNCF) has been formed by a long list of Cloud technology vendors states their mission "...aims to advance the state-of-the-art for building cloud native applications and services, allowing developers to take full advantage of existing and to-be-developed open source technologies. Cloud native refers to applications or services that are container-packaged, dynamically scheduled and micro services-oriented."

 Who gets slapped?

The Cloud platform you have, or end up with, will be composed most likely of a myriad of physical resources and software solutions. There will be many who try to induce commitment on your part to their technology by preaching their cloud-native capabilities. The capabilities you are going to be looking for are Open Source, containerization and micro-service application delivery.

With adherence to standards, Linux based containers,
portability from private to public clouds.

The platforms that deliver on these technologies are many, but without a solid commitment to standards and open code bases to ensure good citizenship in this community you will not retain the control you need. Control here is the ability to move your applications and workloads from one Cloud to another.

True cloud-native applications will be based on technologies with Linux based containerization, proven communities that take stewardship of standards, micro-service technologies and working to plan for mobility between Cloud providers.

Be sure to watch for the dusky deep voices promising to help you go faster for less, while secretly plumbing your applications and architecture with proprietary lock-in. These are the ones who will make it impossible for you to get your applications cloud-native and highly portable.

Listen even closer to the ones pushing collaboration, standards, Open Source and a helping hand in getting your cloud-native infrastructure aligned for true flexibility moving forward. These are the ones who are going to help you reach new heights.