Friday, June 15, 2012

Podcast: OpenShift Platform-as-a-Service: What's needed for the enterprise

Hosted Platform-as-a-Service delivers a lot of benefits to developers. But it doesn't always meet the operational demands of enterprise IT. Red Hat's Dan Juengst and Joe Fernandes talk PaaS operational models and why Polyglot PaaS is important. Among the topics covered are:
  • Why PaaS?
  • Polyglot (multi-language/framework) PaaS
  • Portability of applications
  • Red Hat's OpenShift enterprise PaaS strategy
  • DevOps and ITops operational models
  • What's inhibited PaaS enterprise adoption?
Listen to MP3 (0:23:42)
Listen to OGG (0:23:42)


Gordon Haff:  You're listening to the Cloudy Chat Podcast with Gordon Haff. Hi, everyone. This is Gordon Haff. I'm cloud evangelist with Red Hat. Today I'm actually sitting here with one. And on the phone with another of our Red Hat product marketing managers in the Cloud Business Unit who work with Red Hat platform‑as‑a‑service. Sitting here with me is Joe Fernandes, senior product marketing manager, and on the phone I have Dan Juengst, PaaS strategist. Welcome, Joe and Dan.
Dan, let's start with you. You're involved with our OpenShift platform‑as‑a‑service, currently hosted platform, in developer preview. Can you maybe start talking a little bit about what is OpenShift and what it's for, who's using it, that kind of thing?

Dan Juengst:  Certainly, Gordon. Thank you. Yes. OpenShift is, as you described, a cloud‑computing platform‑as‑a‑service offering, or PaaS as we say. It's being offered by Red Hat, and it is today in developer preview. It will be going live in production mode a little bit later this year. Platform‑as‑a‑service is one of the three canonical delivery models for cloud computing. Whereas infrastructure‑as‑a‑service really provides just pure compete resources running in the cloud, and software‑as‑a‑service provides a fully baked application running in the cloud, platform‑as‑a‑service is designed to provide developers and enterprises with a complete application development and execution platform running in the cloud. The goal is to allow developers to very easily build their own applications and run them in the cloud and take advantage of all the cloud advantages, such as scalability, resource pooling, elasticity, on‑demand access, and so forth.

Red Hat has built OpenShift as a platform‑as‑a‑service and is running it today. It's built on some really cool industrial‑strength technologies from Red Hat, including Red Hat Enterprise Linux, that gives us some very powerful security and fine‑grain multi‑tenancy capabilities within the platform‑as‑a‑service itself. We've also got JBoss middleware baked into OpenShift, which gives us a full suite of Java EE capabilities, so people can build real enterprise‑class applications and run them in the cloud.

Gordon:  Applications that you build for OpenShift can be deployed elsewhere.

Dan:  That's a great point, and that's correct, yes. Red Hat OpenShift is built on open‑source technologies and, really, the out‑of‑the‑box flavors of those technologies and the languages so that any application that you write and run on OpenShift, whether it's a Java application running in JBoss or a Ruby application or a node.js application, can be pulled out and run locally on your data center or run on another cloud platform. In addition, OpenShift is a polyglot, or multi‑language, platform‑as‑a‑service. It supports Java and Ruby and Python, as well as node.js and PHP and Perl. This gives developers the flexibility to choose the language that they want to code in to write their applications.

Gordon:  That's actually probably a pretty good segue to what I'd like to talk about next. Joe, there was a recent OpenShift strategy announcement, and that really starts to get into how you can take applications that could be developed on a public‑hosted platform, such as the current OpenShift. However, that could be run in a PaaS or other ways that's more suitable for certain enterprises.

Joe Fernandes:  Since the introduction of the OpenShift platform‑as‑a‑service just over a year ago, we've really seen tremendous interest in our Red Hat Enterprise customer base, in both when OpenShift would be available as a commercial public offering as well as when we'd have support for an on‑premise solution for deployment in private and hybrid clouds. The announcement we made last week [May 9, 2012] really outlines our strategy and road map for delivering on both of these requests. 

We put out our Red Hat Enterprise PaaS strategy for OpenShift and really detailed a few key points. One is why we felt OpenShift is the best cloud application platform for enterprise developers and enterprise application needs. We also talked about our intent to make OpenShift available as both a commercial‑hosted as well as an on‑premise deployable solution and our plans to support different enterprise PaaS operational models to meet the needs of our enterprise customers.

