Hello, OPNFV installer projects 81/34281/11
authoragardner <agardner@linuxfoundation.org>
Thu, 4 May 2017 15:36:05 +0000 (11:36 -0400)
committeragardner <agardner@linuxfoundation.org>
Fri, 19 May 2017 18:26:56 +0000 (14:26 -0400)
Firstly, this patchset looks a bit messy at the onset.  relevant
parts are

installers/apex/*.j2
installers/joid/*.j2
installers/compass4nfv/*.j2

and the new verify job that runs check-jinja2.sh

If you look at installers/*/pod_config.yaml.j2 you will see the network
settings for apex joid and compass4nfv installers, the possible to template
hard coded values have been replaced with jinja2 vales, that are populated by
reading one of labs/*/*/config/pod.yaml

eg:
nodes:
  - name: pod1-node1

becomes
  - name: {{ conf['nodes'][0]['name'] }}

In my last patchset I had ignored data already present in the pod.yaml (which is defined in the pharos spec here: https://gerrit.opnfv.org/gerrit/gitweb?p=pharos.git;a=blob;f=config/pod1.yaml )

I created by own yaml file in an attempt to figure out what all the
installers needed to know to install on any given pod.

this was counter productive.

I have included a script (securedlab/check-jinja2.sh)  that will check all

securedlab/installers/*/pod_config.yaml.j2
against all
securedlab/labs/*/pod*.yaml

This is a first step towards having your installers run on any pod that
has a pod file created for it. (securedlab/labs/*/pod[pod-number].yaml)

Moving forward I would like your input on identifing variables in your
installers configs that are needed for deployment but not covered by
securedlab/labs/*/pod*.yaml

Thanks for your time and feedback
Best Regards,
Aric

Change-Id: I5f2f2b403f219a1ec4b35e46a5bc49037a0a89cf
Signed-off-by: agardner <agardner@linuxfoundation.org>
25 files changed:
check-jinja2.sh
installers/apex/network_settings.jinja2 [deleted file]
installers/apex/pod_config.yaml.j2 [new file with mode: 0644]
installers/compass4nfv/network.yml.j2 [new file with mode: 0644]
installers/compass4nfv/network_ocl.yml.j2 [new file with mode: 0644]
installers/compass4nfv/network_onos.yml.j2 [new file with mode: 0644]
installers/compass4nfv/network_openo.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-nosdn-nofeature-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-nosdn-openo-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-ocl-nofeature-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-odl_l2-moon-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-odl_l2-nofeature-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-odl_l3-nofeature-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-onos-nofeature-ha.yml.j2 [new file with mode: 0644]
installers/compass4nfv/os-onos-sfc-ha.yml.j2 [new file with mode: 0644]
installers/joid/labconfig.jinja2 [deleted file]
installers/joid/pod_config.yaml.j2 [new file with mode: 0644]
labs/ericsson/pod1.yaml
labs/ericsson/pod2.yaml
labs/intel/pod5.yaml [deleted file]
labs/lf/pod1/pod.yaml [deleted file]
labs/zte/pod1.yaml [moved from labs/zte/pod1/config/pod.yaml with 97% similarity]
labs/zte/pod2.yaml [moved from labs/zte/pod2/config/pod.yaml with 99% similarity]
labs/zte/pod3.yaml [moved from labs/zte/pod3/config/pod.yaml with 99% similarity]
utils/generate_config.py

index be4d951..4c1927d 100755 (executable)
@@ -1,9 +1,9 @@
 #!/bin/bash
 set +x
 set -o errexit
-for lab_configs in $(find labs/ -name 'pod.yaml' | grep -v zte); do
+for lab_configs in $(find labs/ -name 'pod*.yaml'); do
         while IFS= read -r jinja_templates; do
           echo "./utils/generate_config.py -y $lab_configs -j $jinja_templates"
           ./utils/generate_config.py -y $lab_configs -j $jinja_templates
-        done < <(find installers/ -name '*.jinja2')
+        done < <(find installers/ -name '*.j2')
 done
diff --git a/installers/apex/network_settings.jinja2 b/installers/apex/network_settings.jinja2
deleted file mode 100755 (executable)
index 4ef349c..0000000
+++ /dev/null
@@ -1,216 +0,0 @@
-# This configuration file defines Network Environment for a
-# Baremetal Deployment of OPNFV. It contains default values
-# for 5 following networks:
-#
-# - admin
-# - tenant*
-# - external*
-# - storage*
-# - api*
-# *) optional networks
-#
-# Optional networks will be consolidated with the admin network
-# if not explicitly configured.
-#
-# See short description of the networks in the comments below.
-#
-# "admin" is the short name for Control Plane Network.
-# This network should be IPv4 even it is an IPv6 deployment
-# IPv6 does not have PXE boot support.
-# During OPNFV deployment it is used for node provisioning which will require
-# PXE booting as well as running a DHCP server on this network.  Be sure to
-# disable any other DHCP/TFTP server on this network.
-#
-# "tenant" is the network used for tenant traffic.
-#
-# "external" is the network which should have internet or external
-# connectivity.  External OpenStack networks will be configured to egress this
-# network.  There can be multiple external networks, but only one assigned as
-# "public" which OpenStack public API's will register.
-#
-# "storage" is the network for storage I/O.
-#
-# "api" is an optional network for splitting out OpenStack service API
-# communication.  This should be used for IPv6 deployments.
-
-
-#Meta data for the network configuration
-network-config-metadata:
-  title: LF-POD-1 Network config
-  version: 0.1
-  created: Mon Dec 28 2015
-  comment: None
-
-# DNS Settings
-dns-domain: opnfvlf.org
-dns-search: opnfvlf.org
-dns_nameservers:
-  - 8.8.8.8
-  - 8.8.4.4
-# NTP servers
-ntp:
-  - 0.se.pool.ntp.org
-  - 1.se.pool.ntp.org
-# Syslog server
-syslog:
-  server: 10.128.1.24
-  transport: 'tcp'
-
-# Common network settings
-networks:
-  admin:
-    enabled: true
-    installer_vm:
-      nic_type: interface
-      members:
-        - enp6s0
-      vlan: native
-      ip: 192.30.9.1
-    usable_ip_range:
-      - 192.30.9.12
-      - 192.30.9.99
-    gateway: 192.30.9.1
-    cidr: 192.30.9.0/24
-    dhcp_range:
-      - 192.30.9.2
-      - 192.30.9.10
-    nic_mapping:
-      compute:
-        phys_type: interface
-        members:
-          - enp6s0
-      controller:
-        phys_type: interface
-        members:
-          - enp6s0
-
-  tenant:
-    enabled: true
-    cidr: 11.0.0.0/24
-    mtu: 1500
-    overlay_id_range: 2,65535
-
-    segmentation_type: vxlan
-
-    nic_mapping:
-      compute:
-        phys_type: interface
-        uio_driver: uio_pci_generic  # UIO driver to use for DPDK scenarios.  The value is ignored for non-DPDK scenarios.
-        vlan: native
-        members:
-          - enp7s0
-      controller:
-        phys_type: interface
-        vlan: native
-        members:
-          - enp7s0
-
-  external:
-    - public:
-      enabled: true
-      mtu: 1500
-      installer_vm:
-        nic_type: interface
-        vlan: native
-        members:
-          - enp8s0
-        ip: 172.30.9.67
-      cidr: 172.30.9.0/24
-      gateway: 172.30.9.1
-      floating_ip_range:
-        - 172.30.9.200
-        - 172.30.9.220
-      usable_ip_range:
-        - 172.30.9.70
-        - 172.30.9.199
-
-      nic_mapping:
-        compute:
-          phys_type: interface
-          vlan: native
-          members:
-            - enp8s0
-        controller:
-          phys_type: interface
-          vlan: native
-          members:
-            - enp8s0
-      external_overlay:
-          name: Public_internet
-          type: flat
-          gateway: 172.30.9.1
-    - private_cloud:
-      enabled: false
-      mtu: 1500
-      installer_vm:
-        nic_type: interface
-        vlan: 101
-        members:
-          - em1
-        ip: 192.168.38.1
-      cidr: 192.168.38.0/24
-      gateway: 192.168.38.1
-      floating_ip_range:
-        - 192.168.38.200
-        - 192.168.38.220
-      usable_ip_range:
-        - 192.168.38.10
-        - 192.168.38.199
-
-      nic_mapping:
-        compute:
-          phys_type: interface
-          vlan: 101
-          members:
-            - enp8s0
-        controller:
-          phys_type: interface
-          vlan: 101
-          members:
-            - enp8s0
-      external_overlay:
-          name: private_cloud
-          type: vlan
-          segmentation_id: 101
-          gateway: 192.168.38.1
-
-  storage:
-    enabled: true
-    cidr: 12.0.0.0/24
-    mtu: 1500
-    nic_mapping:
-      compute:
-        phys_type: interface
-        vlan: native
-        members:
-          - enp9s0
-      controller:
-        phys_type: interface
-        vlan: native
-        members:
-          - enp9s0
-
-  api:
-    enabled: false
-    cidr: fd00:fd00:fd00:4000::/64
-    vlan: 13
-    mtu: 1500
-    nic_mapping:
-      compute:
-        phys_type: interface
-        vlan: native
-        members:
-          - enp10s0
-      controller:
-        phys_type: interface
-        vlan: native
-        members:
-          - enp10s0
-
-# Apex specific settings
-apex:
-  networks:
-    admin:
-      introspection_range:
-        - 192.30.9.100
-        - 192.30.9.120
diff --git a/installers/apex/pod_config.yaml.j2 b/installers/apex/pod_config.yaml.j2
new file mode 100644 (file)
index 0000000..2554b47
--- /dev/null
@@ -0,0 +1,61 @@
+nodes:
+  node1:
+    mac_address: "{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}"
+    ipmi_ip: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    ipmi_user: {{ conf['jumphost']['remote_para']['user'] }}
+    ipmi_pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    pm_type: "pxe_{{ conf['jumphost']['remote_para']['type'] }}tool"
+    cpus: {{ conf['nodes'][0]['node']['cpus'] }}
+    memory: {{ conf['nodes'][0]['node']['memory'] }}
+    disk: 40
+    disk_device: sdb
+    arch: "{{ conf['nodes'][0]['node']['arch'] }}"
+    capabilities: "profile:control"
+  node2:
+    mac_address: "{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}"
+    ipmi_ip: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    ipmi_user: {{ conf['jumphost']['remote_para']['user'] }}
+    ipmi_pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    pm_type: "pxe_{{ conf['jumphost']['remote_para']['type'] }}tool"
+    cpus: {{ conf['nodes'][1]['node']['cpus'] }}
+    memory: {{ conf['nodes'][1]['node']['memory'] }}
+    disk: 40
+    disk_device: sdb
+    arch: "{{ conf['nodes'][1]['node']['arch'] }}"
+    capabilities: "profile:control"
+  node3:
+    mac_address: "{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}"
+    ipmi_ip: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    ipmi_user: {{ conf['jumphost']['remote_para']['user'] }}
+    ipmi_pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    pm_type: "pxe_{{ conf['jumphost']['remote_para']['type'] }}tool"
+    cpus: {{ conf['nodes'][2]['node']['cpus'] }}
+    memory: {{ conf['nodes'][2]['node']['memory'] }}
+    disk: 40
+    disk_device: sdb
+    arch: "{{ conf['nodes'][2]['node']['arch'] }}"
+    capabilities: "profile:control"
+  node4:
+    mac_address: "{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}"
+    ipmi_ip: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    ipmi_user: {{ conf['jumphost']['remote_para']['user'] }}
+    ipmi_pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    pm_type: "pxe_{{ conf['jumphost']['remote_para']['type'] }}tool"
+    cpus: {{ conf['nodes'][3]['node']['cpus'] }}
+    memory: {{ conf['nodes'][3]['node']['memory'] }}
+    disk: 40
+    disk_device: sdb
+    arch: "{{ conf['nodes'][3]['node']['arch'] }}"
+    capabilities: "profile:compute"
+  node5:
+    mac_address: "{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}"
+    ipmi_ip: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    ipmi_user: {{ conf['jumphost']['remote_para']['user'] }}
+    ipmi_pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    pm_type: "pxe_{{ conf['jumphost']['remote_para']['type'] }}tool"
+    cpus: {{ conf['nodes'][4]['node']['cpus'] }}
+    memory: {{ conf['nodes'][4]['node']['memory'] }}
+    disk: 40
+    disk_device: sdb
+    arch: "{{ conf['nodes'][4]['node']['arch'] }}"
+    capabilities: "profile:compute"
diff --git a/installers/compass4nfv/network.yml.j2 b/installers/compass4nfv/network.yml.j2
new file mode 100644 (file)
index 0000000..2ede083
--- /dev/null
@@ -0,0 +1,100 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+nic_mappings: []
+bond_mappings: []
+
+provider_net_mappings:
+  - name: br-prv
+    network: physnet
+    interface: eth1
+    type: ovs
+    role:
+      - controller
+      - compute
+
+sys_intf_mappings:
+  - name: mgmt
+    interface: eth3
+    vlan_tag: {{ conf['nodes'][0]['interfaces'][2]['vlan'] }} #not a good fit
+    type: vlan
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    interface: eth2
+    vlan_tag: 804
+    type: {{ conf['nodes'][0]['interfaces'][1]['vlan'] }} #not a good fit
+    role:
+      - controller
+      - compute
+
+  - name: external
+    interface: br-prv
+    type: ovs
+    role:
+      - controller
+      - compute
+
+ip_settings:
+  - name: mgmt
+    ip_ranges:
+      - - "10.8.14.10"
+        - "10.8.14.30"
+    cidr: "10.8.14.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    ip_ranges:
+      - - "10.8.12.10"
+        - "10.8.12.30"
+    cidr: "10.8.12.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: external
+    ip_ranges:
+      - - "10.8.15.10"
+        - "10.8.15.30"
+    cidr: "10.8.15.0/24"
+    gw: "10.8.15.1"
+    role:
+      - controller
+      - compute
+
+internal_vip:
+  ip: 10.8.14.222
+  netmask: "24"
+  interface: mgmt
+
+public_vip:
+  ip: 10.8.15.222
+  netmask: "24"
+  interface: external
+
+onos_nic: eth4
+public_net_info:
+  enable: "True"
+  network: ext-net
+  type: flat
+  segment_id: 10
+  subnet: ext-subnet
+  provider_network: physnet
+  router: router-ext
+  enable_dhcp: "False"
+  no_gateway: "False"
+  external_gw: "10.8.15.1"
+  floating_ip_cidr: "10.8.15.0/24"
+  floating_ip_start: "10.8.15.100"
+  floating_ip_end: "10.8.15.200"
diff --git a/installers/compass4nfv/network_ocl.yml.j2 b/installers/compass4nfv/network_ocl.yml.j2
new file mode 100644 (file)
index 0000000..68144b6
--- /dev/null
@@ -0,0 +1,100 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+nic_mappings: []
+bond_mappings: []
+
+provider_net_mappings:
+  - name: br-prv
+    network: physnet
+    interface: eth1
+    type: ovs
+    role:
+      - controller
+      - compute
+
+sys_intf_mappings:
+  - name: mgmt
+    interface: eth3
+    vlan_tag: {{ conf['nodes'][0]['interfaces'][2]['vlan'] }} #not a good fit
+    type: vlan
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    interface: eth2
+    vlan_tag: {{ conf['nodes'][0]['interfaces'][1]['vlan'] }}
+    type: vlan
+    role:
+      - controller
+      - compute
+
+  - name: external
+    interface: br-prv
+    type: ovs
+    role:
+      - controller
+      - compute
+
+ip_settings:
+  - name: mgmt
+    ip_ranges:
+      - - "10.8.14.10"
+        - "10.8.14.30"
+    cidr: "10.8.14.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    ip_ranges:
+      - - "10.8.12.10"
+        - "10.8.12.30"
+    cidr: "10.8.12.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: external
+    ip_ranges:
+      - - "10.8.15.10"
+        - "10.8.15.30"
+    cidr: "10.8.15.0/24"
+    gw: "10.8.15.1"
+    role:
+      - controller
+      - compute
+
+internal_vip:
+  ip: 10.8.14.222
+  netmask: "24"
+  interface: mgmt
+
+public_vip:
+  ip: 10.8.15.222
+  netmask: "24"
+  interface: external
+
+onos_nic: eth4
+public_net_info:
+  enable: "True"
+  network: ext-net
+  type: flat
+  segment_id: 10
+  subnet: ext-subnet
+  provider_network: physnet
+  router: router-ext
+  enable_dhcp: "False"
+  no_gateway: "False"
+  external_gw: "10.8.15.1"
+  floating_ip_cidr: "10.8.15.0/24"
+  floating_ip_start: "10.8.15.100"
+  floating_ip_end: "10.8.15.200"
diff --git a/installers/compass4nfv/network_onos.yml.j2 b/installers/compass4nfv/network_onos.yml.j2
new file mode 100644 (file)
index 0000000..017560b
--- /dev/null
@@ -0,0 +1,100 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+nic_mappings: []
+bond_mappings: []
+
+provider_net_mappings:
+  - name: br-prv
+    network: physnet
+    interface: eth1
+    type: ovs
+    role:
+      - controller
+      - compute
+
+sys_intf_mappings:
+  - name: mgmt
+    interface: eth3
+    vlan_tag: {{ conf['nodes'][0]['interfaces'][2]['vlan'] }} #not a good fit
+    type: vlan
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    interface: eth2
+    vlan_tag: {{ conf['nodes'][0]['interfaces'][1]['vlan'] }} #not a good fit
+    type: vlan
+    role:
+      - controller
+      - compute
+
+  - name: external
+    interface: br-prv
+    type: ovs
+    role:
+      - controller
+      - compute
+
+ip_settings:
+  - name: mgmt
+    ip_ranges:
+      - - "10.8.14.10"
+        - "10.8.14.30"
+    cidr: "10.8.14.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    ip_ranges:
+      - - "10.8.12.10"
+        - "10.8.12.30"
+    cidr: "10.8.12.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: external
+    ip_ranges:
+      - - "10.8.15.10"
+        - "10.8.15.30"
+    cidr: "10.8.15.0/24"
+    gw: "10.8.15.1"
+    role:
+      - controller
+      - compute
+
+internal_vip:
+  ip: 10.8.14.222
+  netmask: "24"
+  interface: mgmt
+
+public_vip:
+  ip: 10.8.15.222
+  netmask: "24"
+  interface: external
+
+onos_nic: eth1
+public_net_info:
+  enable: "True"
+  network: ext-net
+  type: flat
+  segment_id: 10
+  subnet: ext-subnet
+  provider_network: physnet
+  router: router-ext
+  enable_dhcp: "False"
+  no_gateway: "False"
+  external_gw: "10.8.15.1"
+  floating_ip_cidr: "10.8.15.0/24"
+  floating_ip_start: "10.8.15.100"
+  floating_ip_end: "10.8.15.200"
diff --git a/installers/compass4nfv/network_openo.yml.j2 b/installers/compass4nfv/network_openo.yml.j2
new file mode 100644 (file)
index 0000000..a8dc016
--- /dev/null
@@ -0,0 +1,105 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+nic_mappings: []
+bond_mappings: []
+
+provider_net_mappings:
+  - name: br-prv
+    network: physnet
+    interface: eth1
+    type: ovs
+    role:
+      - controller
+      - compute
+
+sys_intf_mappings:
+  - name: mgmt
+    interface: eth3
+    vlan_tag: {{ conf['nodes'][0]['interfaces'][2]['vlan'] }} #not a good fit
+    type: vlan
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    interface: eth2
+    vlan_tag: 804
+    type: {{ conf['nodes'][0]['interfaces'][1]['vlan'] }} #not a good fit
+    role:
+      - controller
+      - compute
+
+  - name: external
+    interface: br-prv
+    type: ovs
+    role:
+      - controller
+      - compute
+
+ip_settings:
+  - name: mgmt
+    ip_ranges:
+      - - "10.8.14.10"
+        - "10.8.14.30"
+    cidr: "10.8.14.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: storage
+    ip_ranges:
+      - - "10.8.12.10"
+        - "10.8.12.30"
+    cidr: "10.8.12.0/24"
+    role:
+      - controller
+      - compute
+
+  - name: external
+    ip_ranges:
+      - - "10.8.15.10"
+        - "10.8.15.30"
+    cidr: "10.8.15.0/24"
+    gw: "10.8.15.1"
+    role:
+      - controller
+      - compute
+
+internal_vip:
+  ip: 10.8.14.222
+  netmask: "24"
+  interface: mgmt
+
+public_vip:
+  ip: 10.8.15.222
+  netmask: "24"
+  interface: external
+
+openo_net:
+  openo_ip: 10.8.15.50
+  openo_docker_gw: 172.11.1.1
+  openo_docker_cidr: 172.11.1.0/24
+
+onos_nic: eth4
+public_net_info:
+  enable: "True"
+  network: ext-net
+  type: flat
+  segment_id: 10
+  subnet: ext-subnet
+  provider_network: physnet
+  router: router-ext
+  enable_dhcp: "False"
+  no_gateway: "False"
+  external_gw: "10.8.15.1"
+  floating_ip_cidr: "10.8.15.0/24"
+  floating_ip_start: "10.8.15.100"
+  floating_ip_end: "10.8.15.200"
diff --git a/installers/compass4nfv/os-nosdn-nofeature-ha.yml.j2 b/installers/compass4nfv/os-nosdn-nofeature-ha.yml.j2
new file mode 100644 (file)
index 0000000..22692a4
--- /dev/null
@@ -0,0 +1,77 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-nosdn-openo-ha.yml.j2 b/installers/compass4nfv/os-nosdn-openo-ha.yml.j2
new file mode 100644 (file)
index 0000000..e8d3967
--- /dev/null
@@ -0,0 +1,85 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+deploy_options:
+  orchestrator:
+    type: open-o
+    version: 1.0.0
+
+  vnf:
+    type:
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-ocl-nofeature-ha.yml.j2 b/installers/compass4nfv/os-ocl-nofeature-ha.yml.j2
new file mode 100644 (file)
index 0000000..5f1fb2f
--- /dev/null
@@ -0,0 +1,76 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - opencontrail
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+               roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-odl_l2-moon-ha.yml.j2 b/installers/compass4nfv/os-odl_l2-moon-ha.yml.j2
new file mode 100644 (file)
index 0000000..d323341
--- /dev/null
@@ -0,0 +1,79 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-odl_l2-nofeature-ha.yml.j2 b/installers/compass4nfv/os-odl_l2-nofeature-ha.yml.j2
new file mode 100644 (file)
index 0000000..5962e29
--- /dev/null
@@ -0,0 +1,80 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-odl_l3-nofeature-ha.yml.j2 b/installers/compass4nfv/os-odl_l3-nofeature-ha.yml.j2
new file mode 100644 (file)
index 0000000..2b7e3ac
--- /dev/null
@@ -0,0 +1,81 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+odl_l3_agent: "Enable"
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - odl
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-onos-nofeature-ha.yml.j2 b/installers/compass4nfv/os-onos-nofeature-ha.yml.j2
new file mode 100644 (file)
index 0000000..5d2e7d0
--- /dev/null
@@ -0,0 +1,79 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - onos
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - onos
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - onos
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/compass4nfv/os-onos-sfc-ha.yml.j2 b/installers/compass4nfv/os-onos-sfc-ha.yml.j2
new file mode 100644 (file)
index 0000000..ffc0287
--- /dev/null
@@ -0,0 +1,81 @@
+##############################################################################
+# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+---
+TYPE: baremetal
+FLAVOR: cluster
+POWER_TOOL: '{{ conf['jumphost']['remote_para']['type'] }}tool'  #expects string ipmitool
+
+ipmiUser: {{ conf['jumphost']['remote_para']['user'] }}
+ipmiPass: {{ conf['jumphost']['remote_para']['pass'] }}
+ipmiVer: '{{ conf['jumphost']['remote_para']['versions'][0] }}'
+
+onos_sfc: "Enable"
+
+hosts:
+  - name: {{ conf['nodes'][0]['name'] }}
+    mac: '{{ conf['nodes'][0]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - onos
+      - ceph-adm
+      - ceph-mon
+
+  - name: {{ conf['nodes'][1]['name'] }}
+    mac: '{{ conf['nodes'][1]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - onos
+      - ceph-mon
+
+  - name: {{ conf['nodes'][2]['name'] }}
+    mac: '{{ conf['nodes'][2]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][2]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+    roles:
+      - controller
+      - ha
+      - onos
+      - ceph-mon
+
+  - name: {{ conf['nodes'][3]['name'] }}
+    mac: '{{ conf['nodes'][3]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][3]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
+
+  - name: {{ conf['nodes'][4]['name'] }}
+    mac: '{{ conf['nodes'][4]['remote_mangement']['mac_address'] }}' #is this the ipmi mac address?
+    interfaces:
+      - eth1: '{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}'
+      - eth2: '{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}'
+      - eth3: '{{ conf['nodes'][4]['interfaces'][2]['mac_address'] }}'
+    ipmiIp: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+    roles:
+      - compute
+      - ceph-osd
diff --git a/installers/joid/labconfig.jinja2 b/installers/joid/labconfig.jinja2
deleted file mode 100644 (file)
index 9e95730..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-lab:
-  location: intel
-  racks:
-  - rack: pod5
-    nodes:
-    - name: rack-5-m1
-      architecture: x86_64
-      roles: [network,control]
-      nics:
-      - ifname: enp4s0f3
-        spaces: [admin]
-        mac: ["00:1E:67:CF:BB:54"]
-      - ifname: ens785f0
-        spaces: [data]
-        mac: ["90:E2:BA:85:4E:2C"]
-      - ifname: ens785f1.504
-        spaces: [public]
-        mac: ["90:E2:BA:85:4E:2D"]
-      - ifname: ens785f0.505
-        spaces: [floating]
-        mac: ["90:E2:BA:85:4E:2C"]
-      - ifname: ens785f1
-        spaces: [storage]
-        mac: ["90:E2:BA:85:4E:2D"]
-      power:
-        type: ipmi
-        address: {{ config['global_details']['ipmi_ips'][0] }}
-        user: root
-        pass: root
-    - name: rack-5-m2
-      architecture: x86_64
-      roles: [compute,control,storage]
-      nics:
-      - ifname: enp4s0f3
-        spaces: [admin]
-        mac: ["00:1E:67:CF:B8:93"]
-      - ifname: ens785f0
-        spaces: [data]
-        mac: ["90:E2:BA:84:08:B8"]
-      - ifname: ens785f1.504
-        spaces: [public]
-        mac: ["90:E2:BA:84:08:B9"]
-      - ifname: ens785f0.505
-        spaces: [floating]
-        mac: ["90:E2:BA:85:4E:2C"]
-      - ifname: ens785f1
-        spaces: [storage]
-        mac: ["90:E2:BA:85:4E:2D"]
-      power:
-        type: ipmi
-        address: {{ config['global_details']['ipmi_ips'][1] }}
-        user: root
-        pass: root
-    - name: rack-5-m3
-      architecture: x86_64
-      roles: [compute,control,storage]
-      nics:
-      - ifname: enp4s0f3
-        spaces: [admin]
-        mac: ["00:1E:67:E0:08:7F"]
-      - ifname: ens785f0
-        spaces: [data]
-        mac: ["90:E2:BA:84:07:0D"]
-      - ifname: ens785f1.504
-        spaces: [public]
-        mac: ["90:E2:BA:84:07:0E"]
-      - ifname: ens785f0.505
-        spaces: [floating]
-        mac: ["90:E2:BA:85:4E:2C"]
-      - ifname: ens785f1
-        spaces: [storage]
-        mac: ["90:E2:BA:85:4E:2D"]
-      power:
-        type: ipmi
-        address: {{ config['global_details']['ipmi_ips'][2] }}
-        user: root
-        pass: root
-    - name: rack-5-m4
-      architecture: x86_64
-      roles: [compute,storage]
-      nics:
-      - ifname: enp4s0f3
-        spaces: [admin]
-        mac: ["00:1E:67:E0:08:B1"]
-      - ifname: ens785f0
-        spaces: [data]
-        mac: ["90:E2:BA:83:FD:80"]
-      - ifname: ens785f1.504
-        spaces: [public]
-        mac: ["90:E2:BA:83:FD:81"]
-      - ifname: ens785f0.505
-        spaces: [floating]
-        mac: ["90:E2:BA:85:4E:2C"]
-      - ifname: ens785f1
-        spaces: [storage]
-        mac: ["90:E2:BA:85:4E:2D"]
-      power:
-        type: ipmi
-        address: {{ config['global_details']['ipmi_ips'][3] }}
-        user: root
-        pass: root
-    - name: rack-5-m5
-      architecture: x86_64
-      roles: [compute,storage]
-      nics:
-      - ifname: enp4s0f3
-        spaces: [admin]
-        mac: ["00:1E:67:E0:0A:4B"]
-      - ifname: ens785f0
-        spaces: [data]
-        mac: ["90:E2:BA:75:22:74"]
-      - ifname: ens785f1.504
-        spaces: [public]
-        mac: ["90:E2:BA:75:22:75"]
-      - ifname: ens785f0.505
-        spaces: [floating]
-        mac: ["90:E2:BA:85:4E:2C"]
-      - ifname: ens785f1
-        spaces: [storage]
-        mac: ["90:E2:BA:85:4E:2D"]
-      power:
-        type: ipmi
-        address: {{ config['global_details']['ipmi_ips'][4] }}
-        user: root
-        pass: root
-#    - name: rack-5-m6
-#      architecture: x86_64
-#      roles: [compute,storage]
-#      nics:
-#      - ifname: enp4s0f3
-#        spaces: [admin]
-#        mac: ["98:4F:EE:10:03:43"]
-#      - ifname: ens785f0
-#        spaces: [data]
-#        mac: ["00:1E:67:9C:3E:54"]
-#      - ifname: ens785f1.504
-#        spaces: [public]
-#        mac: ["00:1E:67:9C:3E:55"]
-#      power:
-#        type: ipmi
-        address: {{ config['global_details']['ipmi_ips'][5] }}
-#        user: root
-#        pass: root
-    floating-ip-range: 10.5.15.6,10.5.15.250,10.5.15.1,10.5.15.0/24
-    ext-port: "ens785f0.505"
-    dns: 8.8.8.8
-    osdomainname:
-opnfv:
-    release: c
-    distro: trusty
-    type: nonha
-    openstack: liberty
-    sdncontroller:
-    - type: nosdn
-    storage:
-    - type: ceph
-      disk: /dev/sdb
-    feature: odl_l2
-    spaces:
-    - type: admin
-      bridge: brAdm
-      cidr: 10.5.1.0/24
-      gateway: 10.5.1.1
-      vlan:
-    - type: data
-      bridge: brData
-      cidr: 10.5.12.0/24
-      gateway:
-      vlan:
-    - type: storage
-      bridge: brStor
-      cidr: 10.5.13.0/24
-      gateway:
-      vlan:
-    - type: public
-      bridge: brMgmt
-      cidr: 10.5.14.0/24
-      gateway:
-      vlan: 504
-    - type: floating
-      bridge: brPublic
-      cidr: 10.5.15.0/24
-      gateway:
-      vlan: 505
-    - type: external
-      bridge: brExt
-      cidr:
-      gateway:
-      ipaddress: 10.2.117.92
-      vlan:
diff --git a/installers/joid/pod_config.yaml.j2 b/installers/joid/pod_config.yaml.j2
new file mode 100644 (file)
index 0000000..8e47664
--- /dev/null
@@ -0,0 +1,167 @@
+---
+lab:
+  location: intel
+  racks:
+    - rack: pod5
+      nodes:
+    - name: {{ conf['nodes'][0]['name'] }}
+      architecture: {{ conf['nodes'][0]['node']['arch'] }}
+      roles: [network, control]
+      nics:
+        - ifname: {{ conf['nodes'][0]['interfaces'][0]['name'] }}
+          spaces: [data]
+          mac: ["{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][0]['interfaces'][0]['name'] }}.{{ conf['nodes'][0]['interfaces'][0]['vlan'] }}
+          spaces: [floating]
+          mac: ["{{ conf['nodes'][0]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][0]['interfaces'][1]['name'] }}.{{ conf['nodes'][0]['interfaces'][1]['vlan'] }}
+          spaces: [public]
+          mac: ["{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][0]['interfaces'][1]['name'] }}
+          spaces: [storage]
+          mac: ["{{ conf['nodes'][0]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][0]['interfaces'][2]['name'] }}
+          spaces: [admin]
+          mac: ["{{ conf['nodes'][0]['interfaces'][2]['mac_address'] }}"]
+      power:
+        type: {{ conf['jumphost']['remote_para']['type'] }}
+        address: {{ conf['nodes'][0]['remote_mangement']['address'] }}
+        user: {{ conf['jumphost']['remote_para']['user'] }}
+        pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    - name: {{ conf['nodes'][1]['name'] }}
+      architecture: {{ conf['nodes'][1]['node']['arch'] }}
+      roles: [compute, control, storage]
+      nics:
+        - ifname: {{ conf['nodes'][1]['interfaces'][0]['name'] }}
+          spaces: [data]
+          mac: ["{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][1]['interfaces'][0]['name'] }}.{{ conf['nodes'][1]['interfaces'][0]['vlan'] }}
+          spaces: [floating]
+          mac: ["{{ conf['nodes'][1]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][1]['interfaces'][1]['name'] }}.{{ conf['nodes'][1]['interfaces'][1]['vlan'] }}
+          spaces: [public]
+          mac: ["{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][1]['interfaces'][1]['name'] }}
+          spaces: [storage]
+          mac: ["{{ conf['nodes'][1]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][1]['interfaces'][2]['name'] }}
+          spaces: [admin]
+          mac: ["{{ conf['nodes'][1]['interfaces'][2]['mac_address'] }}"]
+      power:
+        type: {{ conf['jumphost']['remote_para']['type'] }}
+        address: {{ conf['nodes'][1]['remote_mangement']['address'] }}
+        user: {{ conf['jumphost']['remote_para']['user'] }}
+        pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    - name: {{ conf['nodes'][2]['name'] }}
+      architecture: {{ conf['nodes'][2]['node']['arch'] }}
+      roles: [compute, control, storage]
+      nics:
+        - ifname: {{ conf['nodes'][2]['interfaces'][0]['name'] }}
+          spaces: [data]
+          mac: ["{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][2]['interfaces'][0]['name'] }}.{{ conf['nodes'][2]['interfaces'][0]['vlan'] }}
+          spaces: [floating]
+          mac: ["{{ conf['nodes'][2]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][2]['interfaces'][1]['name'] }}.{{ conf['nodes'][2]['interfaces'][1]['vlan'] }}
+          spaces: [public]
+          mac: ["{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][2]['interfaces'][1]['name'] }}
+          spaces: [storage]
+          mac: ["{{ conf['nodes'][2]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][2]['interfaces'][2]['name'] }}
+      power:
+        type: {{ conf['jumphost']['remote_para']['type'] }}
+        address: {{ conf['nodes'][2]['remote_mangement']['address'] }}
+        user: {{ conf['jumphost']['remote_para']['user'] }}
+        pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    - name: {{ conf['nodes'][3]['name'] }}
+      architecture: {{ conf['nodes'][3]['node']['arch'] }}
+      roles: [compute, storage]
+      nics:
+        - ifname: {{ conf['nodes'][3]['interfaces'][0]['name'] }}
+          spaces: [data]
+          mac: ["{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][3]['interfaces'][0]['name'] }}.{{ conf['nodes'][3]['interfaces'][0]['vlan'] }}
+          spaces: [floating]
+          mac: ["{{ conf['nodes'][3]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][3]['interfaces'][1]['name'] }}.{{ conf['nodes'][3]['interfaces'][1]['vlan'] }}
+          spaces: [public]
+          mac: ["{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][3]['interfaces'][1]['name'] }}
+          spaces: [storage]
+          mac: ["{{ conf['nodes'][3]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][3]['interfaces'][2]['name'] }}
+      power:
+        type: ipmi
+        address: {{ conf['nodes'][3]['remote_mangement']['address'] }}
+        user: {{ conf['jumphost']['remote_para']['user'] }}
+        pass: {{ conf['jumphost']['remote_para']['pass'] }}
+    - name: {{ conf['nodes'][4]['name'] }}
+      architecture: {{ conf['nodes'][4]['node']['arch'] }}
+      roles: [compute, storage]
+      nics:
+        - ifname: {{ conf['nodes'][4]['interfaces'][0]['name'] }}
+          spaces: [data]
+          mac: ["{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][4]['interfaces'][0]['name'] }}.{{ conf['nodes'][4]['interfaces'][0]['vlan'] }}
+          spaces: [floating]
+          mac: ["{{ conf['nodes'][4]['interfaces'][0]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][4]['interfaces'][1]['name'] }}.{{ conf['nodes'][4]['interfaces'][1]['vlan'] }}
+          spaces: [public]
+          mac: ["{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][4]['interfaces'][1]['name'] }}
+          spaces: [storage]
+          mac: ["{{ conf['nodes'][4]['interfaces'][1]['mac_address'] }}"]
+        - ifname: {{ conf['nodes'][1]['interfaces'][2]['name'] }}
+      power:
+        type: {{ conf['jumphost']['remote_para']['type'] }}
+        address: {{ conf['nodes'][4]['remote_mangement']['address'] }}
+        user: {{ conf['jumphost']['remote_para']['user'] }}
+        pass: {{ conf['jumphost']['remote_para']['pass'] }}
+      floating-ip-range: 10.5.15.6,10.5.15.250,10.5.15.1,10.5.15.0/24
+      ext-port: "ens785f0.505"
+      dns: 8.8.8.8
+      osdomainname:
+opnfv:
+  release: c
+  distro: trusty
+  type: nonha
+  openstack: liberty
+  sdncontroller:
+    - type: nosdn
+  storage:
+    - type: ceph
+      disk: /dev/sdb
+  feature: odl_l2
+  spaces:
+    - type: admin
+      bridge: brAdm
+      cidr: 10.5.1.0/24
+      gateway: 10.5.1.1
+      vlan:
+    - type: data
+      bridge: brData
+      cidr: 10.5.12.0/24
+      gateway:
+      vlan:
+    - type: storage
+      bridge: brStor
+      cidr: 10.5.13.0/24
+      gateway:
+      vlan:
+    - type: public
+      bridge: brMgmt
+      cidr: 10.5.14.0/24
+      gateway:
+      vlan: 504
+    - type: floating
+      bridge: brPublic
+      cidr: 10.5.15.0/24
+      gateway:
+      vlan: 505
+    - type: external
+      bridge: brExt
+      cidr:
+      gateway:
+      ipaddress: 10.2.117.92
+      vlan:
index b3afb21..972fccc 100644 (file)
@@ -28,7 +28,7 @@ jumphost:
   os: ubuntu-16.04
   remote_para: &remoteparas
     type: ipmi
-    version:
+    versions:
       - 1.0
       - 2.0
     user: opnfv
@@ -66,13 +66,13 @@ nodes:
   - name: CI-ERICSSON-POD1-NODE1
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen8
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: ivybridge
-        cores: 10
-        memory: 64G
+      vendor: HP
+      model: ProLiant BL460c Gen8
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: ivybridge
+      cores: 10
+      memory: 64G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 800G
@@ -108,13 +108,13 @@ nodes:
   - name: CI-ERICSSON-POD1-NODE2
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen8
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: ivybridge
-        cores: 10
-        memory: 64G
+      vendor: HP
+      model: ProLiant BL460c Gen8
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: ivybridge
+      cores: 10
+      memory: 64G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 800G
@@ -150,13 +150,13 @@ nodes:
   - name: CI-ERICSSON-POD1-NODE3
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen8
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: ivybridge
-        cores: 10
-        memory: 64G
+      vendor: HP
+      model: ProLiant BL460c Gen8
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: ivybridge
+      cores: 10
+      memory: 64G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 800G
@@ -192,13 +192,13 @@ nodes:
   - name: CI-ERICSSON-POD1-NODE4
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen8
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: ivybridge
-        cores: 10
-        memory: 64G
+      vendor: HP
+      model: ProLiant BL460c Gen8
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: ivybridge
+      cores: 10
+      memory: 64G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 800G
@@ -234,13 +234,13 @@ nodes:
   - name: CI-ERICSSON-POD1-NODE5
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen8
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: ivybridge
-        cores: 10
-        memory: 64G
+      vendor: HP
+      model: ProLiant BL460c Gen8
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: ivybridge
+      cores: 10
+      memory: 64G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 800G
index 8641891..66dabb3 100644 (file)
@@ -66,14 +66,14 @@ nodes:
   - name: CI-ERICSSON-POD2-NODE1
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen9
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: haswell
-        cores: 12
-        memory: 128G
-    disks:                           # for nodes in the same pod may have the same configuration
+      vendor: HP
+      model: ProLiant BL460c Gen9
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: haswell
+      cores: 12
+      memory: 128G
+    disks:  # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 1200G
         disk_type: hdd
@@ -108,13 +108,13 @@ nodes:
   - name: CI-ERICSSON-POD2-NODE2
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen9
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: haswell
-        cores: 12
-        memory: 128G
+      vendor: HP
+      model: ProLiant BL460c Gen9
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: haswell
+      cores: 12
+      memory: 128G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 1200G
@@ -150,13 +150,13 @@ nodes:
   - name: CI-ERICSSON-POD2-NODE3
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen9
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: haswell
-        cores: 12
-        memory: 128G
+      vendor: HP
+      model: ProLiant BL460c Gen9
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: haswell
+      cores: 12
+      memory: 128G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 1200G
@@ -192,13 +192,13 @@ nodes:
   - name: CI-ERICSSON-POD2-NODE4
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen9
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: haswell
-        cores: 12
-        memory: 128G
+      vendor: HP
+      model: ProLiant BL460c Gen9
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: haswell
+      cores: 12
+      memory: 128G
     disks:                           # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 1200G
@@ -234,14 +234,14 @@ nodes:
   - name: CI-ERICSSON-POD2-NODE5
     node:
       type: baremetal
-        vendor: HP
-        model: ProLiant BL460c Gen9
-        arch: x86_64
-        cpus: 2
-        cpu_cflags: haswell
-        cores: 12
-        memory: 128G
-    disks:                           # for nodes in the same pod may have the same configuration
+      vendor: HP
+      model: ProLiant BL460c Gen9
+      arch: x86_64
+      cpus: 2
+      cpu_cflags: haswell
+      cores: 12
+      memory: 128G
+    disks: # for nodes in the same pod may have the same configuration
       - name: 'disk1'
         disk_capacity: 1200G
         disk_type: hdd
diff --git a/labs/intel/pod5.yaml b/labs/intel/pod5.yaml
deleted file mode 100644 (file)
index 86077a7..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
----
-### intel pod 5 descriptor file ###
-
-global_details:
-  pod owner:
-  contact:
-  arch: x86_64
-  ipmi_username: "root"
-  ipmi_password: "root"
-  ipmi_ips:
-    - 10.2.117.85
-    - 10.2.117.86
-    - 10.2.117.87
-    - 10.2.117.88
-    - 10.2.117.89
-    - 10.2.117.90
-jumphost:
-  name: ''
-  user: ''
-  pass: ''
-  ip:
-interfaces:
-  - features:
-      - dpdk
-      - sriov
-    mac_addresses:
-      jumphost: "00:25:B5:CC:00:4E"
-      node1: "00:25:B5:CC:00:1E"
-      node2: "00:25:B5:CC:00:5D"
-      node3: "00:25:B5:CC:00:1D"
-      node4: "00:25:B5:CC:00:3C"
-      node5: "00:25:B5:A0:00:5B"
-    networks:
-      - vlan: native
-        cidr: 192.30.9.0/24
-        gateway: 192.30.9.1
-        apex:
-          opnfv_net: admin
-        fuel:
-          opnfv_net: pxe
-        joid:
-          opnfv_net: interal_api
-
-      - vlan: 101
-        cidr: 10.0.1.0/24
-        fuel:
-          opnfv_net: tenant
-          tenant_type: vlan
-
-      - vlan: 102
-        cidr: 10.0.2.0/24
-        fuel:
-          opnfv_net: management
-          tenant_type: vlan
-      - vlan: 103
-        cidr: 10.0.3.0/24
-        fuel:
-          opnfv_net: tenant
-          tenant_type: vlan
-# 10  vlans 5 vlans on the private 2+ nics
-# public, private, admin(pxe), management, storage
diff --git a/labs/lf/pod1/pod.yaml b/labs/lf/pod1/pod.yaml
deleted file mode 100644 (file)
index db498c7..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
----
-### LF POD 2 descriptor file ###
-
-global_details:
-  pod owner: Aric Gardner
-  contact: agardner@linuxfoundation.org
-  arch: x86_64
-  ipmi_username: "admin"
-  ipmi_password: "secret"
-  ipmi_ips:
-    - 172.30.8.69
-    - 172.30.8.78
-    - 172.30.8.67
-    - 172.30.8.76
-    - 172.30.8.71
-jumphost:
-  name: 'lf_pod1'
-  user: 'opnfv'
-  pass: 'secret'
-  ip: 172.30.9.66
-
-interfaces:
-  - features:
-      - dpdk
-      - sriov
-    mac_addresses:
-      jumphost: "00:25:B5:CC:00:4E"
-      node1: "00:25:B5:CC:00:1E"
-      node2: "00:25:B5:CC:00:5D"
-      node3: "00:25:B5:CC:00:1D"
-      node4: "00:25:B5:CC:00:3C"
-      node5: "00:25:B5:CC:00:5B"
-      ###
-    mac_addresses2:
-      jumphost: "00:25:B5:CC:00:3F"
-      node1: "00:25:B5:CC:00:0E"
-      node2: "00:25:B5:CC:00:4D"
-      node3: "00:25:B5:CC:00:0D"
-      node4: "00:25:B5:CC:00:2C"
-      node5: "00:25:B5:CC:00:4B"
-    mac_addresses3:
-      jumphost: "00:25:B5:CC:00:2E"
-      node1: "00:25:B5:CC:00:3E"
-      node2: "00:25:B5:CC:00:1F"
-      node3: "00:25:B5:CC:00:3D"
-      node4: "00:25:B5:CC:00:5C"
-      node5: "00:25:B5:CC:00:1C"
-    mac_addressesr4:
-      jumphost: "00:25:B5:CC:00:5E"
-      node1: "00:25:B5:CC:00:4F"
-      node2: "00:25:B5:CC:00:5F"
-      node3: "00:25:B5:CC:00:2D"
-      node4: "00:25:B5:CC:00:4C"
-      node5: "00:25:B5:CC:00:0C"
-      ###
-
-    networks:
-      - vlan: native
-        cidr: 192.30.9.0/24
-        gateway: 192.30.9.1
-        apex:
-          opnfv_net: admin
-        fuel:
-          opnfv_net: pxe
-        joid:
-          opnfv_net: interal_api
-
-      - vlan: 101
-        cidr: 10.0.1.0/24
-        fuel:
-          opnfv_net: tenant
-          tenant_type: vlan
-
-      - vlan: 102
-        cidr: 10.0.2.0/24
-        fuel:
-          opnfv_net: management
-          tenant_type: vlan
-      - vlan: 103
-        cidr: 10.0.3.0/24
-        fuel:
-          opnfv_net: tenant
-          tenant_type: vlan
-  # 10 vlans 5 vlans on the private 2+ nics
-  # public, private, admin(pxe), management, storage
-  - features:
-      - dpdk
-      - sriov
-    mac_addresses:
-      jumphost: "74:4a:a4:00:91:b3"
-      node1: "74:4a:a4:00:91:b3"
-      node2: "74:4a:a4:00:91:b3"
-      node3: "74:4a:a4:00:91:b3"
-      node4: "74:4a:a4:00:91:b3"
-      networks:
-        - vlan: native
-          cidr: 10.1.0.0/24
-          apex:
-            opnfv_net: tenant
-            tenant_type: vxlan
-          fuel:
-            opnfv_net: pxe
-        - vlan: 101
-          cidr: 10.1.1.0/24
-          fuel:
-            opnfv_net: tenant
-            tenant_type: vlan
-        - vlan: 102
-          cidr: 10.1.2.0/24
-          fuel:
-            opnfv_net: management
-            tenant_type: vlan
-        - vlan: 103
-          cidr: 10.1.3.0/24
-          fuel:
-            opnfv_net: tenant
-            tenant_type: vlan
similarity index 97%
rename from labs/zte/pod1/config/pod.yaml
rename to labs/zte/pod1.yaml
index e7b5661..cfd406c 100644 (file)
@@ -1,5 +1,6 @@
+---
 ### ZTE POD 1 descriptor file ###
-#refering to https://gerrit.opnfv.org/gerrit/#/c/23727/9/config/pod1.yaml
+# refering to https://gerrit.opnfv.org/gerrit/#/c/23727/9/config/pod1.yaml
 
 details:
   pod owner: Alex Yang
@@ -8,7 +9,6 @@ details:
   location: Shanghai, China
   type: production
   link: https://wiki.opnfv.org/display/pharos/ZTE+SH+Testlab
-
 jumphost:
   name: pod1-jump
   node:
@@ -39,8 +39,8 @@ jumphost:
   os: CentOS-7
   remote_para: &remoteparas
     type: ipmi
-      - ipmi:
-          - 2.0
+    versions:
+      - 2.0
     user: zteroot
     pass: superuser
   interfaces:
@@ -210,7 +210,7 @@ nodes:
     disks: *disks
     remote_mangement:
       <<: *remoteparas
-      address: 192.168.1.103
+      address: 192.168.1.105
       mac_address: "74:4a:a4:00:ce:bf"
     interfaces:
       - name: 'nic1'
@@ -239,4 +239,3 @@ nodes:
         features: dpdk|sriov
         mac_address: "74:4a:a4:00:d6:9c"
         vlan: 163
-
similarity index 99%
rename from labs/zte/pod2/config/pod.yaml
rename to labs/zte/pod2.yaml
index b2219f9..4945f99 100644 (file)
@@ -35,8 +35,8 @@ jumphost:
   os: CentOS-7
   remote_para: &remoteparas
     type: ipmi
-      - ipmi:
-          - 2.0
+    versions:
+      - 2.0
     user: zteroot
     pass: superuser
   interfaces:
@@ -235,4 +235,3 @@ nodes:
         features: dpdk|sriov
         mac_address: "74:4a:a4:00:d2:c2"
         vlan: 173
-
similarity index 99%
rename from labs/zte/pod3/config/pod.yaml
rename to labs/zte/pod3.yaml
index df3bbe0..a17afaf 100644 (file)
@@ -39,13 +39,14 @@ jumphost:
   os: CentOS-7
   remote_para: &remoteparas
     type: ipmi
-      - ipmi:
-          - 2.0
+    versions:
+      - 2.0
     user: zteroot
     pass: superuser
   interfaces:
     - nic: 'nic1'
       mac_address: "74:4a:a4:00:21:0c"
+      address:
         - 10.20.0.1
         - 172.10.0.240
         - 192.168.1.4
index 2a2f20d..523a7a8 100755 (executable)
@@ -18,6 +18,6 @@ with open(args.yaml) as _:
 # Print dictionary generated from yaml (uncomment for debug)
 #print dict
 
-# Render template and print generated config to console
+# Render template and print generated conf to console
 template = ENV.get_template(args.jinja2)
-print template.render(config=dict)
+print template.render(conf=dict)