40b407bcc5a64c97247737b9d8075103e7d6808f
[apex-tripleo-heat-templates.git] / puppet / extraconfig / pre_deploy / controller / neutron-ml2-cisco-n1kv.yaml
1 heat_template_version: ocata
2
3 description: Configure hieradata for Cisco N1KV configuration
4
5 parameters:
6   server:
7     description: ID of the controller node to apply this config to
8     type: string
9
10   # Config specific parameters, to be provided via parameter_defaults
11   N1000vVSMIP:
12     type: string
13     default: '192.168.24.50'
14   N1000vVSMDomainID:
15     type: number
16     default: 100
17   N1000vVSMIPV6:
18     type: string
19     default: '::1'
20   N1000vVEMHostMgmtIntf:
21     type: string
22     default: 'br-ex'
23   N1000vUplinkProfile:
24     type: string
25     default: '{eth1: system-uplink,}'
26   N1000vVtepConfig:
27     type: string
28     default: '{}'
29   N1000vVEMSource:
30     type: string
31     default: ''
32   N1000vVEMVersion:
33     type: string
34     default: ''
35   N1000vPortDB:
36     type: string
37     default: 'ovs'
38   N1000vVtepsInSameSub:
39     type: boolean
40     default: false
41   N1000vVEMFastpathFlood:
42     type: string
43     default: 'enable'
44 #VSM Puppet Parameter
45   N1000vVSMSource:
46     type: string
47     default: ''
48   N1000vVSMVersion:
49     type: string
50     default: 'latest'
51   N1000vVSMHostMgmtIntf:
52     type: string
53     default: 'br-ex'
54   N1000vVSMRole:
55     type: string
56     default: 'primary'
57   N1000vVSMPassword:
58     type: string
59     default: 'Password'
60   N1000vMgmtNetmask:
61     type: string
62     default: '255.255.255.0'
63   N1000vMgmtGatewayIP:
64     type: string
65     default: '192.168.24.1'
66   N1000vPacemakerControl:
67     type: boolean
68     default: true
69   N1000vExistingBridge:
70     type: boolean
71     default: true
72   N1000vVSMHostMgmtIntfVlan:
73     type: number
74     default: 0
75 #Plugin Parameters
76   N1000vVSMUser:
77     type: string
78     default: 'admin'
79   N1000vPollDuration:
80     type: number
81     default: 60
82   N1000vHttpPoolSize:
83     type: number
84     default: 5
85   N1000vHttpTimeout:
86     type: number
87     default: 15
88   N1000vSyncInterval:
89     type: number
90     default: 300
91   N1000vMaxVSMRetries:
92     type: number
93     default: 2
94
95 resources:
96   CiscoN1kvConfig:
97     type: OS::Heat::StructuredConfig
98     properties:
99       group: hiera
100       config:
101         datafiles:
102           cisco_n1kv_data:
103             mapped_data:
104               #enable_cisco_n1kv: {get_input: EnableCiscoN1kv}
105               # VEM Parameters
106               n1kv_vem_source: {get_input: n1kv_vem_source}
107               n1kv_vem_version: {get_input: n1kv_vem_version}
108               neutron::agents::n1kv_vem::n1kv_vsm_ip: {get_input: n1kv_vsm_ip}
109               neutron::agents::n1kv_vem::n1kv_vsm_domain_id: {get_input: n1kv_vsm_domain_id}
110               neutron::agents::n1kv_vem::n1kv_vsm_ip_v6: {get_input: n1kv_vsm_ip_v6}
111               neutron::agents::n1kv_vem::host_mgmt_intf: {get_input: n1kv_vem_host_mgmt_intf}
112               neutron::agents::n1kv_vem::uplink_profile: {get_input: n1kv_vem_uplink_profile}
113               neutron::agents::n1kv_vem::vtep_config: {get_input: n1kv_vem_vtep_config}
114               neutron::agents::n1kv_vem::portdb: {get_input: n1kv_vem_portdb}
115               neutron::agents::n1kv_vem::vteps_in_same_subnet: {get_input: n1kv_vem_vteps_in_same_subnet}
116               neutron::agents::n1kv_vem::fastpath_flood: {get_input: n1kv_vem_fastpath_flood}
117               #VSM Parameter
118               n1kv_vsm_source: {get_input: n1kv_vsm_source}
119               n1kv_vsm_version: {get_input: n1kv_vsm_version}
120               n1k_vsm::phy_if_bridge: {get_input: n1kv_vsm_host_mgmt_intf}
121               n1k_vsm::vsm_role: {get_input: n1kv_vsm_role}
122               n1k_vsm::pacemaker_control: {get_input: n1kv_vsm_pacemaker_ctrl}
123               n1k_vsm::existing_bridge: {get_input: n1kv_vsm_existing_br}
124               n1k_vsm::vsm_admin_passwd: {get_input: n1kv_vsm_password}
125               n1k_vsm::vsm_domain_id: {get_input: n1kv_vsm_domain_id}
126               n1k_vsm::vsm_mgmt_ip: {get_input: n1kv_vsm_ip}
127               n1k_vsm::vsm_mgmt_netmask: {get_input: n1kv_vsm_mgmt_netmask}
128               n1k_vsm::vsm_mgmt_gateway: {get_input: n1kv_vsm_gateway_ip}
129               n1k_vsm::phy_gateway: {get_input: n1kv_vsm_gateway_ip}
130               n1k_vsm::phy_bridge_vlan: {get_input: n1kv_phy_brige_vlan}
131               # Cisco N1KV driver Parameters
132               neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_ip: {get_input: n1kv_vsm_ip}
133               neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_username: {get_input: n1kv_vsm_username}
134               neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_password: {get_input: n1kv_vsm_password}
135               neutron::plugins::ml2::cisco::nexus1000v::poll_duration: {get_input: n1kv_vsm_poll_duration}
136               neutron::plugins::ml2::cisco::nexus1000v::http_pool_size: {get_input: n1kv_vsm_http_pool_size}
137               neutron::plugins::ml2::cisco::nexus1000v::http_timeout: {get_input: n1kv_vsm_http_timeout}
138               neutron::plugins::ml2::cisco::nexus1000v::n1kv_vsm_sync_interval: {get_input: n1kv_vsm_sync_interval}
139               neutron::plugins::ml2::cisco::nexus1000v::max_vsm_retries: {get_input: n1kv_max_vsm_retries}
140
141   CiscoN1kvDeployment:
142     type: OS::Heat::StructuredDeployment
143     properties:
144       name: CiscoN1kvDeployment
145       config: {get_resource: CiscoN1kvConfig}
146       server: {get_param: server}
147       input_values:
148         n1kv_vsm_ip: {get_param: N1000vVSMIP}
149         n1kv_vsm_domain_id: {get_param: N1000vVSMDomainID}
150         n1kv_vsm_ip_v6: {get_param: N1000vVSMIPV6}
151         n1kv_vem_host_mgmt_intf: {get_param: N1000vVEMHostMgmtIntf}
152         n1kv_vem_uplink_profile: {get_param: N1000vUplinkProfile}
153         n1kv_vem_vtep_config: {get_param: N1000vVtepConfig}
154         n1kv_vem_source: {get_param: N1000vVEMSource}
155         n1kv_vem_version: {get_param: N1000vVEMVersion}
156         n1kv_vem_portdb: {get_param: N1000vPortDB}
157         n1kv_vem_vteps_in_same_subnet: {get_param: N1000vVtepsInSameSub}
158         n1kv_vem_fastpath_flood: {get_param: N1000vVEMFastpathFlood}
159         n1kv_vsm_source: {get_param: N1000vVSMSource}
160         n1kv_vsm_version: {get_param: N1000vVSMVersion}
161         n1kv_vsm_host_mgmt_intf: {get_param: N1000vVSMHostMgmtIntf}
162         n1kv_vsm_role: {get_param: N1000vVSMRole}
163         n1kv_vsm_password: {get_param: N1000vVSMPassword}
164         n1kv_vsm_mgmt_netmask: {get_param: N1000vMgmtNetmask}
165         n1kv_vsm_gateway_ip: {get_param: N1000vMgmtGatewayIP}
166         n1kv_phy_brige_vlan: {get_param: N1000vVSMHostMgmtIntfVlan}
167         n1kv_vsm_pacemaker_ctrl: {get_param: N1000vPacemakerControl}
168         n1kv_vsm_existing_br: {get_param: N1000vExistingBridge}
169         n1kv_vsm_username: {get_param: N1000vVSMUser}
170         n1kv_vsm_poll_duration: {get_param: N1000vPollDuration}
171         n1kv_vsm_http_pool_size: {get_param: N1000vHttpPoolSize}
172         n1kv_vsm_http_timeout: {get_param: N1000vHttpTimeout}
173         n1kv_vsm_sync_interval: {get_param: N1000vSyncInterval}
174         n1kv_max_vsm_retries: {get_param: N1000vMaxVSMRetries}
175
176 outputs:
177   deploy_stdout:
178     description: Deployment reference, used to trigger puppet apply on changes
179     value: {get_attr: [CiscoN1kvDeployment, deploy_stdout]}