Gordon:  I think that probably talks to the fact that the things that make a hosted PaaS, again, like the current hosted OpenShift...Really interesting are the fact that developers can just focus on the application. They don't need to worry about the underlying operating system and other infrastructure. Really applies to a lot of enterprise developers too. Application developers in the enterprise are not down there mucking around with operating systems, or at least they don't want to.

Joe:  That's absolutely right. We think that the appeal of platform‑as‑a‑service is universal to all developers. It's just that enterprise developers, they do have different needs as well as different constraints, which we can get into. But from the perspective of the developers, it doesn't really matter who the PaaS provider is. 

A lot of the current stuff that's out there around PaaS, a lot of the current offerings, are really focused around a public PaaS service, which we think is great, and we think we have one of the best ones in OpenShift. But, again, from the perspective of the enterprise developer, if their organization is only able to deploy something on‑premise or prefers a hybrid cloud model, they don't care if their provider is Red Hat or if their provider is the internal IT organization within their company. They just want to be able to get things done quickly, as we've described.

Gordon:  Joe, you probably have started touching on some of the reasons. But Dan, what are some of the factors that you think PaaS hasn't been adopted more widely in the enterprise so far?

Dan:  Right. We see that there certainly are some challenges. As Joe alluded to, a lot of our customers are asking us about PaaS. The funny thing is, when we ask them, "What do you mean by platform‑as‑a‑service, and how would it work in your environment?" they all have different answers. Enterprises all have different constraints and different operations and methodologies that they have to conform to within their own business. IT architects in particular have to worry about a lot of things that can impact how a PaaS is used and how it's accessed, so things around security and data privacy and governance. There's certainly a lot of compliance issues for large enterprises, whether it's HIPAA or SOX or PCI. 

PaaSes, when they're really used in an enterprise organization in an IT‑operations sense, they need to account for these constraints that the enterprise is going to have. The PaaS needs to be flexible in terms of how it can be deployed and how it can be operated to be able to really be used effectively by an enterprise. That includes whether it's deployed just on‑premise or just in the public cloud, or maybe in a hybrid scenario where it's a hybrid type of cloud taking advantage of both the elasticity of the public cloud and the data privacy and security of the private cloud.

Gordon:  That seems to be one of the really distinguishing factors of this next generation of PaaS from the first generation. The first‑generation philosophy seemed to be "You can have it in any color you want as long as it's black. But it's going to be really cool and good, so you're not going to care about being limited to that single platform." But the reality is that doesn't seem to be how users think, for the most part. Joe, OpenShift. We've been throwing that word around. Why is that platform, from your view at Red Hat, so important to enterprise adoption?

Joe:  The OpenShift platform is really fundamental to everything we do. When we say "the OpenShift platform," what we're talking about is the collection of both Red Hat as well as open‑source technology that really powers OpenShift. As Dan mentioned, this starts with a secure and scalable multi‑tenant operating system which is built on Red Hat Enterprise Linux, and it leverages technologies such as cgroups and SELinux to really deliver on secure, scalable multi‑tenancy, which is really important for us in terms of being able to manage all of these various applications while ensuring that we can scale and secure individual applications from one another. 

Then it also includes enterprise‑class middleware services, which are built on top of JBoss, and specifically the latest version of the JBoss Application Server. This provides support for Java EE 6, but also gives a very lightweight, blazing‑fast, and very scalable container on which to build enterprise applications. As folks know, JBoss also includes enterprise‑class services around messaging, transactions, caching, and so forth that are very critical for building true enterprise‑class applications. We're now offering that in our OpenShift PaaS.

Dan already mentioned this, but OpenShift supports not only Java but a number of languages and frameworks, including Java, Ruby, PHP, Python, Perl, and node.js. Again, we're supporting both modern, scripting‑driven languages and frameworks as well as enterprise Java and different frameworks for Java, like Spring for example.

We also include additional platform services. We have both SQL and NoSQL data services as well as mobile‑application frameworks and other services that come from our open‑source ecosystem. We're working with partners like 10gen, who are basically providing NoSQL services through MongoDB. We're also working with partners like Appcelerator, which are providing mobile‑application frameworks and services to build mobile applications on OpenShift.

In addition to that, we're also providing life‑cycle development tools. We've integrated things like Jenkins and Git and Maven and so forth, as well as Eclipse‑based tooling and JBoss Developer Studio integration. Again, if you're a developer, not only do you have your choice of languages and frameworks, not only do you have a rich collection of services on which to build your application, but you also have a rich tooling that allows you to build that application, and in different ways. You can build that through your Eclipse IDE, you can build that through a command‑line interface if that's how you prefer to code, or you can use our rich web interface to upload and work with your application code.

