The Good, The Bad, and The Ugly of the OpenStack APIs: An Application Developer's View
On one hand, OpenStack is quite promising with open APIs, open-source reference implementation with extensible plug-in architecture to support different implementations. On the other hand, it is a nightmare for software developers building enterprise-grade distributed applications on top of OpenStack, i.e., using only APIs available to users/tenants. Such applications need to be elastic (scale-out and scale-in as loads fluctuate), highly-available (several 9's of availability), and support high throughput (several Gbps of traffic). Unfortunately, many of the primitives available in the physical infrastructure to be able to build such services are either non-existent or available via ad-hoc extension APIs at the virtual infrastructure layer in OpenStack implementations.
In this talk, we will discuss specific examples of:
• Nova's CRUD API for VMs
• Neutron's CRUD API for networks, ports, router, subnets
• No notification APIs from OpenStack services such as Nova, Neutron, Glance, and Keystone
• Security groups API mess
• Network performance issues because of complex reference implementation
• Too much restriction on network connectivity without exposing proper APIs for customization
• Semantics of APIs left to the interpretation of plugins
Speaker: Praveen Yalagandula, Avi Networks
Praveen Yalagandula is the OpenStack Architect at Avi Networks, responsible for designing and developing the integration of Avi Networks’ Cloud Application Delivery Platform with OpenStack infrastructure services. At Avi, Praveen also leads the application performance visibility component of the Avi’s solution and has developed a scalable and distributed log analytics system. Prior to Avi, Praveen was a Principal Scientist at HP Labs in Palo Alto, where he spent 8 years exploring several aspects of data center networks, software defined networking, and large-scale distributed systems. Praveen received his Ph.D. in Computer Science from the University of Texas at Austin in 2005. He is currently a senior member of IEEE and ACM.
Attend remotely via hangout. Rick will post the link as a comment here at the beginning of the meetup.