 Welcome, welcome back to the HP half day track. We've had three sessions so far that have been great. You know, we've heard from Monty Taylor earlier this afternoon. We've heard from Raj about how we're using OpenStack. And then we had the panel here. And next, we're going to be looking at some of our partner solutions. So, first I'd like to introduce you to Pete Johnson, who's with Clicker. And he's going to tell you about what Clicker is and how that can help you deploy and also benchmark your applications against multiple different cloud providers. So, you can know that you're getting the best value for your dollar. So, please give a round of applause to Pete. Thank you. Visino, other folks earlier were having mic problems. Is that a little better? We good? Okay. So, I'm really excited to be back here at OpenStack. I last got a chance to speak to an OpenStack audience during the San Diego Summit when I was still with HP Cloud. And at that time I did a talk called Enterprise to OpenStack, Here's What You're Missing. So it was basically like a laundry list of things that I heard in the field as an HP Cloud sales engineer, which is my job was at the time, about what enterprises felt were missing from OpenStack. And what's happened in the two and a half years since is we've seen some of those features get rolled into OpenStack and we've seen other of those features start to get filled in by ecosystem partners. That's really what we are at Clicker. We build ourselves as application aware cloud management. We'll see what that is here in a minute. But at the high level what we help enterprises do is solve this problem of these applications and maybe they're homegrown, maybe they're brand new, maybe they're off the shelf, maybe you've already described them in some way either using cloud formation, CMDB, or TOSCA. And you want a way to get them from wherever they are today out onto some mix of an OpenStack cloud. We've, Clicker is about an 18 to 24 month old company depending upon how you want to count that. Our founders are two guys that work together at VMware and solve this problem with VMware on what can be a locked in vendor private cloud stack. And Clicker's been an HP cloud partner and sort of by extension an OpenStack partner since the very beginning. And actually I'm happy to be able to announce today that we're actually an OpenStack sponsor now as well. So up until this point and our guys as you're going to see here you're going to see some synergy with what's going on in the heat project and our engineering team is looking pretty hard at how we can make some contributions to heat here moving forward now that we're in the sponsor. But what we've done all along is take this idea of you've got these applications and how do I get them to run on these clouds? In the early days of doing cloud and trying to get applications to run on cloud we saw a lot of coding and kind of scripting approaches to launching machines, doing some custom configuration management with the chefs and the puppets of the world. And ultimately what you get out with a lot of that is you get some cloud lock in. And even if your script developers are smart enough to help you avoid that cloud lock in what you end up with is this army of script writers that you have to keep paying over time and it becomes a very expensive proposition. So what we've done with the way that we approach this is really the key to this whole thing is this guy right here, this box right here. Some other providers call this templating, we call it profiling. So the idea is whether you have a couple of small well-known applications or you have a lot of applications, Average Fortune 500 company has 5,000 applications they're trying to manage at any one time. A lot of times those are legacy applications that you don't know anything about so you have to do kind of image snapshot and kind of lift and shift of those things. Regardless of how you do that, you create this thing we call an application profile and it's a cloud agnostic description of what the infrastructure needs are of that application. So you can either import that from your existing set or we have an app store that we've already done that for commonly used open source applications like Sugar CRM, Drupal, Jumla, Media Wiki all the ones that you think that you would do. So once you have that application profile, what you now have is the ability to portably deploy applications on whatever cloud you want. Now we're talking about primarily here the open stack based ones today. I mentioned VMware earlier. We support a lot of different cloud vendors. Like I said, the focus here today is the open stack ones. The first thing that people typically do once they have that application profile is as Cody was talking, they try to ask themselves the question what's the best cloud for this application? Knowing very well that depending upon the application, if you've got 5,000 applications, you might not get the same answer for two different applications. You might want to run some on an internal private cloud. Maybe you've got data sensitivity issues for some applications but for others you don't. Maybe some applications are very elastic in their needs and therefore will be better for public cloud whereas others are very predictable and might be better in terms of their capacity and might be better for a private cloud. So regardless of what that is, we have this benchmarking facility where you can take the application and run it on multiple clouds, get an answer back not just based on performance but also based on price so that you can make an educated decision where to run that application. Once you've made that decision, you can then go to the deployment phase where we actually push the application out into production or maybe it's a DevTest workload. And then longer term, this manage where you can get metering information and monitoring information about the application as it's running in production. You can do cloud agnostic auto scaling so I can put into my configuration that hey if my CPU utilization gets above 80% or it drops below 50%, I want you to add or subtract nodes from a particular layer of the application. You can do all that from the management aspect of the product and then we have this governance piece which helps you enable IT as a service which we really think is kind of the next big frontier here. There were some talks in the keynotes this morning about shadow IT and about the commoditization or the consumerization of IT services. It's with this governance piece is really how you begin to implement that in your organization where from a central governing authority, typically the corporate IT department, you can set up activation profiles and private application stores such that all your line of business teams can go and when they have some project that comes up and they need a project wiki and they need a calendaring application and they need a blog of some kind, they can go to a store front and internally facing store front populated with applications that that central governing IT department has created for them and has tested for them and has put in the governance features what clouds they can and cannot run those on and lets them launch those applications in a very easy point and click fashion which we're going to see here in a second. There's enough metering and billing in the background that you can do departmental charge backs so that you know exactly who's spending what where and you have the data that allows you to continue to fund your IT department but now using self service on demand style provisioning instead of what a traditional IT department would do with a long kind of year or 18 month cycle to do funding. And then the other thing worth mentioning here is we have a pretty broad set of applications that we support within Clicker we're going to see in the demo we're going to queue up here a pretty simple lamp stack but we support Rails, all the Java apps you would think, batch mode things like Hadoop, thick clients, high performance compute no sorts of things. So let me cut to my canned demo here let's see no that didn't it here we go. So this is our user interface tab and I have a number of applications I can choose to launch I'm going to click on run here on Drupal and you can see it's a multi tier application in this case it's a two tier application I've got a web tier and a database tier I've got a description I can put here at the top of what this deployment is going to be and I'm choosing HP Cloud as the target for this for each of my layers I can choose what instance type I want for each of those layers to submit button and that's it so for implementing that IT as a service it's as easy as that you can get the whole thing deployed in about three clicks now we'll come back to this screen here that shows the application as it gets deployed but if we go to this edit screen we can dive into what our notion of application profile is now in the edit mode you can see we have multiple layers that we can add or subtract from the application in the mode balancer I've got general information here at the top and then for each layer I have additional configurations that I can put in here I tell it where my application files are and we'll see that in our storage mechanism here in a second I can set up firewall rules I can dictate minimum hardware requirements for this layer I can go and set up specific initialization or cleanup scripts if I want to provide those where the defaults are you don't do anything but you can add and subtract as much of this as you want the database layer is similar where we can provide an optional database setup script and then you have the same kind of mechanism here to do the firewall rules the minimum hardware requirements and so forth for that database layer you would see some of those for the other layers as well let's look at this storage one of the key components to how clicker works is we have this cross cloud secure storage mechanism you can see here I'm going to look in my global folder in app and we're going to look in Drupal so this is on top of in HP Cloud's case on top of sender and Swift that we built this and there's some files here specifically there's that Drupal zip file that if we go back to our application profile that's the reference to that exact file right there so I have already pre uploaded these files into this secure multi cloud storage facility application profile I simply reference them now you can create as many of these application profiles as you want and we offer these sort of default templates for these here you can see the PHP web one that we built the Drupal one off of or I mentioned before we have this public app store where there's all these different applications that are pre populated application profiles that you can very easily import onto your apps tab and then very easily run like we saw a minute ago so here I'm going to import bugzilla and now that's ready to be executed off of my apps tab if I wanted it to be if we look at that application profile you can see this one is actually already structured as a three tier application with a load balancer, some app servers and a database server so I mentioned this idea of being able to do cloud agnostic auto scaling this is the screens where you can do that I talked about CPU utilization this one's going to show memory utilization where every 60 seconds it's going to pull whatever layer I've applied this scaling to and if the memory utilization is greater than 80% it will add a node to that layer if it dips below 50% it will take one away so this is completely cloud agnostic I could run this on any open stack cloud or any of the other clouds we support and now this becomes portable have we go back let's see and you can see here the app servers typically one of those that is you can apply those scaling policies to if you go into the run if you go into start or run you can see where that is so now our Drupal installation is done we we've got connection details for each one of these layers there's one node per layer the way I deployed this we can SSH into those machines clicker doesn't stand in the way of the app as it's running it simply sort of helps with the deployment on the side and then we can this is what the monitoring features look like these screens aren't terribly exciting because we didn't have any load that was pressed against this brand new installation of Drupal but you can see where you have the things like the memory the CPU the disk utilization and the network utilization that you can look at all from this screen and if we go to the home screen you get a view across all your cloud deployments regardless of what clouds they're on you can see things like your usage details per app the active nodes per app so you get this single pane of glass to look at your deployments across multiple clouds whether they be public or private and that's what clicker is about next we're going to have Gigaspace come up and talk about their Cloudify application and how you can use Cloudify to help deploy your applications so round of applause for Gigaspace please okay hey so my name is Eric Cohen and I'm going to take the risk and run a live demo and raise your hand if you ever heard about Gigaspaces alright Cloudify awesome okay so I'm going to start by actually looking at what it takes to manage applications specifically complex enterprise applications on top of the cloud or for that matter any data center and you can see that we have a life cycle that's composed of multiple steps it's not just about deploying these applications it's about running them for their entire life cycle and we start by provisioning the infrastructure and typically that includes most people would think about compute but we've seen networking being discussed here Chris actually did a great job in showing that earlier and so we're talking about multiple types of resources that are needed for an application starting from compute going on to network subnets security groups key pairs storage block storage or block storage whatever is needed for your application and that's just the provisioning phase then we have to install or configure those resources specifically if we're talking about VMs it's running Chef or Puppet or your own dash scripts on top of them and installing the components that are needed to run your application then it's about configuring them and deploying your own code that too can be quite a complicated process because you have to orchestrate everything for example you won't be able to start your web server before your database starts successfully and then we're kind of switching into the post deployment phase of things where you need to monitor things starting from very basic or fundamental KPIs like CPU and memory but more interestingly things that are more specific to your components like for example if you're running a web server the number of concurrent users or sessions and even more interesting than that is business metrics is for example how many logins did I have in the last hour or how many user registrations happened once I've set up all this monitoring into my application infrastructure it's then that I can actually use that information to take proactive steps whether it's recovering from failures I can identify failures for example starting from the business metrics I'm seeing that the number of registrations has went down without any reasonable explanation or just identifying that one of the nodes is not responding so I can fix that and provision more nodes and the more kind of advanced use cases to scale things whether doing it proactively based on load or even reactively by identifying specific patterns that are unique to your application and basically deciding that you need to scale in a certain time of day or a certain time of the year and it's kind of a cycle because as you scale or as you recover from failures you go through this provisioning, installation, configuration and deployment phase all over again so that's kind of nice in theory but if you look at what's happening in the real life this is actually taken from a Gartner study that was conducted last year and it shows that about 80% of the outages impacting mission is actually coming from human errors it's about people making mistakes obviously and out of those errors 50% were actually caused by people applying changes in a way that wasn't structured or ordered another important thing to understand is that most organizations want to be in the step where they can do all this automated orchestration and go through this cycle that I described before about 60% are only beginning to realize the benefits of virtualization they're not even into cloud yet OpenStack or other cloud platforms some do automation at a more basic level basically configuring individual nodes using Chef or Puppet for example and 83% are still not there they want to be there but they're not there around complete orchestration and that's where Cloudify comes in so Cloudify is first of all it's an open source platform licensed under Apache 2 if I would kind of have to choose four things that it does this is where it starts we'll look at this clockwise so it starts from provisioning the cloud infrastructure that I mentioned before basically the foundation of Cloudify is a blueprint that I'm going to talk about in a second so it starts by analyzing what is needed to run your application and provision that on the infrastructure so if we're talking about OpenStack again using the Nova APIs and the Cinder APIs and the Neutron APIs to provision all those resources it then orchestrates the creation of those resources and the configuration of your nodes on top of them and where it gets interesting is that it also wires up everything that's needed to manage your application on an ongoing basis whether it's monitoring agents and again we're not using anything specific to GigaSpaces we're actually using standard open source tools to do all of this stuff so for monitoring you typically can use StatsD or CollectD or other well-known monitoring agents which would then push your data into Cloudify we're also wiring up everything that's related to logging and monitoring your application logs and we're going to see that in a live demo so we're using standard tools like LogStash and Elasticsearch and your application logs and your platform logs into Cloudify and basically take steps on top of them and then what happens is that we can using this information we can actually analyze this information using basically a policy engine again another open source tool called Riemann that basically analyzes all the information that's submitted from those metrics and take proactive steps on top of them so the main use cases around complicated applications is first of all around deploying automation that's kind of the more trivial use case basically defining an application blueprint no matter how complex the application will be and automating the deployment of that that can be done on multiple environments specifically where we're going to see today is around the HP OpenStack Cloud but it works on any OpenStack environment and of course other clients so you can take the same blueprint on any cloud that you want it even works on bare metal installations or traditional data center installations so you can migrate workloads from a traditional data center here Cloud and vice versa it's good for auto scaling and failover so I mentioned a couple of ways to do that whether it's proactively by identifying things that are happening now and reacting to them and even more sophisticated analyzing those patterns through those metrics that we collect and understanding more sense to proactively scale your application before the load actually takes place the other two interesting use cases are upgrading your infrastructure and that too may be a very complex process so for example if you need to apply a patch like the hard bleed issue that we had a couple of weeks ago if you want to apply patches to your operating system you probably don't want to take down environment for that or entire service for that so you would need to do an ordered process basically one instance at a time and if something goes wrong you want to be able to roll that back so it's kind of a complicated workflow you need to accommodate for that's something that Cloudify does really well and the last one is continuous delivery again this is not something you want to do in one shot you typically want to use some sort of policy like a canary instance or apply the change to just a subset of your nodes if something goes well if not roll back if it does go well roll the deployment to the rest of the instances so these are the main use cases to put things into context if we compare this to the Amazon cloud and where it sits in the open stack if you will so Cloudify kind of sits where AWS Opsworks is sitting today basically sitting on top of the more basic automation tools like Chef or Puppet and allowing you to orchestrate not just the infrastructure components but also the application components and also handling everything related to the POST deployment so before I go to the demo I mentioned the notion of Blueprints so we're very heavily involved in the TOSCA standard anyone familiar with it, heard about it alright just a few hands here so TOSCA stands for topology, orchestration, specification for cloud applications kind of a short and simple name to remember and this is essentially a specification that's led by a standards organization called Oasis led by IBM, Red Hat and Rackspace and we're also part of that organization essentially designed to find a standard way to define and essentially implement a way to configure what an application would look like in a cloud environment not just the topology of that application but also policies and workflows related to that application and the Blueprint essentially describes the topology and the topology will be everything that's related to your application on the cloud, networks as you can see here for example this tier is a network and host within it, servers within the host application modules connection between them and so on so let's jump to the demo I'm going to show a kind of a nice sample application that's consisted of out of Node.js and MongoDB so I'm going to switch to the live demo, hopefully that's going to work for a second I probably need to mirror my display over here hopefully it's going to come in a second mirror displays alright that's good this is my application topology so I've actually done is I bootstrap a Cloudify manager which is a one-time step you need to do when you deploy Cloudify like I said it's an open source project but we have a very easy way to deploy this is just a single command line command line thing you need to do and then I uploaded a blueprint a blueprint essentially is a YAML file that describes the application components and all their dependencies again I mentioned the TOSCA specification it's kind of based on the TOSCA format once I have this blueprint I can create deployments off of that so for example here we have deployments it's kind of similar to the blueprint and then I can start running actions on top of this blueprint so in our case we have an install workflow that basically takes place traverses this topology and essentially materializes that within the cloud the way it materializes that is by sending tasks to a specific agent that runs those tasks and provisions the request and this is where the logging infrastructure kind of fits into place this is all taken from elastic search we basically push all of the logs that are related to the installation and to the materialization of that topology into elastic search and then you can visualize that you can query that these are just standard open source tools that we as an integration platform wire them up for you just to make sure that everything is running properly let's have a look at this application it's basically a wine list so we're browsing the wines and we can see that what got created under the hood essentially all the wiring between the database and the web server is working because we can see the list here now if I'm looking at the infrastructure side of things and what really happened while I deployed that application is that I had three instances created one related to the Cloudify manager and then the other one is related to the application nodes but more interestingly we have other cloud resources created for us so if I'm jumping off to security groups we have one security group that was created for the application and then another one that was created for Cloudify to communicate for the manager to communicate with the agents and then another one for the management itself to communicate between multiple management instances and then if I'm looking at the networks tab here I can see also that we have a few networks created one for the application and another one for the administration so essentially it took care of everything related to the infrastructure that needed to happen for the application to run properly on your cloud so like I mentioned this is all an open source project licensed under Apache 2 you heard the same from Chris Mayers before from HP Print about them using Cloudify actually showed version 3.0 that he was talking about before this is an open source deployed all their repositories are on GitHub and publicly available just give it a try getcloudify.org that's where it is that's it so thank you so much to both GigaSpace and Clicker does anybody have any questions for either of our presenters sorry just come up here to the mic so we can all hear you who are the target users of these applications are they app developers are they cloud administrators are they network operations guys who get tickets to deploy applications or basically the question is the user using these applications what kind of expertise levels they have with respect to applications or networks and the second question is as well okay so we'll have one minute each to answer your questions wow debate style so in Clicker's case the answer can be all of the above what we see is that folks that are just getting started with our platform it tends to be like the system administrators and those sorts of folks that are using tooling but as I mentioned during the slide portion of it we see that folks that are getting more advanced use out of it are starting to turn to this IT as a service model and what happens is the system administrators of the world set up the applications and use the governance features and then expose that to the line of business teams so that when you get to that more advanced stage they're not issuing tickets that you have to reply to they're just friggin' pushing the buttons and launching the apps man and they're good to go so it's we see it in sort of those two different phases in our case thank you Clicker in our case we're seeing three types of personas the first type is actually IT organizations that essentially define infrastructure constraints if you will what kinds of VMs can be used what kind of operating system, what kind of networks these are used as building blocks for the application teams so I would say that in this case every application team has their experts and they're the ones that formulate those blueprints those infrastructure components that the IT team has defined and then the developers or the ordinary users basically just take the blueprints of a catalog or of a Git repository and deploy it in a clip thank you, good space exactly and the publishing against what we're trying to do is not really constrain ourselves to a specific way of managing things we're integrating with a Git repository for example so you can publish it to GitHub and then the application teams or the developers consume the blueprints from there, thank you next question? yeah, so the question is for you on the Cloudify pitch that you made so this is regarding the ongoing lifecycle management for the blueprints, the application blueprints so you provisioned you used the blueprints, you provisioned your apps and now if something changes in that app say my mount point changed and I have 300 VMs running how do I do that? what does Cloudify do to solve that problem? so if your app is not running obviously that's the easy part or you can change the blueprint in your Git repository and upload the blueprint again and create a deployment off of that if your deployment is already running essentially what you need to do is update the blueprint for that deployment and roll up the changes in our case that would be there would be a workflow that would react to that event of changing the blueprint traverse all the nodes and apply the changes to them all the relevant nodes and apply those changes to them great, thank you so much and you didn't ask me but we do the same thing with our application profiles I was feeling all left out over here so I just thought I jumped into the answer so our application profiles in our mechanism are versioned and you can roll them out the exact same way among the things you may have noticed flash by when I showed the clicking on the details you can provide update and backup and restore scripts so that if you wanted to do a rolling rollout of that it will back up one node and do all the stuff that you would think it would do any more questions? great, thank you so much to Clicker and Gigaspace just as we end here I have a quick note that DHP is hiring as you can see we're working with a lot of different folks in the ecosystem on OpenStack we're deploying our own OpenStack instance providing one of the biggest if not the biggest public cloud deployment for OpenStack so if you're interested in more you can head down to the marketplace where you'll find a number of different HP jobs posted as well as you can talk to recruiting specialist at our booth so be sure to check that out and if you didn't hear earlier we're also giving away an HP 10 inch slate at 6 o'clock so you want to get down there beforehand to get your ticket but if you don't win tonight we're also going to be giving away two of those tablets every day for the rest of the week while the marketplace is open so the ticket that you get tonight is good for the rest of the week so if you don't win tonight you'll have another opportunity for sure so thank you very much for your questions our representatives here from Clicker and Gigaspace will be around here at the front to answer any further questions you might have so thank you so much and I hope you enjoy the rest of your OpenStack