Again, we really feel that this is fundamental to OpenShift is all of this great technology that we've brought together into the OpenShift platform.

Gordon:  That's the development side of things, if you would: the tooling and the frameworks and the way you can write applications easily. But the other side of the fence, if you would, is operations. Certainly, there's a lot of this talk about DevOps, this idea of the coming together of IT‑operations concerns and developer concerns. This is actually happening in some circles. Actually, I would probably argue in all circles there is certainly a breaking down of barriers, however the ultimate operational model is carried out. But, Dan, I wonder if maybe you could talk a little bit about what DevOps is, what it means, and really how some of the other operational models associated with enterprises intersect with that.

Dan:  Yeah, certainly. We're going to take that awesome OpenShift platform that Joe described, a little cool set of technologies, and we're going to make it available to enterprises. But as I mentioned before, we also recognize that there's constraints the enterprises have to work in. Certainly, DevOps is a hot notion and a hot topic. It's almost the holy grail for some enterprises, not all. But DevOps really gives you an automated way to really streamline the application life cycle. DevOps makes it much easier for developers to create and deploy applications because they have that control.

DevOps is essentially running a platform as a service and giving the developers access to anything that they want. That's one model that we're looking at and we're going to be delivering for the OpenShift platform, give that ease of use and that agility and that power to the developers.

But we also, as I said, recognize that enterprises have other constraints and there may be some situations, whether it's compliance or governance or audit‑related, that they need to have more control being held by the IT organization.

We're also going to deliver the OpenShift platform in an ITOps fashion. ITOps is a phrase that we're using to talk about a delivery model for platform as a service, which gives more control to the IT organization and allows them to very carefully specify what's available to the developers to create application templates the developers can then deploy on, and to just be able to have more control and more logging and more governance of the platform as a service itself.

ITOps, the model for OpenShift PaaS will be something that some enterprises will adopt and be able to utilize. Then others will move on to the DevOps model to take advantage of the speed and agility.
In addition, we're going to provide two other models, which is one we already have today, the hosted public cloud version of OpenShift. There are certainly some applications and some enterprises that are interested and willing to run their applications in the public cloud already. They can take advantage of the hosted service, which is up and operational today, and work with it in a very Agile and DevOps type fashion, just in the public cloud.

Then the fourth model is something that we feel is also important. That's being able to allow developers to work on a PaaS when they're not connected to the Internet, when they're on an airplane. We call this the offline model.

What this will be is really essentially a PaaS running on their laptop, or a bitwise compatible version of the PaaS running on their laptop. This offline edition, we're calling it, is something we've made available already through the open sourcing of the OpenShift product.

Developers are able to download a virtual machine image and run a PaaS on their laptop. That gives them access when they're not connected. The hosted model gives them access to run applications in the public cloud. The ITOps and the DevOps models give them access to run applications on‑premise or in a hybrid model as well.

Gordon:  Do you have anything to add to that?

Joe:  Yeah. I think the conversation that Dan had around DevOps and ITOps, that's a conversation that we've been having with a number of our customers as well as analysts and other folks in the industry. Again, when folks are asking for PaaS and intrigued by this DevOps model, it really is important that we get a common understanding around what this is and so forth. For example, in OpenShift, developers have tremendous control. Not only OpenShift but in any PaaS offering, developers have tremendous control to just upload their code and quickly deploy their applications into production and manage those independently of anything else that's going on, any other applications and so forth.

That's great. It provides a lot of agility and a lot of flexibility for those developers. But it's not really how things work in a typical enterprise. In an enterprise as Dan mentioned, IT really retains a lot more control. You have both system administrators and application administrators that are retaining a lot more control over the deployment and management of enterprise applications for various reasons.

These organizations really want the benefits of PaaS and a lot of the benefits of a DevOps‑like model, but they really need to work within their more traditional IT management practices that they've put in place.

That's really what this ITOps model is all about, is providing the benefits of PaaS but in a way that is more consumable for our enterprise customers.

Gordon:  I think there is a point here though that is worth emphasizing. When we talk about IT control in ITOps, we're talking about the IT architects, the operators maintaining control of key compliance, key governance. But we're not talking about going back to a model where you fill out a form and wait three weeks to get access to some resources, either.

