tripleo-heat-templates/puppet/extraconfig/pre_deploy/controller/neutron-ml2-cisco-n1kv.yaml

181 lines
6.9 KiB
YAML

heat_template_version: 2015-04-30
description: Configure hieradata for Cisco N1KV configuration
parameters:
server:
description: ID of the controller node to apply this config to
type: string
# Config specific parameters, to be provided via parameter_defaults
N1000vVSMIP:
type: string
default: '192.0.2.50'
N1000vVSMDomainID:
type: number
default: 100
N1000vVSMIPV6:
type: string
default: '::1'
N1000vVEMHostMgmtIntf:
type: string
default: 'br-ex'
N1000vUplinkProfile:
type: string
default: '{eth1: system-uplink,}'
N1000vVtepConfig:
type: string
default: '{}'
N1000vVEMSource:
type: string
default: ''
N1000vVEMVersion:
type: string
default: ''
N1000vPortDB:
type: string
default: 'ovs'
N1000vVtepsInSameSub:
type: boolean
default: false
N1000vVEMFastpathFlood:
type: string
default: 'enable'
#VSM Puppet Parameter
N1000vVSMSource:
type: string
default: ''
N1000vVSMVersion:
type: string
default: 'latest'
N1000vVSMHostMgmtIntf:
type: string
default: 'br-ex'
N1000vVSMRole:
type: string
default: 'primary'
N1000vVSMPassword:
type: string
default: 'Password'
N1000vMgmtNetmask:
type: string
default: '255.255.255.0'
N1000vMgmtGatewayIP:
type: string
default: '192.0.2.1'
N1000vPacemakerControl:
type: boolean
default: true
N1000vExistingBridge:
type: boolean
default: true
N1000vVSMHostMgmtIntfVlan:
type: number
default: 0
#Plugin Parameters
N1000vVSMUser:
type: string
default: 'admin'
N1000vPollDuration:
type: number
default: 60
N1000vHttpPoolSize:
type: number
default: 5
N1000vHttpTimeout:
type: number
default: 15
N1000vSyncInterval:
type: number
default: 300
N1000vMaxVSMRetries:
type: number
default: 2
resources:
CiscoN1kvConfig:
type: OS::Heat::StructuredConfig
properties:
group: os-apply-config
config:
hiera:
datafiles:
cisco_n1kv_data:
mapped_data:
#enable_cisco_n1kv: {get_input: EnableCiscoN1kv}
# VEM Parameters
n1kv_vem_source: {get_input: n1kv_vem_source}
n1kv_vem_version: {get_input: n1kv_vem_version}
neutron::agents::n1kv_vem::n1kv_vsm_ip: {get_input: n1kv_vsm_ip}
neutron::agents::n1kv_vem::n1kv_vsm_domain_id: {get_input: n1kv_vsm_domain_id}
neutron::agents::n1kv_vem::n1kv_vsm_ip_v6: {get_input: n1kv_vsm_ip_v6}
neutron::agents::n1kv_vem::host_mgmt_intf: {get_input: n1kv_vem_host_mgmt_intf}
neutron::agents::n1kv_vem::uplink_profile: {get_input: n1kv_vem_uplink_profile}
neutron::agents::n1kv_vem::vtep_config: {get_input: n1kv_vem_vtep_config}
neutron::agents::n1kv_vem::portdb: {get_input: n1kv_vem_portdb}
neutron::agents::n1kv_vem::vteps_in_same_subnet: {get_input: n1kv_vem_vteps_in_same_subnet}
neutron::agents::n1kv_vem::fastpath_flood: {get_input: n1kv_vem_fastpath_flood}
#VSM Parameter
n1kv_vsm_source: {get_input: n1kv_vsm_source}
n1kv_vsm_version: {get_input: n1kv_vsm_version}
n1k_vsm::phy_if_bridge: {get_input: n1kv_vsm_host_mgmt_intf}
n1k_vsm::vsm_role: {get_input: n1kv_vsm_role}
n1k_vsm::pacemaker_control: {get_input: n1kv_vsm_pacemaker_ctrl}
n1k_vsm::existing_bridge: {get_input: n1kv_vsm_existing_br}
n1k_vsm::vsm_admin_passwd: {get_input: n1kv_vsm_password}
n1k_vsm::vsm_domain_id: {get_input: n1kv_vsm_domain_id}
n1k_vsm::vsm_mgmt_ip: {get_input: n1kv_vsm_ip}
n1k_vsm::vsm_mgmt_netmask: {get_input: n1kv_vsm_mgmt_netmask}
n1k_vsm::vsm_mgmt_gateway: {get_input: n1kv_vsm_gateway_ip}
n1k_vsm::phy_gateway: {get_input: n1kv_vsm_gateway_ip}
n1k_vsm::phy_bridge_vlan: {get_input: n1kv_phy_brige_vlan}
# Cisco N1KV driver Parameters
neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_ip: {get_input: n1kv_vsm_ip}
neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_username: {get_input: n1kv_vsm_username}
neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_password: {get_input: n1kv_vsm_password}
neutron::plugins::ml2::cisco::nexus1000v::poll_duration: {get_input: n1kv_vsm_poll_duration}
neutron::plugins::ml2::cisco::nexus1000v::http_pool_size: {get_input: n1kv_vsm_http_pool_size}
neutron::plugins::ml2::cisco::nexus1000v::http_timeout: {get_input: n1kv_vsm_http_timeout}
neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_sync_interval: {get_input: n1kv_vsm_sync_interval}
neutron::plugins::ml2::cisco::nexus1000v::max_vsm_retries: {get_input: n1kv_max_vsm_retries}
CiscoN1kvDeployment:
type: OS::Heat::StructuredDeployment
properties:
name: CiscoN1kvDeployment
config: {get_resource: CiscoN1kvConfig}
server: {get_param: server}
input_values:
n1kv_vsm_ip: {get_param: N1000vVSMIP}
n1kv_vsm_domain_id: {get_param: N1000vVSMDomainID}
n1kv_vsm_ip_v6: {get_param: N1000vVSMIPV6}
n1kv_vem_host_mgmt_intf: {get_param: N1000vVEMHostMgmtIntf}
n1kv_vem_uplink_profile: {get_param: N1000vUplinkProfile}
n1kv_vem_vtep_config: {get_param: N1000vVtepConfig}
n1kv_vem_source: {get_param: N1000vVEMSource}
n1kv_vem_version: {get_param: N1000vVEMVersion}
n1kv_vem_portdb: {get_param: N1000vPortDB}
n1kv_vem_vteps_in_same_subnet: {get_param: N1000vVtepsInSameSub}
n1kv_vem_fastpath_flood: {get_param: N1000vVEMFastpathFlood}
n1kv_vsm_source: {get_param: N1000vVSMSource}
n1kv_vsm_version: {get_param: N1000vVSMVersion}
n1kv_vsm_host_mgmt_intf: {get_param: N1000vVSMHostMgmtIntf}
n1kv_vsm_role: {get_param: N1000vVSMRole}
n1kv_vsm_password: {get_param: N1000vVSMPassword}
n1kv_vsm_mgmt_netmask: {get_param: N1000vMgmtNetmask}
n1kv_vsm_gateway_ip: {get_param: N1000vMgmtGatewayIP}
n1kv_phy_brige_vlan: {get_param: N1000vVSMHostMgmtIntfVlan}
n1kv_vsm_pacemaker_ctrl: {get_param: N1000vPacemakerControl}
n1kv_vsm_existing_br: {get_param: N1000vExistingBridge}
n1kv_vsm_username: {get_param: N1000vVSMUser}
n1kv_vsm_poll_duration: {get_param: N1000vPollDuration}
n1kv_vsm_http_pool_size: {get_param: N1000vHttpPoolSize}
n1kv_vsm_http_timeout: {get_param: N1000vHttpTimeout}
n1kv_vsm_sync_interval: {get_param: N1000vSyncInterval}
n1kv_max_vsm_retries: {get_param: N1000vMaxVSMRetries}
outputs:
deploy_stdout:
description: Deployment reference, used to trigger puppet apply on changes
value: {get_attr: [CiscoN1kvDeployment, deploy_stdout]}