CORD-2354 AddressManager service required by fabric synchronizer
Change-Id: I23142f7b9680148d3bb3059a9b84d2622ae9a452
diff --git a/mcord-spirent-test-playbook.yml b/mcord-spirent-test-playbook.yml
deleted file mode 100644
index a80a61f..0000000
--- a/mcord-spirent-test-playbook.yml
+++ /dev/null
@@ -1,58 +0,0 @@
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-
----
-# mcord-spirent-test-playbook.yml
-# Tests CiaB cord-pod XOS configuration
-
-- name: Include vars
- hosts: all
- tasks:
- - name: Include variables
- include_vars: "{{ item }}"
- with_items:
- - "profile_manifests/{{ cord_profile }}.yml"
- - profile_manifests/local_vars.yml
-
-- name: Run base M-CORD tests
- hosts: head
- become: no
- # These variables could be elevated to the profile. Think about
- # doing this after the E2E test framework is complete.
- vars:
- test_networks:
- - management
- - sgi_network
- - s11_network
- - spgw_network
- test_services:
- - venb
- - vspgwc
- - vspgwu
- test_ports:
- - { vm: venb, network: management }
- - { vm: venb, network: s11_network }
- - { vm: venb, network: sgi_network }
- - { vm: venb, network: s1u_network }
- - { vm: vspgwc, network: management }
- - { vm: vspgwc, network: s11_network }
- - { vm: vspgwc, network: spgw_network }
- - { vm: vspgwu, network: management }
- - { vm: vspgwu, network: s1u_network }
- - { vm: vspgwu, network: sgi_network }
- - { vm: vspgwu, network: spgw_network }
- roles:
- - test-mcord-base
diff --git a/profile_manifests/mcord-ng40.yml b/profile_manifests/mcord-ng40.yml
index 7e7cf3d..80cae72 100644
--- a/profile_manifests/mcord-ng40.yml
+++ b/profile_manifests/mcord-ng40.yml
@@ -68,6 +68,8 @@
- name: onos
path: orchestration/xos_services/onos-service
keypair: onos_rsa
+ - name: addressmanager
+ path: orchestration/xos_services/addressmanager
- name: fabric
path: orchestration/xos_services/fabric
- name: venb
diff --git a/profile_manifests/mcord-spirent.yml b/profile_manifests/mcord-spirent.yml
deleted file mode 100644
index 3a35096..0000000
--- a/profile_manifests/mcord-spirent.yml
+++ /dev/null
@@ -1,275 +0,0 @@
----
-
-# Copyright 2017-present Open Networking Foundation
-#
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# profile_manifests/mcord.yml
-# Configures an M-CORD pod
-
-# site configuration
-site_name: mysite
-site_humanname: MySite
-#site_suffix: "{{ site_name }}.opencord.org"
-site_suffix: "cord.lab"
-deployment_type: MyDeployment
-
-# Feature toggles
-use_fabric: True
-use_maas: True
-
-# XOS config
-xos_tosca_config_templates:
- - vtn-service.yaml
- - fabric-service.yaml
- - management-net.yaml
- - shared-net.yaml
- - wan-net.yaml
- - vsg-net.yaml
- - xos-gui-extensions.yml
-
-xos_new_tosca_config_templates:
- - s11-net.yaml
- - s1u-net.yaml
- - nbi-net.yaml
- - sbi-net.yaml
- - spgw-net.yaml
- - sgi-net.yaml
- - flat-net.yaml
- - mcord-spirent-services.yml
- - service-graph-constraints.yaml
-
-xos_other_templates:
- - fabric-network-cfg.json
-
-# GUI Config [new GUI]
-gui_project_name: "M-CORD"
-gui_background: "cord-bg.jpg" # TODO find mcord image
-
-enabled_gui_extensions: []
-
-# paths defined in manifest/default.xml
-xos_services:
- - name: vtn
- path: orchestration/xos_services/vtn-service
- keypair: vsg_rsa
- - name: openstack
- path: orchestration/xos_services/openstack
- - name: onos
- path: orchestration/xos_services/onos-service
- keypair: onos_rsa
- - name: fabric
- path: orchestration/xos_services/fabric
- - name: venb
- path: orchestration/xos_services/venb
- keypair: mcord_rsa
- - name: vspgwc
- path: orchestration/xos_services/vspgwc
- keypair: mcord_rsa
- - name: vspgwu
- path: orchestration/xos_services/vspgwu
- keypair: mcord_rsa
-
-# service graph gui constraints
-xos_gui_service_graph_constraints: '[]'
-
-profile_library: "mcord"
-
-# VTN network configuration
-management_network_cidr: 172.27.0.0/24
-management_network_ip: 172.27.0.1/24
-data_plane_ip: 10.168.0.253/24
-
-# Juju config
-charm_versions:
- ceilometer: "cs:trusty/ceilometer-17"
- ceilometer-agent: "cs:trusty/ceilometer-agent-13"
- glance: "cs:trusty/glance-28"
- keystone: "cs:trusty/keystone-267"
- mongodb: "cs:trusty/mongodb-33"
- percona-cluster: "cs:trusty/percona-cluster-31"
- nagios: "cs:trusty/nagios-10"
- neutron-api: "cs:~cordteam/trusty/neutron-api-6"
- nova-cloud-controller: "cs:trusty/nova-cloud-controller-64"
- nova-compute: "cs:~cordteam/trusty/nova-compute-3"
- nrpe: "cs:trusty/nrpe-4"
- ntp: "cs:trusty/ntp-14"
- openstack-dashboard: "cs:trusty/openstack-dashboard-19"
- rabbitmq-server: "cs:trusty/rabbitmq-server-42"
-
-head_lxd_list:
- - name: "juju-1"
- service: "juju"
- aliases:
- - "juju"
- ipv4_last_octet: 10
-
- - name: "ceilometer-1"
- service: "ceilometer"
- aliases:
- - "ceilometer"
- ipv4_last_octet: 20
- forwarded_ports:
- - { ext: 8777, int: 8777 }
-
- - name: "glance-1"
- service: "glance"
- aliases:
- - "glance"
- ipv4_last_octet: 30
- forwarded_ports:
- - { ext: 9292, int: 9292 }
-
- - name: "keystone-1"
- service: "keystone"
- aliases:
- - "keystone"
- ipv4_last_octet: 40
- forwarded_ports:
- - { ext: 35357, int: 35357 }
- - { ext: 4990, int: 4990 }
- - { ext: 5000, int: 5000 }
-
- - name: "percona-cluster-1"
- service: "percona-cluster"
- aliases:
- - "percona-cluster"
- ipv4_last_octet: 50
-
- - name: "nagios-1"
- service: "nagios"
- aliases:
- - "nagios"
- ipv4_last_octet: 60
- forwarded_ports:
- - { ext: 3128, int: 80 }
-
- - name: "neutron-api-1"
- service: "neutron-api"
- aliases:
- - "neutron-api"
- ipv4_last_octet: 70
- forwarded_ports:
- - { ext: 9696, int: 9696 }
-
- - name: "nova-cloud-controller-1"
- service: "nova-cloud-controller"
- aliases:
- - "nova-cloud-controller"
- ipv4_last_octet: 80
- forwarded_ports:
- - { ext: 8774, int: 8774 }
-
- - name: "openstack-dashboard-1"
- service: "openstack-dashboard"
- aliases:
- - "openstack-dashboard"
- ipv4_last_octet: 90
- forwarded_ports:
- - { ext: 8080, int: 80 }
-
- - name: "rabbitmq-server-1"
- service: "rabbitmq-server"
- aliases:
- - "rabbitmq-server"
- ipv4_last_octet: 100
-
- - name: "mongodb-1"
- service: "mongodb"
- aliases:
- - "mongodb"
- ipv4_last_octet: 110
-
-lxd_service_list:
- - ceilometer
- - glance
- - keystone
- - mongodb
- - nagios
- - neutron-api
- - nova-cloud-controller
- - openstack-dashboard
- - percona-cluster
- - rabbitmq-server
-
-standalone_service_list:
- - ntp
- - nrpe
- - ceilometer-agent
-
-
-service_relations:
- - name: keystone
- relations: [ "percona-cluster", "nrpe", ]
-
- - name: nova-cloud-controller
- relations: [ "percona-cluster", "rabbitmq-server", "glance", "keystone", "nrpe", ]
-
- - name: glance
- relations: [ "percona-cluster", "keystone", "nrpe", ]
-
- - name: neutron-api
- relations: [ "keystone", "percona-cluster", "rabbitmq-server", "nova-cloud-controller", "nrpe", ]
-
- - name: openstack-dashboard
- relations: [ "keystone", "nrpe", ]
-
- - name: nagios
- relations: [ "nrpe", ]
-
- - name: "percona-cluster:juju-info"
- relations: [ "nrpe:general-info", ]
-
- - name: rabbitmq-server
- relations: [ "nrpe", ]
-
- - name: ceilometer
- relations: [ "mongodb", "rabbitmq-server", "nagios", "nrpe", ]
-
- - name: "ceilometer:identity-service"
- relations: [ "keystone:identity-service", ]
-
- - name: "ceilometer:ceilometer-service"
- relations: [ "ceilometer-agent:ceilometer-service", ]
-
-
-compute_relations:
- - name: nova-compute
- relations: [ "ceilometer-agent", "glance", "nova-cloud-controller", "nagios", "nrpe", ]
-
- - name: "nova-compute:shared-db"
- relations: [ "percona-cluster:shared-db", ]
-
- - name: "nova-compute:amqp"
- relations: [ "rabbitmq-server:amqp", ]
-
- - name: ntp
- relations: [ "nova-compute", ]
-
-
-xos_images:
- - name: "trusty-server-multi-nic"
- url: "http://www.vicci.org/opencloud/trusty-server-cloudimg-amd64-disk1.img.20170201"
- checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb"
-
- - name: "image-venb"
- url: "http://www.vicci.org/opencloud/trusty-server-cloudimg-amd64-disk1.img.20170201"
- checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb"
-
- - name: "image-spgwc"
- url: "http://www.vicci.org/cord/ngic-cp1-cmpress.qcow2.20171121"
- checksum: "sha256:eca43de006d193625778597cc9b3f171752c31e0ce6dbed363954c87c33935a3"
-
- - name: "image-spgwu"
- url: "http://www.vicci.org/cord/ngic-dp1-cmpress.qcow2.20171121"
- checksum: "sha256:2d431dc24b8de5d531ddf9a82c20f692d9ac8c9d4dd0295c535acc06c6635bc5"
diff --git a/profile_manifests/mcord.yml b/profile_manifests/mcord.yml
index 6961280..cfaf6d9 100644
--- a/profile_manifests/mcord.yml
+++ b/profile_manifests/mcord.yml
@@ -74,6 +74,8 @@
- name: onos
path: orchestration/xos_services/onos-service
keypair: onos_rsa
+ - name: addressmanager
+ path: orchestration/xos_services/addressmanager
- name: fabric
path: orchestration/xos_services/fabric
- name: vmme
diff --git a/roles/cord-profile/templates/mcord-spirent-services.yml.j2 b/roles/cord-profile/templates/mcord-spirent-services.yml.j2
deleted file mode 100644
index 98a508c..0000000
--- a/roles/cord-profile/templates/mcord-spirent-services.yml.j2
+++ /dev/null
@@ -1,428 +0,0 @@
-
-{#
-Copyright 2017-present Open Networking Foundation
-
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-#}
-
-
-tosca_definitions_version: tosca_simple_yaml_1_0
-
-description: created by platform-install, need to add M-CORD services later
-
-imports:
- - custom_types/xos.yaml
- - custom_types/slice.yaml
- - custom_types/site.yaml
- - custom_types/image.yaml
- - custom_types/flavor.yaml
- - custom_types/network.yaml
- - custom_types/onosservice.yaml
- - custom_types/networkslice.yaml
- - custom_types/venbservice.yaml
- - custom_types/venbserviceinstance.yaml
- - custom_types/vspgwcservice.yaml
- - custom_types/vspgwcvendor.yaml
- - custom_types/vspgwctenant.yaml
- - custom_types/vspgwuservice.yaml
- - custom_types/vspgwuvendor.yaml
- - custom_types/vspgwutenant.yaml
-
-topology_template:
- node_templates:
-
-# site, image, fully created in deployment.yaml
- {{ site_name }}:
- type: tosca.nodes.Site
- properties:
- must-exist: true
- name: {{ site_name }}
-
- m1.small:
- type: tosca.nodes.Flavor
- properties:
- name: m1.small
- must-exist: true
- m1.large:
- type: tosca.nodes.Flavor
- properties:
- name: m1.large
- must-exist: true
- m1.medium:
- type: tosca.nodes.Flavor
- properties:
- name: m1.medium
- must-exist: true
- m1.xlarge:
- type: tosca.nodes.Flavor
- properties:
- name: m1.xlarge
- must-exist: true
-
- image-venb:
- type: tosca.nodes.Image
- properties:
- name: image-venb
-
- image-spgwc:
- type: tosca.nodes.Image
- properties:
- name: image-spgwc
-
- image-spgwu:
- type: tosca.nodes.Image
- properties:
- name: image-spgwu
-
-# management networks, fully created in management-net.yaml
- management:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: management
-
-{% if use_management_hosts %}
- management_hosts:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: management_hosts
-{% endif %}
-
-# s1u_network is for connectivity between VMs, fully created in s1u-net.yaml
- s1u_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: s1u_network
-# s11_network is for connectivity between VMs, fully created in s11-net.yaml
- s11_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: s11_network
-# nbi_network is for connectivity between VMs, fully created in nbi-net.yaml
- nbi_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: nbi_network
-# sbi_network is for connectivity between VMs, fully created in sbi-net.yaml
- sbi_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: sbi_network
-# sgi_network is for connectivity between VMs, fully created in sgi-net.yaml
- sgi_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: sgi_network
-# spgw_network is for connectivity between VMs, fully created in spgw-net.yaml
- spgw_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: spgw_network
-# flat_network is for connectivity between VM inside cord and server outside, fully created in flat-net.yaml
- flat_network:
- type: tosca.nodes.Network
- properties:
- must-exist: true
- name: flat_network
-
-# ONOS_CORD, fully created in vtn.yaml
- service#ONOS_CORD:
- type: tosca.nodes.ONOSService
- properties:
- must-exist: true
- name: ONOS_CORD
-
-# ONOS_Fabric, fully created in fabric.yaml
- service#ONOS_Fabric:
- type: tosca.nodes.ONOSService
- properties:
- must-exist: true
- name: ONOS_Fabric
-
-# vENB Service
- service#venb:
- type: tosca.nodes.VENBService
- properties:
- name: venb
- kind: vEPC
- public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
- private_key_fn: /opt/xos/services/venb/keys/mcord_rsa
- artifacts:
- pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
-
- {{ site_name }}_venb:
- description: vENB Service Slice
- type: tosca.nodes.Slice
- properties:
- name: {{ site_name }}_venb
- default_isolation: vm
- network: noauto
- requirements:
- - site:
- node: mysite
- relationship: tosca.relationships.BelongsToOne
- - service:
- node: service#venb
- relationship: tosca.relationships.BelongsToOne
- - default_image:
- node: image-venb
- relationship: tosca.relationships.BelongsToOne
- - default_flavor:
- node: m1.xlarge
- relationship: tosca.relationships.BelongsToOne
-
- venb_instance1:
- type: tosca.nodes.VENBServiceInstance
- properties:
- name: venb_instance1
- requirements:
- - owner:
- node: service#venb
- relationship: tosca.relationships.BelongsToOne
-
- venb_slice_management_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: management
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_venb
- relationship: tosca.relationships.BelongsToOne
-
- venb_slice_s11_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: s11_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_venb
- relationship: tosca.relationships.BelongsToOne
-
- venb_slice_s1u_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: s1u_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_venb
- relationship: tosca.relationships.BelongsToOne
-
- venb_slice_sgi_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: sgi_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_venb
- relationship: tosca.relationships.BelongsToOne
-
- venb_slice_flat_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: flat_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_venb
- relationship: tosca.relationships.BelongsToOne
-
-#vSPGWC Service
- service#vspgwc:
- type: tosca.nodes.VSPGWCService
- properties:
- name: vspgwc
- public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
- private_key_fn: /opt/xos/services/vspgwc/keys/mcord_rsa
- artifacts:
- pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
-
- {{ site_name }}_vspgwc:
- description: SDN controller slice
- type: tosca.nodes.Slice
- properties:
- name: {{ site_name }}_vspgwc
- default_isolation: vm
- network: noauto
- requirements:
- - site:
- node: mysite
- relationship: tosca.relationships.BelongsToOne
- - service:
- node: service#vspgwc
- relationship: tosca.relationships.BelongsToOne
- - default_image:
- node: image-spgwc
- relationship: tosca.relationships.BelongsToOne
- - default_flavor:
- node: m1.large
- relationship: tosca.relationships.BelongsToOne
-
- intel_vspgwc:
- type: tosca.nodes.VSPGWCVendor
- properties:
- name: intel_vspgwc
- requirements:
- - image:
- node: image-spgwc
- relationship: tosca.relationships.BelongsToOne
- - flavor:
- node: m1.large
- relationship: tosca.relationships.BelongsToOne
-
- serviceinstance#vspgwc_instance:
- type: tosca.nodes.VSPGWCTenant
- properties:
- name: vspgwc_instance1
- requirements:
- - vspgwc_vendor:
- node: intel_vspgwc
- relationship: tosca.relationships.BelongsToOne
- - owner:
- node: service#vspgwc
- relationship: tosca.relationships.BelongsToOne
-
- vspgwc_slice_management_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: management
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwc
- relationship: tosca.relationships.BelongsToOne
-
- vspgwc_slice_s11_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: s11_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwc
- relationship: tosca.relationships.BelongsToOne
-
- vspgwc_slice_spgw_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: spgw_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwc
- relationship: tosca.relationships.BelongsToOne
-
-#vSPGWU Service
- service#vspgwu:
- type: tosca.nodes.VSPGWUService
- properties:
- name: vspgwu
- public_key: {{ lookup('file', config_cord_profile_dir + '/key_import/mcord_rsa.pub') }}
- private_key_fn: /opt/xos/services/vspgwu/keys/mcord_rsa
- artifacts:
- pubkey: /opt/cord_profile/key_import/mcord_rsa.pub
-
- {{ site_name }}_vspgwu:
- description: SDN controller slice
- type: tosca.nodes.Slice
- properties:
- name: {{ site_name }}_vspgwu
- default_isolation: vm
- network: noauto
- requirements:
- - site:
- node: mysite
- relationship: tosca.relationships.BelongsToOne
- - service:
- node: service#vspgwu
- relationship: tosca.relationships.BelongsToOne
- - default_image:
- node: image-spgwu
- relationship: tosca.relationships.BelongsToOne
- - default_flavor:
- node: m1.xlarge
- relationship: tosca.relationships.BelongsToOne
-
- intel_vspgwu:
- type: tosca.nodes.VSPGWUVendor
- properties:
- name: intel_vspgwu
- requirements:
- - image:
- node: image-spgwu
- relationship: tosca.relationships.BelongsToOne
- - flavor:
- node: m1.xlarge
- relationship: tosca.relationships.BelongsToOne
-
- serviceinstance#vspgwu_instance:
- type: tosca.nodes.VSPGWUTenant
- properties:
- name: vspgwu_instance1
- requirements:
- - vspgwu_vendor:
- node: intel_vspgwu
- relationship: tosca.relationships.BelongsToOne
- - owner:
- node: service#vspgwu
- relationship: tosca.relationships.BelongsToOne
-
- vspgwu_slice_management_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: management
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwu
- relationship: tosca.relationships.BelongsToOne
-
- vspgwu_slice_sgi_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: sgi_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwu
- relationship: tosca.relationships.BelongsToOne
-
- vspgwu_slice_spgw_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: spgw_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwu
- relationship: tosca.relationships.BelongsToOne
-
- vspgwu_slice_s1u_network:
- type: tosca.nodes.NetworkSlice
- requirements:
- - network:
- node: s1u_network
- relationship: tosca.relationships.BelongsToOne
- - slice:
- node: {{ site_name }}_vspgwu
- relationship: tosca.relationships.BelongsToOne