NEC Cloud System (OSS Building Model)
A word with leading core developers in the OpenStack community
OpenStack is open source software (OSS) that plays a key role in cloud infrastructure, and core developers lead OpenStack development projects. So, what are their responsibilities? What's their vision of developing and spreading the use of OpenStack? This interview spotlights the role of core developers in the OpenStack community where members participate from all over the world.
Senior Software Engineer
OSS Promotion Center
Cloud Platform Division
System Platform Business Unit
Platform Solutions Business unit
4th platform Solutions division
NEC Solution Innovators, Ltd.
The OpenStack project is open in its source code, community, development and design.
First, can you give me a brief overview of OSS and OpenStack?
- Motoki:OSS is an abbreviation for open source software. Anyone can read OSS source code, which is employed in various areas of ICT including OS, cloud, networks and applications. We are developing OpenStack, which is OSS that builds cloud environments through the integration of computing, storage and network architecture.
- Ootsuka:In the OpenStack community, source code is not the only thing that's open. All facets of the community from the development environment and organization to the exchange of opinions are open. This accelerates the evolution of OpenStack.
How does OpenStack change the cloud building process?
- Ootsuka:In a nutshell, it lowers dependence on vendors. It decreases TCO, reduces restrictions by vendors concerning software license fees and enables faster function enhancement via shorter version upgrade cycles.
- Motoki:With OpenStack, you can easily establish a cloud environment wherever required and extend benefits beyond public cloud. The key concept of the cloud allows flexible collaboration through the use of APIs. Since OpenStack provides open standardized APIs, it makes building coordination between various systems very easy. This is one of the main reasons OpenStack is attracting so much attention in the field of NFV, as well as in the cloud.
Viewing from the perspective of a developer is essential. The perspectives of operators and users further deepen our understanding of cloud infrastructure.
What's the role of a core developer in OpenStack development?
- Motoki:Various OpenStack development projects are proceeding in the OpenStack community. Members participate from all over the world in each project. The number of members varies from 10 or so in small projects to over 300 in large projects.
Again, depending on the project size, there are anywhere from a few to dozens of core developers. Core developers, like other members, are involved in projects, but they also have the responsibility of merging proposed patches into the program code. The OpenStack community is a community built on trust and core developers are chosen from among its high-performing members based on recommendations from other core developers.
- Ootsuka:Because open and trusting relationships are of utmost importance to a community, even as core developers, we commit our own code only after requesting reviews and receiving approvals from other members. In the OpenStack community, we receive countless opinions from our members and users regarding programs. If we want to reflect all the opinions from around the world, discussions get out of control or the project gets sidetracked. So it's also an important role of core developers to guide the project in the right direction by sorting out member opinions based on an overall picture of the whole project.
What kinds of activities do you handle as core developers?
- Motoki:I work as a core developer for the Neutron and Horizon projects in the areas of networks and GUI, respectively. In the Neutron project, which is closely related to SDN, members are very actively engaged in development. I'm involved in the entire project, but mainly work on user-related parts such as the API and CLI. I'm convinced that cloud systems are essentially based on APIs that enable the coordination of systems.
At the same time, I'm also involved in development and operation of private cloud infrastructure based on OpenStack. Understanding operators is very important in the overall development of OpenStack.
- Ootsuka:I am currently involved in a container technology development project called Magnum, as a core developer. Magnum is a key project for implementing containers in OpenStack.
Container technology is a hot topic in cloud. A container is an independent space within an OS environment where different applications can be executed. It provides a near virtual-machine environment with much lower overhead. Each container is fully independent, allowing different versions of libraries and applications to be executed within a single OS environment. The efficiency, high portability and speedy startup of a container helps reduce cloud operation loads.
Just like Mr. Motoki, I wear another hat besides that of a program developer. NEC has an OpenStack-based cloud infrastructure service called NEC Cloud IaaS. The other task of mine is to provide application service as a user of NEC Cloud IaaS. I want to improve OpenStack and enhance its quality from the standpoint of both a developer and user.
Spreading the joy and satisfaction of OpenStack to the world
When do you feel satisfaction as a core developer and what kind of vision do you have for further development?
- Motoki:I think APIs are the essence of the cloud because they allow you to work with other applications and systems. So I am very interested in how to design APIs to support the cloud and how to model functions. The usability of OpenStack is fully dependent on these design concepts. Encounters with diverse opinions and new technologies in the OpenStack community stimulate and motivate me as a developer.
- Ootsuka:I just like to program bit by bit (laugh). I feel satisfied when more and more people recognize and start using my programs. I'd like to develop programs that make people around the world happy or take their breath away. When we exchange opinions, we use chat services or mailing lists in English, but large time differences make communication difficult with American developers.
Last, please tell me about your future activities.
- Motoki:I will keep working in the development community, such as in Neutron, as a core developer. I will also continue to promote OpenStack technology development from the perspective of overall OpenStack usage, such as through the cloud and containers, to improve operation. The OpenStack projects I'm involved in are progressing toward their goal but overall there is still room for improvement in OpenStack. My activities will probably cover more cross-project areas.
- Ootsuka:I'm aiming for an early release of Magnum, which is currently under development. I'm making effort to implement container technology in cloud infrastructure using Magnum so users can take advantage of this technology as soon as possible. Once Magnum is used in real-world environments I bet the use of container technology will speed up and spread.