Jump to: navigation, search

Heat/Blueprints/Multi Region Support for Heat

< Heat
Revision as of 18:34, 15 July 2013 by Hanney (talk | contribs)

Overview

Introduction

Most of enterprises are focusing on Multi-cloud (using both private and public clouds) as enterprise cloud strategy. They will not completely migrate to Service Provider's cloud (public cloud). They will still keep their mission critical information assets to their premise or collocation space (private cloud).

Our goal is to create Hybrid-cloud (combination of public and private cloud). Creating Hybrid-cloud requires:

  • Seamless operation among heterogeneous environment
  • End-to-end automatic provisioning based on system template (VM, network, topology)
  • Unified control and monitoring
    • Multi-Hypervisor including bare-metal
    • Multi-Region control
    • Secure network access via Internet (VPN connection)
Multi Region Heat


Requirements & Challenges

Requirements for Heat:

  • Mapping between Regions and API endpoints
  • Mapping between Regions and Images
  • Specifying Region for each resource
  • Support for VPN as resource
  • Horizon interface for Heat with multi regions


Challenges:

  • dealing with dependencies between resources in different regions
  • minimizing number of single region templates for which multi region template will be split
  • figure out efficient way to update multi region stack

Goal

Basic Use Case Scenario

We have two regions (East and West) with separate OpenStack installations. We want to use Heat with multi region support to create in both regions:

  • Quantum Network
  • Quantum Subnet
    • 10.1.0.0/24 in East
    • 10.2.0.0/24 in West
  • Router
    • Router Interface for created subnet
    • Router Gateway for external network
  • VPN Service for created router
    • IKE Policy
    • IPsec Policy
    • VPN Connection
  • Server connected to created subnet


Template file example in appendix.

Architecture

Overview

Components Diagram

Template Flow

Template flow

Challenges & Solutions

What needs to be done

Heat

Engine

VPNServices
IKEPolicy
IPsecPolicy
VPNConnections

API/CLI

UI

Multi region Heat [DRAFT - WORK IN PROGRESS]

Engine

Mapping regions with API endpoints [SUPPORTED]
Mapping regions with images [SUPPORTED]
Specify RegionName property for resource [NOT SUPPORTED]

API/CLI

UI

Horizon support for multi regions

Dependencies & References

Action Plan

Appendix

Templates

Heat UI screenshots

Horizon Multi region support screenshots