~plumgrid-team/charms/bundles/plumgrid-ons/single-controller

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# Basic OpenStack Cloud with PLUMgrid Open Networking Suite (ONS)

PLUMgrid Open Networking Suite (ONS) helps enterprises and service providers operationalize their OpenStack cloud’s virtual network and SDN deployments.

Built on PLUMgrid Platform® and IO Visor® technology, the software suite significantly reduces the deployment time of OpenStack clouds and enables users to create private Virtual Domains for applications and projects. Also included are a rich set of distributed virtual network functions, plus security capabilities such as encryption, which provide the network services and scale required for today’s cloud applications.

The distributed architecture can scale to multi-rack or geographically distributed OpenStack deployments while the high availability features ensure maximum service uptime while minimizing downtime during maintenance windows. The product suite also simplifies ongoing operations with built-in monitoring, analytics and troubleshooting tools. By providing a comprehensive suite of capabilities, PLUMgrid ONS for OpenStack overcomes the scale, availability, feature set and lifecycle limitations of OpenStack Networking.

This bundle deploys a OpenStack Cloud (Kilo release) on Ubuntu 14.04 LTS, providing Dashboard, Compute, Network (PLUMgrid), Block Storage (Cinder), Identity and Image services.

## PLUMgrid Components

Neutron Api PLUMgrid
  PLUMgrid Neutron Plugin enables PLUMgrid Open Networking Suite in Openstack. Once deployed, the charm enables the necessary actions in the neutron-server container that allows the PLUMgrid plugin to take over networking for the OpenStack environment.

PLUMgrid Director
  The PLUMgrid Director is the control plane of PLUMgrid ONS for OpenStack. The configuration of the virtual network infrastructure for tenants is done through the PLUMgrid Director.

PLUMgrid Edge
  A PLUMgrid Edge is an OpenStack compute node running IO Visor. IO Visor provides the data plane and network connectivity for OpenStack tenant instances. Communication between instances on compute nodes is enabled by creation of VXLAN based overlay tunnels and networks.

PLUMgrid Gateway
  A PLUMgrid Gateway provides connectivity from the VXLAN based virtual fabric to external IP networks (such as for internet access). The PLUMgrid Gateway can be deployed as a pair in Active/ Active mode for load balancing of traffic and high availability of external connectivity.

## Requirements

This bundle is designed to run on bare metal using Juju with [MAAS][] (Metal-as-a-Service); you will need to have setup a [MAAS][] deployment with a minimum of 3 physical servers prior to using this bundle.

Servers should have:

 - A minimum of 8GB of physical RAM.
 - Enough CPU cores to support your capacity requirements.
 - Two cabled network ports on eth0 and eth1 (see below).
 - MTU of atleast 1580 needs to be supported by the managment network of MAAS.

Servers should have two physical network ports cabled; the first is used for general communication between services in the Cloud, the second is used for 'public' network traffic to and from instances (North/South traffic) running within the Cloud.

## Deployment

    juju quickstart bundle:plumgrid-ons
    juju set neutron-api plumgrid-virtual-ip="<Any IP in subnet>"
    juju set plumgrid-director plumgrid-virtual-ip="<Same IP as above>"

### Accessing Openstack Dashboard

Get Horizon IP from openstack-dashboard charm.

    juju status openstack-dashboard

### Accessing PLUMgrid Console

Get PLUMgrid Console IP from the plumgrid-director charm config.

    juju get plumgrid-director

### Post PLUMgrid License
In order to configure networking, PLUMgrid License needs to be posted.

    juju set plumgrid-director plumgrid-license-key="$LICENSE_KEY"

## Components

 - 1 Node for PLUMgrid Director and Mysql, Rabbitmq Server, Keystone, Nova Cloud Controller, Glance, Horizon and Cinder under LXC containers.
 - 1 Node for Nova Compute and PLUMgrid Edge.
 - 1 Node for PLUMgrid Gateway.

PLUMgrid Open Networking Suite (ONS) is built with the ability to scale and support high availability across the PLUMgrid Platform. PLUMgrid ONS supports high availability across multiple components within a PLUMgrid Zone. PLUMgrid Director, PLUMgrid edge running on Nova Compute and PLUMgrid Gateway are designed to be horizontally scalable.

To horizontally scale PLUMgrid Director:

    juju add-unit -n2 plumgrid-director #Note that PLUMgrid Director HA works with 3 units only.
    juju set neutron-api plumgrid-virtual-ip="<Any IP in subnet>"
    juju set plumgrid-director plumgrid-virtual-ip="<Same IP as above>"

To horizontally scale Nova Compute running with PLUMgrid Edge:

    juju add-unit nova-compute # Add one more unit
    juju add-unit -n5 nova-compute # Add 5 more units

To horizontally scale PLUMgrid Gateway:

    juju add-unit plumgrid-gateway # Add one more unit
    juju add-unit -n2 plumgrid-gateway # Add 2 more units


##Contact Information

Bilal Baqar <bbaqar@plumgrid.com>
Bilal Ahmad <bilal@plumgrid.com>

PLUMgrid, Inc.
5155 Old Ironsides Dr, Suite 200, Santa Clara, CA 95054, U.S.A | Ph:+1-408-800-7586
Web: [www.plumgrid.com][]
Email: info@plumgrid.com

[MAAS]: http://maas.ubuntu.com/docs
[www.plumgrid.com]: http://www.plumgrid.com/