The OpenStack community has reached the lucky milestone of making available the thirteenth release of OpenStack, codenamed Mitaka. The key themes for this release are improved user experience, manageability, and scalability. In addition the OpenStack community forged a strong relationship with the telecommunications community to focus on Network Function Virtualization (NFV) requirements and created a new scientific working group to address large academics and government research needs. In this article we describe key community focus areas for the Mitaka release as well as highlight where IBMers have made significant contributions to this latest release.
Mitaka Release Themes: User Experience, Manageability, and Scalability Enhancements
In the Mitaka release, OpenStack has focused on improving user experience by providing an OpenStack Client which serves as a single tool for interacting with multiple OpenStack services in a uniform and consistent fashion. This release also provides improved SDK support and a simplified Neutron API to make it easier for operators to configure a virtual network.
Manageability enhancements in the Mitaka release include simplified configuration for OpenStack’s Compute engine (Nova) and easier setup of OpenStack’s Identity Service (Keystone). Other enhancements to manageability in OpenStack’s Networking Service (Neutron) include improved L3 and distributed virtual router support.
Scalability enhancements was another large focus area for the Mitaka release. The OpenStack Compute Service (Nova) had improvements to its scheduler and to its Cells V2 support. In addition Keystone added a new token format called fernet tokens that improves scalability for large-scale deployments by removing the need to store large amounts of token data in a persistent token database.
IBM Contributions to Mitaka
IBM contributors stepped up big again in the Mitaka release. In this release IBM was #1 in either reviews or commits in 11 OpenStack projects (Cinder, Horizon, Keystone, Neutron, RefStack, Barbican, Chef, Senlin, Magnum, TOSCA-Parser, and Heat-Translator). In addition, seven IBM contributors have been elected to Project Technical Leader (PTL) positions for key OpenStack projects such as Nova, Keystone, Glance, Refstack, Community App Catalog, Senlin, and Packaging-Deb. Below are highlights of some of the outstanding contributions by IBMers in the Mitaka release.
Networking and NFV Contributions
One of the most critical portions of OpenStack is its network virtualization support (Neutron). In the Mitaka release, IBM sigificantly ramped up its contributions to the Neutron project. Our team focused on improving the scaling and testing of Neutron’s OVN support. We also made improvements to make Neutron performance evaluation easier, helped modularize L2 agents, and also added missing Neutron support to the OpenStack Client. In addition the team made a significant improvements to Neutron by implmenting an integration with DNSaaS and providing associated documentation for this capability.
With Neutron now supporting Load Balancer As a Service (LBaaS) V2 which brings more robust scaling and modular architecture, IBM contributors added support for LBaaS V2 in OpenStack’s orchestration project (Heat). With this new support you can now create and manage Heat stacks with the LBaaS V2 resources. Additionally, IBM contributors developed an AngularJS plug in for OpenStack’s Dashboard (Horizon) to provide the ability to create and manage the LBaaS V2 resources.
In the Mitaka release, the telecommunications community has increased their interest in OpenStack and IBM contributors have been at the forefront of providing enhancements desired by this community. In the Network Function Virtualization (NFV) space, IBM collaborated with contributors from Nokia to lead the effort to support the parsing of TOSCA NFV templates and their translation to Heat Orchestration Templates (HOT). These capabilities can be found in the TOSCA-Parser and Heat-Translator subprojects of the OpenStack Orchestration Project (Heat) and are now in use by OpenStack’s NFV project (Tacker).
Storage and Database as a Service Contributions
OpenStack’s block storage component (Cinder) made significant advances in the Mitaka release. IBM contributors made numerous improvements to base Cinder functionality including removing deprecated oslo-incubator code, being active testers and developers of the new os-brick library and helped get improved volume replication support integrated. Cinder driver improvements included support for over subscription, implementation of new Consistency Group functions and implementation of replication for Cinder backend drivers such as storwize_svc, XIV and DS8k.
In OpenStack’s object storage service (Swift) IBM contributed enhancements to the container sync feature. These enhancements improve the feature’s usefulness by enhancing performance on the source cluster as well as reducing network bandwidth requirements when syncing to a remote cluster.
IBM has also ramped up its contributions to OpenStack’s Database as a Service Component (Trove). In the Mitaka release we added back up and restore capabilities to both the Trove CouchDB and DB2 guest agents. We also enhanced the CouchDB guest agent to support user and database management capabilities and make these available through the OpenStack dashboard plugin for Trove.
IBM contributors continued to focus on security based enhancements for OpenStack’s Identity Server (Keystone) and its Key Management store (Barbican). Support was added to Keystone that allows deployers to create specific roles for an individual domain. This enables operators to provide more fine-grained access control in their deployment policy files. IBM contributors also improved Keystone’s deployment QA tests to more accurately reflect production deployment configurations such as those that use combinations of Apache, mod_wsgi, uwsgi and mod_proxy_uwsgi.
For Barbican, IBM contributors made enhancements to its key manager interface, added user defined metadata support for Barbican secrets, and added support for multiple Keystone authentication methods. In addition, we added new tools for administrators to reduce the effort of managing the Barbican database.
Many OpenStack operators recognize how critical it is for OpenStack and Containers to seamlessly work together. IBM contributors drove key integration efforts in OpenStack’s Container as as Service project (Magnum) to integrate these technologies. In Mitaka, our team added support to Magnum to enhance the networking performance for Kubernetes clusters, resulting in nearly 20x improvement in network bandwidth between pods. We also enabled Cinder block storage to be used by Kubernetes pods for persistent storage. Moreover, we help Magnum adoption by completing a significant portion of the user guide and troubleshooting guide, covering a wide range of topics from debugging networking issues to image building.
We have also significantly contributed to Kuryr, the new OpenStack project that bridges the gap between OpenStack networking (Neutron) and container networking. In particular, we have contributed to the Docker networking plugin that utilizes Neutron. Furthermore, we have collaborated with the Magnum community to design the support for nested environments (containers in VMs) and we have also started working on providing support for Kubernetes in Kuryr.
OpenStackâs compute project (Nova) made significant contributions in usability and quality in the Mitaka release. IBM contributors made numerous usability improvements including an extensive effort to improve configuration option help text so operators know what each option does, what the available values are, which services use an option, and how options are inter-related. We also added a simplified configuration for Nova and provided improvements to its scheduler. IBMers were also involved in cleaning up technical debt and IBM was ranked #1 in resolved bugs in Nova for Mitaka.
New Project Incubations: Senlin
In addition to contributing to established OpenStack projects, IBMers are driving innovations in new areas and leading new projects. One example of this is the Senlin project started by IBM and released in Mitaka. Senlin is focused on providing a generic clustering service for the creation and management of resource pools. A resource pool can be a set of Nova instances, Heat stacks and other resources. The primary use cases targeted include auto-scaling, auto-healing, and load-balancing. Senlin has been deployed by telecommunication vendors in China and is under evaluation by others. During Mitaka, IBM has committed over 580 patches to Senlin.
Join Us at OpenStack Austin
As one might expect, I simply can’t describe all the great contributions now available in the Mitaka release of OpenStack. Come join us at the OpenStack Summit in Austin April 25-29 for a much more comprehensive overview of the advances and improvements in the latest version of OpenStack. At the summit, IBM is hosting an IBM Client Day on Tuesday, April 26th. We have put together an amazing lineup of hot topic sessions and speakers including many of our OpenStack Project Technical Leaders and core contributors. At the end of IBM Client Day, joins us for the community evening party at Clive Bar for live music, refreshments, and authentic Texas-style BBQ. I look forward to seeing you in Austin!