We acquired ManageIQ, the company, at Red Hat in December 2012. At the time, we promised that we would be open sourcing all the code behind their cloud management product (EVM, which eventually became CloudForms at Red Hat). Today, I’m happy to announce that we have fulfilled that promise, and all the source code for CloudForms is now available as part of the new manageiq.org open source community.
This marks a major milestone not just for Red Hat but also for open source in general. ManageIQ is a significant and unique open source project for several reasons:
- ManageIQ is the first major open source project for a management platform
- ManageIQ came from an existing codebase, not as net new development
- ManageIQ targets a new kind of community
Open Source Management Platform
ManageIQ is the first major open source project in the cloud management space. Indeed, one could make a strong case that ManageIQ is the first major open source project for a management platform at all. Yes, there are open source projects that exist for management functionality, and we offer many of them at Red Hat. But, typically, the really high-value management products in the market (think offerings by the Big 4 management vendors) have all been proprietary and expensive. In ManageIQ, we are open sourcing a fully-featured management platform with 8 years of development and in production in large scale at some of the largest enterprises in the world.
Here are just some of the things you’ll be able to do with ManageIQ:
- Manage VM sprawl across your existing VMware environment. ManageIQ is available as a virtual appliance. Simply download it, run it, and point it at your existing VMware deployment or new OpenStack environment (without installing any agents), and in a few minutes, ManageIQ will begin reporting on all the virtual machines running across your environment. How many are there, who launched them, how long have they been running, what is their utilization, where are they running, etc. This already provides tremendous visibility that most enterprises lack across their virtualized infrastructure. But, with a few easy clicks, ManageIQ can help you automate and operate across this environment. For example, you can:
- Re-balance virtualization hotspots
- Right-size over-provisioned and under-utilized virtual machines
- Suspend or turn off unused virtual machines
- Monitor and report on utilization over time for capacity planning
- Enforce consistency across environments. ManageIQ can introspect the contents of virtual machines down to the configuration settings in Linux or Windows registry keys in Windows even for VMs that are at rest. With ManageIQ, you can ensure that when you deploy systems in staging and production, the contents and configuration of those systems are consistent. And, when they aren’t or drift apart, we can detect that and automate policy for how you address those situations: send an alert, suspend the VM, automatically patch it, etc.
- Provide self-service access to resources across a variety of platforms with a single catalog. You can apply all sorts of automated policies to services, from leasing to quotas, to approval workflows to access control. And, with the built-in chargeback engine, you can charge for or provide usage reports to individual consumers. And, this works on everything from OpenStack to Amazon to VMware and more.
Open Sourcing An Existing Codebase
All open source is challenging. Open sourcing a mature, existing code-base, though, is especially hard. There are hundreds of thousands of open source projects, but very few successful ones coming from long-lived code bases. ManageIQ has had 8 years of product development as a proprietary product before Red Hat open sourced it. This means that it had a tremendous amount of features and maturity, but there were also a lot of things we needed to do to make it open source. This included:
- Cleaning up and scrubbing the code base. We spent a considerable effort making the code open-source friendly. This ranged from cleaning up comments (e.g. removing customer names) to modularizing functionality to make it easier for outsiders to consume and contribute
- Swapping out proprietary, licensed software. ManageIQ had embedded proprietary libraries we couldn’t just open source. We worked to replace these with open source equivalents, rewrite functionality, or obtain licenses that worked with open sourcing
- Creating new user content. Of course, we already have a wealth of documentation and resources for CloudForms, our enterprise product which now serves as the downstream of ManageIQ. But, in order to attract the open source community, we wanted to create even more content, and we put a lot of effort into that
- Adopting open source development practices. As anyone who has spent any time writing open source can tell you, writing open source software is different from writing proprietary software. In open source, you have to write code and present it in a way that others in the community will see and accept readily. There are a lot of good development disciplines that make the best open source developers successful. Before we open sourced the code base, we had the ManageIQ team–many of whom were new to open source development–working in an open source manner internally at Red Hat. Now, we’ve simply flipped a switch at GitHub to expose their work. But, the team has been practiced and eagerly waiting for this day for a while now.
- Incorporating ManageIQ into Red Hat systems. Of course, Red Hat will be monetizing the ManageIQ code base by providing subscriptions around its enterprise product based on ManageIQ, CloudForms. This meant we had to get ManageIQ’s team and code ready not just for the community but also for Red Hat’s internal, downstream processes for how we build, test, and support software on behalf of our enterprise customers. This is not a trivial task, as our customers have high expectations of us!
- Creating a community site. This included everything from getting infrastructure in place to hiring and assigning community managers, such as John Mark Walker.
- Working with partners and the community. We are proud that at launch, we have a wide variety of members already joining the ManageIQ community, from Vendors such as VMTurbo and Chef to users such as AutoTrader.com to SI’s such as Booz Allen Hamilton. In all, 10 companies are founding the initial ManageIQ community, and we look forward to many more joining us. Indeed, we have already been speaking to many who expect to join in the near future. Each one of these partner and community conversations took considerable time and effort. But, they were critical to ensuring a vibrant community at the start of the project.
A New Kind of Community
Open source projects have always targeted two major communities: developers and users. Developers contribute code to the projects, and users drive adoption of the projects. Because ManageIQ is the first major management platform appearing in open source, we are targeting a third community: virtualization and cloud administrators and operators. This group historically has not had access to a comprehensive open source platform. Yes, they have had open source tools for everything from configuration management to monitoring. But, their core management platforms have always been proprietary.
ManageIQ includes a policy and orchestration engine for integrating into and automating a wide variety of platforms. We are excited to see what administrators and operators might contribute in the form of workflows and integration points to the ManageIQ community. For example, founding member Booz Allen Hamilton has integrated ManageIQ with JBoss BRMS to provide cloud automation based on business rules. And, we’ve seen lots of demand for integrating automation and configuration tools like that of founding member Chef’s. These are just a couple instances of the many creative ways we look forward to our new community helping to advance ManageIQ.
Commitment and Commits
Red Hat spent $104m to acquire ManageIQ, and we have released the entirety of its source code to the community. We have held nothing back because we believe in open source and open hybrid clouds. We have also spent about a year and a half investing in and preparing for today’s launch of the ManageIQ code. This took an incredible amount of commitment on Red Hat’s part to its open source promise and mission. Now, we invite the rest of the community to join us making ManageIQ the best management platform in the market with the best kind of commitment possible–commits to the new open source codebase. Come join us!