Joe:  No, absolutely not. I think, again, the key thing here is being able to deliver on the agility and the flexibility that PaaS provides. We're talking about self‑service deployment for those application developers. We're talking about a standard catalog of applications and platform services that they have access to, and we're talking about being able to essentially get IT out of the way when it comes to getting these applications built. We just have to recognize that there are constraints that enterprise organizations have that developers can't always work around. There are compliance considerations, security considerations, different practices that they have in place that are important, and sometimes restrict what's in the best interest of those developers and so forth.

Finding a model that can work for the enterprise developers while still addressing the needs of these enterprise architects and IT operations teams is really important for getting PaaS adoption in the enterprise.

Gordon:  But really, whatever the operational model that developers have speed and agility, they might just not have quite as much freedom to pick their PHP library of choice, for example, under some conditions.

Joe:  Exactly. We think this is going to evolve. We think that over time more enterprises may move towards a pure DevOps model. Or within some enterprises they may have the need for both, depending on the nature of the application or where it is in the life cycle.

Gordon:  Great. Red Hat talks about open hybrid cloud strategies. A lot of that really has been maybe a little more focused today on building an infrastructure as a service cloud. Where does OpenShift, where does platform as a service fit within that strategy?

Joe:  Yeah. We think that this fits right into what we've been talking about here at Red Hat around the importance of open hybrid clouds. When you think about it, open hybrid clouds is really about helping enterprises achieve a lot of the efficiencies and agility of the cloud and what we've seen reported by public cloud providers. Things like the costs to run their compute, the management costs and so forth to manage the infrastructure and applications and agility around being able to deploy and develop applications very quickly.

We're trying to bring a lot of those benefits of the cloud to enterprises, but while still addressing the realities of enterprise IT. Enterprise IT organizations aren't in the same situation as public cloud providers. They have legacy applications. They have complex heterogeneous infrastructure mix.
While a lot of vendors are out there promoting either a cloud‑in‑a‑box type of a solution, where they're just going to roll something in and stand up a cloud, how is that going to work in an environment where you have to deal with all of these legacy apps and infrastructure and these enterprise concerns?
Other vendors are talking about building essentially what we view as cloud silos, which is basically building clouds on top of a subset of the infrastructure, whether it's an existing virtualization stack or what have you. Again, we don't think that that works because it's not going to bring the benefits of the cloud to the full cross‑section of that organization's infrastructure.

Again, we're promoting an open hybrid cloud approach. Really, not only open source but open standards and open practices and so forth. We have a lot of information out there on that. Also, a hybrid approach that makes the best use of not only everything that's available within the enterprise architecture.

Also, it makes best use of what's available out there in the public cloud, again, doing that in an open way so that you're not limited to a single virtualization provider or a single public cloud provider, or a single slice of your infrastructure or applications and so forth.

That's how this fits in. We think our PaaS strategy is well aligned with what we've been talking about in general around open hybrid clouds.

Gordon:  All right. Thanks, Joe. We've talked about a lot of things here. We've talked about OpenShift. We've talked about OpenShift open sourcing and the recent strategy announcement. We've talked about some of the limiting factors of PaaS adoptions in the enterprise. We've talked about the different operational models that we're moving towards for PaaS in the enterprise with OpenShift. I know both of you have been pretty busy recently. What's coming next, Joe?

Joe:  Again, we just put out this strategy announcement last week. We had a great webcast, which we encourage folks to view. But what's coming up next for us is the Red Hat Summit, which is coming up in the last week of June. This is a Red Hat Summit and JBossWorld. This is the coming together of Red Hat's customer base. We'll be making a number of announcements there around our cloud strategy and our cloud roadmap, including more detail around some of these PaaS solutions that Dan and I outlined. We'll be talking about what's coming up in terms of specific bundled solutions as well as giving more details around our road map, which we're very excited about.

After that, we'll be delivering on some of these things that we discussed, including commercial offering for our OpenShift public PaaS service, including on‑premise solutions in various forms, some more geared towards an ITOps operational model, some new capabilities around providing a DevOps experience within the enterprise.

We're really excited about that. For folks who are already coming to the Red Hat Summit, we encourage you to attend those sessions. If you're not, you can still register. We look forward to seeing you there.

Gordon:  Great. Well, thanks to both of you. Anything to add?

Joe:  No, I think that's it. Thanks a lot, Gordon.

Dan:  Yeah, thank you for your time, Gordon.

Gordon:  Thanks, Dan and Joe. Take care. Thank you, everyone, for listening. Bye‑bye.

No comments: