OpenStack launches a new release every 6 months. Essex was released 6 months ago, and Folsom came out on September 27. Every release is followed by a third-party report on the individual and corporate contributions. In this article, I’d like to talk about how we Sina OpenStack dev team, as an important corporate contributor in OpenStack projects, involves in the OpenStack community and how we contribute to OpenStack Folsom ?
6 months ago, in a report of Who Wrote OpenStack Essex? by ReadWriteWeb, we were surprised to see that Sina was for the first time listed among Top 10 bugfix companies, ranking #9. My team was highly inspired, and we never thought that our little work in OpenStack could be able to be listed along with the International IT giants, like Rackspace, RedHat, IBM and HP. Since then, we have devoted much more weight on the community development of OpenStack official projects, and invested more resources and encouraged all team members to engage in OpenStack community development as well.
As a result, we have achieved much progress during Folsom release according to the statistics from openstack-gitdm, which is maintained by Mark McLoughlin, an OpenStack contributor from Red Hat, and provides the contribution data extracted from git commits, Gerrit and launchpad for 7 core projects of OpenStack during the whole Folsom release.
In general, we have contributed 147 patches to the 7 core projects of OpenStack, ranking #4; having 74 bugfix been approved, also ranking #4; 11,787 lines of code been merged, ranking #8, and we have 18 stackers who have code contributions in Folsom release, ranking #2 after Rackspace. Bitergia’s report on Folsom using different toolset and methodology also concludes the similar result. (More statistical graphs are shown in the photo gallery bellow)
Moreover, we have been involved in the collaborative developments of all the 7 core projects, which means we have balanced investment in these projects, and we believe this strategy will benefit us in better understanding the whole OpenStack frameworks and different components. If only counted by the number of patch, we ranked #6 in Nova, #3 in Quantum, #3 in Cinder, #6 in Glance, #3 in Keystone and #11 in Horizon.
But why, how and what did we Sina OpenStack team contribute to OpenStack community and OpenStack projects?
Why and How?
In the mid of 2011, when the Diablo release was under heavy development, we decided to use OpenStack as our underlying system of Sina IaaS public Cloud, Sina Web Services(SWS), and another strategic product besides Sina App Engine(SAE), which is developed by my former team members and already the most popular public PaaS cloud in China. But then OpenStack was full of bugs, not very stable and not ready for production deployment, and also lacked some essential components, such as billing, monitoring and load balancer etc. So we invested several engineers to do bugfix, to implement new features and to design necessary services. In the beginning, we forked an internal branch from a particular commit of OpenStack, and had much development on the internal branch. Later we found that it is a little difficult to merge upstream updates to our own branch, if this condition did continue, our project would be dangerous since it would go more and more far way from the official projects, and we would finally lose the community and the ecosystem. So we stopped the trend immediately and cut down our own fork. Instead, we joined the community, collaborated with gurus around the world, and combined the requirement of our own public cloud projects and need of OpenStack community, so that we could be able to avoid duplicated development, and it has become a win-win game for the community and my employer. In fact, we have contributed all our bugfixes and feature improvements to upstream. We also opened sourced our own implementation of biling(Dough) and monitoring(Kanyun). We benefited a great deal from this change.
First, most importantly, many of my team members have grown up from a newbie to an experienced and qualified OpenStack contributor through the collaborative community development in a short time, thus in turn the progress of our own projects were speeded up with such quick learners.
Second, by means of contributing our own feature implementations and open-sourcing additional projects, we got lots of valuable feedback from PTLs, core developers and the community, guiding us to better software design and implementation.
That’s why and how we are involved in the community development and contributing to OpenStack.
Besides code contribution mentioned above, what else have we done for OpenStack in the last 6 months?
As the early OpenStack dev team who operates the first production OpenStack cloud in China, we have done lots of work to promote OpenStack in China, as well as building COSUG to be the most active and influential open source user group in China. To be specific:
- Among our 174 patches, some of which are tagged with high priority and critical for stability and usability of OpenStack projects, including:
- Leading the COSUG to be the second largest user group after the official OpenStack community, with around 3000 members in total according to COSUG Updates presentation by Hui Cheng in Shenzhen OpenStack meet-up. We often plan and organize regular online and off-line OpenStack meet-up in Beijing and other cities, building a bridge connection for OpenStack developers, users and companies to communicate and share their insight regarding OpenStack and cloud computing.
- As the lead manager of COSUG, our team leader Hui Cheng is responsible for operating the OpenStack Chinese portal, www.openstack.org.cn, COSUG ML, COSUG official Weibo account @OpenStack(Weibo.com/OpenStack), and OpenStack events arrangement.
- We devoted much time and energy in co-organizing the OpenStack Asia/Pacific Conference(OSAC) held in August, 2012, in Beijing, making it a successful and largest cloud event in Asia. It is the conference that make OpenStack and its community widely known and recognized by most Chinese IT employees and companies.
- We co-founded China Open-Source Cloud League(COSCL) with Intel, which officially supports their developers to share R&D resources and jointly participates and contributes to Openstack official projects and the community.See news report about COSCL then.
- We initiated StackLab.org projects, for TryStack.org is not accessible from China for same reasons. StackLab is an fully accessible OpenStack Laboratory which now mainly provides an free OpenStack sandbox for the cloud developers, users and anyone else who is interested in OpenStack, testing and experiencing OpenStack.We have attracted more than 200 registered users in less than 1 week. Here is StackLab news report and its HOWTO document.
- We have planed the nationwide OpenStack promotion campaign, OpenStack China Tour, which is a series of meet-ups in Chinese major cities, covering most active OpenStack users and developers in China, such as Beijing, Shenzhen, Chengdu, Wuhan, Xi’an and Shanghai, and possibly more cities will be involved in.
- We also have published articles and blogs about OpenStack projects and market opportunities through InfoQ, CSDN, Programmer Magazine and our multi-language team blog freedomhui.com, these articles, blogs and our slides have been being regarded as important sources and reference for Chinese OpenStack users to know and learn OpenStack.
For the upcoming OpenStack Summit at San Diego, we have prepared one presentation DevOps in OpenStack Public Cloud, and one design proposal Local Storage Volume plugin for Cinder for Grizzly, looking forward to seeing you guys in the grand meeting.
In August, 2012, I was elected by the individual members of the OpenStack global community as a board member of OpenStack Foundation, that drives me to continue contributing, promoting, and more deeply involved in OpenStack projects and the community.
Even though we have done these work, I would consider this is not enough, we still have large space to do better and more.
For example, even though we have good scores if counted by changeset or bugfix, the average changed lines is not very high compared the developers from Rackspace, RedHat and others. The rank by code influence is not high as well, and so far we do not have a core developer in any projects, and so on.
But we believe Sina OpenStack dev team will definitely have much more progress and more contributions in Grizzly.
In the end, we must thanks the OpenStack community, and the newly founded OpenStack Foundation, who help us grow up, give us guidance to how to communicate and how to delve into the core of OpenStack.(See OpenStack Foundation birthday global meet-up in Beijing)
More importantly, OpenStack gives us great opportunity to success, not only in career, but also in business.