Summary

Melange is intended to provide network information services for use across OpenStack services. The initial focus will be on IP address management (IPAM) and address discovery (DHCP/dnsmasq) functionality. Melange is intended to be a standalone service with it's own API. However, the initial use case will be to decouple existing IP management and VM address discovery from Nova and support the existing Nova networking caoabilities.

Longer term, Melange will evolve to integrate with other OpenStack services, particularly the Quantum service (virtual network segments), network containers and Load Balancer as a Service (LBaaS). It is also anticipated that we may evolve beyond basic IP address management and DHCP to handle other network information such as gateway, routing and DNS information.

Release Note

Since Melange will initially focused on decoupling IPAM and VM address discovery from Nova. We plan to implement this within the Nova project and repository. Since Melange will be a separate service and API, this effort will not have any direct impact on Nova. However, the eventual adoption of this service is dependent on the network refactoring work in the following blueprint:

network-refactoring

This blueprint is the umbrella for the overall Melange service. The specific implementation details are further identified in the following dependent blueprints:

Rationale

IP addresses are an important resource for a cloud provider to manage, and providers will need flexibility in how addresses are assigned to VMs and other networking-related services (e.g., load balancing devices). The existing IP association mechanism is tightly coupled to Nova's network provisioning mechanism, including a networking host that provides NAT and may not work well with a providers network design. Additionally, customers may want to assigned their own addresses, for example, isolated tenant networks that use RFC 1918 space or have a VPN to a network at a remote site). Therefore, the flexibility and capabilities of the IP address management system need significant improvement.

User stories / Scope

IPAM Service

Assumptions

This blueprint assumes that work will progress on the network-refactoring blueprint for Nova. We also assume that the Quantum virtual network service is also being developed in parallel to Melange.

Design

We have initially target 3 core parts of Melange. Each of these will be detailed out in a more specific blueprint:

  1. Melange API
  2. IP Address Management
  3. VM address discovery service (i.e. DHCP/dnsmasq)

Implementation

We intend to provide an API for Melange that will expose all key services. We will leverage the Echo project that is being done as part of Keystone to get the initial API spun up with proper daemonization and testing frameworks. The base API is documented here.

We anticipate provide "plug in" capability for the basic IP admin services and for the VM address discovery server. It should be straightforward for an OpenStack deployment to use existing services when they are already deployed.

Unresolved issues

Discussion

Much of the background behind the creation of Melange can be found on the Network Service Etherpad discussion.


CategorySpec

Wiki: Melange (last edited 2011-07-08 16:26:57 by JameyMeredith)