Add OPSVM / CloudApex support for MOS7

- a new UI input has been added to specify OPSVM IP
  before deployment
- plumgrid and sal puppet modules have been modified to
  process the provided OPSVM IP

Change-Id: I9d01b71ab7c8e7fd0c14b36a35c72b88d31d7292
Signed-off-by: Javeria Khan <javeriak@plumgrid.com>
This commit is contained in:
Javeria Khan 2016-04-19 06:10:52 -07:00
parent 15e7c8a078
commit bb5fb3c7d3
10 changed files with 33 additions and 5 deletions

View File

@ -37,6 +37,7 @@ $controller_address_map = get_node_to_ipaddr_map_by_network_role($controller_nod
$controller_ipaddresses = join(hiera_array('controller_ipaddresses', values($controller_address_map)), ',')
$mgmt_net = hiera('management_network_range')
$fabric_dev = hiera('fabric_dev')
$md_ip = pick($plumgrid_hash['plumgrid_opsvm'])
# Neutron settings
$neutron_config = hiera_hash('quantum_settings', {})
@ -66,6 +67,7 @@ class { 'plumgrid':
mgmt_dev => 'br-mgmt',
fabric_dev => $fabric_dev,
lvm_keypath => "/var/lib/plumgrid/zones/$plumgrid_zone/id_rsa.pub",
md_ip => $md_ip,
}
class { 'sal':

View File

@ -32,12 +32,14 @@ $controller_ipaddresses = join(hiera_array('controller_ipaddresses', values($con
$mgmt_net = hiera('management_network_range')
$fabric_dev = hiera('fabric_dev')
$plumgrid_zone = pick($plumgrid_hash['plumgrid_zone'])
$md_ip = pick($plumgrid_hash['plumgrid_opsvm'])
class { 'plumgrid':
plumgrid_ip => $controller_ipaddresses,
mgmt_dev => 'br-mgmt',
fabric_dev => $fabric_dev,
mgmt_dev => 'br-mgmt',
fabric_dev => $fabric_dev,
lvm_keypath => "/var/lib/plumgrid/zones/$plumgrid_zone/id_rsa.pub",
md_ip => $md_ip,
}
class { plumgrid::firewall:

View File

@ -27,6 +27,7 @@ $controller_ipaddresses = join(hiera_array('controller_ipaddresses', values($con
$mgmt_net = hiera('management_network_range')
$fabric_dev = hiera('fabric_dev')
$plumgrid_zone = pick($plumgrid_hash['plumgrid_zone'])
$md_ip = pick($plumgrid_hash['plumgrid_opsvm'])
class { 'plumgrid':
plumgrid_ip => $controller_ipaddresses,
@ -34,6 +35,7 @@ class { 'plumgrid':
fabric_dev => $fabric_dev,
gateway_devs => split($plumgrid_gw_devs, ','),
lvm_keypath => "/var/lib/plumgrid/zones/$plumgrid_zone/id_rsa.pub",
md_ip => $md_ip,
}
class { plumgrid::firewall:

View File

@ -27,6 +27,7 @@ class plumgrid (
$lvm_keypath = '',
$mcollective = false,
$manage_repo = $plumgrid::params::manage_repo,
$md_ip = '127.0.0.1',
$repo_baseurl = '',
$repo_component = '',
$physical_location = '',
@ -57,6 +58,13 @@ class plumgrid (
before => Service['plumgrid'],
}
}
if $md_ip != '127.0.0.1' {
file { "${lxc_data_path}/conf/etc/00-pg.conf":
content => template('plumgrid/00-pg.conf.erb'),
require => Package[$pg_package],
notify => Service['plumgrid'],
}
}
file { "${lxc_data_path}/conf/etc/hostname":
content => $hostname,
require => Package[$pg_package],

View File

@ -0,0 +1,2 @@
$template ls_json,"{%timestamp:::date-rfc3339,jsonf:@timestamp%,%source:::jsonf:@source_host%,%msg:::json%}"
:syslogtag,isequal,"pg:" @<%= @md_ip %>:6000;ls_json

View File

@ -17,6 +17,7 @@ class sal ($plumgrid_ip = '',
$virtual_ip = '',
$rest_port = '9180',
$mgmt_dev = '%AUTO_DEV%',
$md_ip = '127.0.0.1',
) {
$lxc_root_path = '/var/lib/libvirt/filesystems/plumgrid'
$lxc_data_path = '/var/lib/libvirt/filesystems/plumgrid-data'
@ -31,6 +32,7 @@ class sal ($plumgrid_ip = '',
class { 'sal::nginx':
plumgrid_ip => $plumgrid_ip,
md_ip => $md_ip,
virtual_ip => $virtual_ip,
}
class { 'sal::keepalived':

View File

@ -14,6 +14,7 @@
# limitations under the License.
class sal::nginx ($plumgrid_ip = '',
$md_ip = '127.0.0.1',
$virtual_ip = '',
$use_default_cert = true,
) {

View File

@ -13,7 +13,7 @@ upstream pgCli {
}
upstream pgMW {
server 127.0.0.1:4000;
server <%= @md_ip %>:4000;
}
map $http_upgrade $connection_upgrade {

View File

@ -69,7 +69,16 @@ attributes:
plumgrid_fabric_network:
value: ''
label: 'Enter the PLUMgrid Fabric Network'
description: 'Enter the network that will be used by PLUMgrid Fabric (no need to enter subnet)'
description: 'Enter the network that will be used by PLUMgrid Fabric (no need to enter subnet mask)'
weight: 32
type: "text"
regex:
source: '^((?:\d|1?\d\d|2[0-4]\d|25[0-5])(?:\.(?:\d|1?\d\d|2[0-4]\d|25[0-5])){3})|(?:^)$'
error: "Invalid IP address"
plumgrid_opsvm:
value: '127.0.0.0'
label: 'Enter the OPSVM IP'
description: 'Enter the IP for the OPSVM'
weight: 32
type: "text"
regex:

View File

@ -3,7 +3,7 @@ name: plumgrid
# Human-readable name for your plugin
title: PLUMgrid plugin
# Plugin version
version: '1.0.1'
version: '1.1.0'
# Description
description: This plugin enables the usage of PLUMgrid ONS as the network backend.
# Required fuel version