blob: fabcc9cf0aae93e41d5f664ab15bf5e7715546cb [file] [log] [blame]
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +02001.. _docs_bbs:
2
3BBS (Broadband Service)
4-----------------------
5
6Overview
7~~~~~~~~
8The BBS use case proposes using ONAP for the design, provisioning, life-cycle
9management and assurance of broadband services. BBS focuses on multi-Gigabit
10Internet Connectivity services based on PON (Passive Optical Network) access
11technology.
12
Pérez Caparrós David5da05c52020-03-05 10:31:49 +010013In Frankfurt release, BBS enables ONAP to
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +020014
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100151. Establish a subscriber's HSIA (High Speed Internet Access) service from an ONT (Optical Network Termination unit) to the Internet drain
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +020016
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +010017 - The HSIA service is designed and deployed using ONAP's design and deployment capabilities
18 - The HSIA service activation is initiated via ONAP's External APIs and orchestrated and controlled using ONAP orchestration and control capabilities. The control capabilities leverage a 3rd party controller to implement the requested actions within the technology domain/location represented by the domain specific SDN management and control function.
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +020019
202. Detect the change of location for ONT devices (Nomadic ONT devices)
21
22 - PNF (Re-)Registration for an ONT
23
24 - Subscriber association to an ONT via ONAP's External APIs
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +010025 - ONT association with a expected Access UNI (PON port) when a HSIA service is created/deployed for a subscriber
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +020026 - PNF (Re-)Registration using ONAP's PNF registration capabilities
27
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +010028 - Service location modification that is detected by ONAP's analytic and initiated via the closed loop capabilities
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +020029
Pérez Caparrós David5da05c52020-03-05 10:31:49 +010030 - The closed loop capabilities invoke a HSIA location change service that
31 is orchestrated and controlled using ONAP capabilities and 3rd party controllers
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +020032
33|image1|
34
35**Figure 1. Architecture Overview**
36
37System View
38~~~~~~~~~~~
39BBS relies on key ONAP components such as External API, SO, AAI, SDC, Policy
40(APEX engine), DCAE (PRH, BBS Event Processor, VES collector, VES mapper,
41RESTCONF collector) and SDNC
42
43|image2|
44
45**Figure 2. System View**
46
47System Set Up and configuration
48~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
49
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +020050SO: Custom Workflow Configuration
51=================================
52
53::
54
55 ~/oom/kubernetes# kubectl edit cm dev-so-so-bpmn-infra-app-configmap
56
Pérez Caparrós David5da05c52020-03-05 10:31:49 +010057 mso:
58 ...
59 oof:
60 auth: test:testpwd
61 callbackEndpoint: http://so-bpmn-infra.onap:8081/mso/WorkflowMessage
62 endpoint: https://oof-osdf.onap:8698/api/oof/v1/placement
63 timeout: PT30M
64 workflow:
65 + custom:
66 + BBS_E2E_Service:
67 + sdnc:
68 + need: true
69 + resource:
70 + sequence: VnfVirtualLink,CPE,AccessConnectivity,InternetProfile,PonUni,OltNni,OntNni
71 CreateGenericVNFV1:
72 aai:
73 volume-group:
74 uri: /aai/v6/cloud-infrastructure/volume-groups/volume-group
75 default:
76 aai:
77 ...
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +020078
79 ## Restart the pod
80 ~/oom/kubernetes# kubectl delete po dev-so-so-bpmn-infra-7556d7f6bc-8fthk
81
82
83As shown below, new entries need to be inserted manually in SO database (mariadb-galera) in order to map a given resource model to a specific BPMN recipe. For instance, the CPE is modeled in SDC as a VF but it is treated as PNF resource by SO by using the handlePNF BPMN recipe. Those entries need to be inserted in catalogdb database > vnf_recipe table.
84
85IMPORTANT: make sure vnf_recipe.NF_ROLE matches vnf_resource.MODEL_NAME, and vnf_recipe.VERSION_STR matches vnf_resource.MODEL_VERSION.
86
87::
88
89 root@onap-rancher-daily:/home/ubuntu# kubectl exec -ti dev-mariadb-galera-mariadb-galera-0 sh
90 sh-4.2$ mysql -u root -p
91 MariaDB [(none)]> use catalogdb;
Pérez Caparrós David5da05c52020-03-05 10:31:49 +010092 MariaDB [catalogdb]> INSERT INTO vnf_recipe (NF_ROLE, ACTION, SERVICE_TYPE, VERSION_STR, DESCRIPTION, ORCHESTRATION_URI, VNF_PARAM_XSD, RECIPE_TIMEOUT)
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +020093 VALUES
Pérez Caparrós David5da05c52020-03-05 10:31:49 +010094 ("InternetProfile", "createInstance", "NF", "1.0", "create InternetProfile", "/mso/async/services/CreateSDNCNetworkResource", '{"operationType":"AccessConnectivity"}', 180000),
95 ("AccessConnectivity", "createInstance", "NF", "1.0", "create AccessConnectivity", "/mso/async/services/CreateSDNCNetworkResource", '{"operationType":"InternetProfile"}', 180000),
96 ("CPE", "createInstance", "NF", "1.0", "create CPE", "/mso/async/services/HandlePNF", NULL, 180000);
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +020097
Pérez Caparrós David5da05c52020-03-05 10:31:49 +010098 MariaDB [catalogdb]> select * from vnf_recipe where NF_ROLE IN ('AccessConnectivity','InternetProfile', 'CPE');
99 +-------+--------------------+----------------+--------------+-------------+---------------------------+-----------------------------------------------+----------------------------------------+----------------+---------------------+--------------+
100 | id | NF_ROLE | ACTION | SERVICE_TYPE | VERSION_STR | DESCRIPTION | ORCHESTRATION_URI | VNF_PARAM_XSD | RECIPE_TIMEOUT | CREATION_TIMESTAMP | VF_MODULE_ID |
101 +-------+--------------------+----------------+--------------+-------------+---------------------------+-----------------------------------------------+----------------------------------------+----------------+---------------------+--------------+
102 | 10048 | InternetProfile | createInstance | NF | 1.0 | create InternetProfile | /mso/async/services/CreateSDNCNetworkResource | {"operationType":"InternetProfile"} | 1800000 | 2020-01-20 17:43:07 | NULL |
103 | 10051 | AccessConnectivity | createInstance | NF | 1.0 | create AccessConnectivity | /mso/async/services/CreateSDNCNetworkResource | {"operationType":"AccessConnectivity"} | 1800000 | 2020-01-20 17:43:07 | NULL |
104 | 10054 | CPE | createInstance | NF | 1.0 | create CPE | /mso/async/services/HandlePNF | NULL | 1800000 | 2020-01-20 17:43:07 | NULL |
105 +-------+--------------------+----------------+--------------+-------------+---------------------------+-----------------------------------------------+----------------------------------------+----------------+---------------------+--------------+
106 3 rows in set (0.00 sec)
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200107
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200108
109DMaaP Message Router
110====================
111
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100112Create the required topics in DMaaP
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200113
114::
115
116 curl -X POST \
117 http://mr.api.simpledemo.openecomp.org:30227/topics/create \
118 -H 'Accept: application/json' \
119 -H 'Content-Type: application/json' \
120 -H 'cache-control: no-cache' \
121 -d '{
122 "topicName": "unauthenticated.DCAE_CL_OUTPUT",
123 "topicDescription": "",
124 "partitionCount": "",
125 "replicationCount": "3"
126 }'
127
128 curl -X POST \
129 http://mr.api.simpledemo.openecomp.org:30227/topics/create \
130 -H 'Accept: application/json' \
131 -H 'Content-Type: application/json' \
132 -H 'cache-control: no-cache' \
133 -d '{
134 "topicName": "unauthenticated.CPE_AUTHENTICATION",
135 "topicDescription": "",
136 "partitionCount": "",
137 "replicationCount": "3"
138 }'
139
140 curl -X POST \
141 http://mr.api.simpledemo.openecomp.org:30227/topics/create \
142 -H 'Accept: application/json' \
143 -H 'Content-Type: application/json' \
144 -H 'cache-control: no-cache' \
145 -d '{
146 "topicName": "unauthenticated.PNF_READY",
147 "topicDescription": "",
148 "partitionCount": "",
149 "replicationCount": "3"
150 }'
151
152 curl -X POST \
153 http://mr.api.simpledemo.openecomp.org:30227/topics/create \
154 -H 'Accept: application/json' \
155 -H 'Content-Type: application/json' \
156 -H 'cache-control: no-cache' \
157 -d '{
158 "topicName": "unauthenticated.PNF_UPDATE",
159 "topicDescription": "",
160 "partitionCount": "",
161 "replicationCount": "3"
162 }'
163
164DCAE: BBS Event Processor (BBS-ep)
165==================================
166
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100167Description: :doc:`BBS-ep <../../dcaegen2.git/docs/sections/services/bbs-event-processor/index.rst>`_
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200168
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100169The following BBS event processor blueprints will be used:
170- `k8s-bbs-event-processor.yaml <https://git.onap.org/dcaegen2/services/plain/components/bbs-event-processor/dpo/blueprints/k8s-bbs-event-processor.yaml-template?h=frankfurt>`_
171- `bbs-event-processor-input.yaml <https://git.onap.org/dcaegen2/services/plain/components/bbs-event-processor/dpo/blueprints/bbs-event-processor-input.yaml?h=frankfurt>`_
172
173The BBS-ep deployment procedure:
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200174
175::
176
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100177 ~/oom/kubernetes# kubectl exec -ti dev-dcaegen2-dcae-bootstrap-85f664d489-54pmt bash
178
179 [root@dev-dcaegen2-dcae-bootstrap-85f664d489-54pmt /]# cfy blueprints validate /blueprints/k8s-bbs-event-processor.yaml
180 Validating blueprint: /blueprints/k8s-bbs-event-processor.yaml-template
181 Blueprint validated successfully
182
183 [root@dev-dcaegen2-dcae-bootstrap-85f664d489-54pmt /]# cfy blueprints upload -b bbs-ep /blueprints/k8s-bbs-event-processor.yaml
184 Uploading blueprint /blueprints/k8s-bbs-event-processor.yaml...
185 k8s-bbs-event-pro... |################################################| 100.0%
186 Blueprint uploaded. The blueprint's id is bbs-ep
187 [root@dev-dcaegen2-dcae-bootstrap-85f664d489-54pmt /]# cfy deployments create -b bbs-ep -i /bbs-event-processor-input.yaml bbs-ep
188 Creating new deployment from blueprint bbs-ep...
189 Deployment created. The deployment's id is bbs-ep
190
191 [root@dev-dcaegen2-dcae-bootstrap-85f664d489-54pmt /]# cfy executions start -d bbs-ep install
192 Executing workflow install on deployment bbs-ep [timeout=900 seconds]
193 2019-05-01 11:35:32.007 CFY <bbs-ep> Starting 'install' workflow execution
194 2019-05-01 11:35:32.587 CFY <bbs-ep> [bbs-event-processor_yd5ucp] Creating node instance
195 2019-05-01 11:35:32.587 CFY <bbs-ep> [bbs-event-processor_yd5ucp.create] Sending task 'k8splugin.create_for_components'
196 2019-05-01 11:35:33.953 LOG <bbs-ep> [bbs-event-processor_yd5ucp.create] INFO: Added config for s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor
197 2019-05-01 11:35:33.953 LOG <bbs-ep> [bbs-event-processor_yd5ucp.create] INFO: Added config for s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor
198 2019-05-01 11:35:34.596 CFY <bbs-ep> [bbs-event-processor_yd5ucp.create] Task succeeded 'k8splugin.create_for_components'
199 2019-05-01 11:35:34.596 CFY <bbs-ep> [bbs-event-processor_yd5ucp] Node instance created
200 2019-05-01 11:35:34.596 CFY <bbs-ep> [bbs-event-processor_yd5ucp] Configuring node instance: nothing to do
201 2019-05-01 11:35:35.227 CFY <bbs-ep> [bbs-event-processor_yd5ucp] Starting node instance
202 2019-05-01 11:35:35.227 CFY <bbs-ep> [bbs-event-processor_yd5ucp.start] Sending task 'k8splugin.create_and_start_container_for_components'
203 2019-05-01 11:35:36.818 LOG <bbs-ep> [bbs-event-processor_yd5ucp.start] INFO: Passing k8sconfig: {'tls': {u'cert_path': u'/opt/tls/shared', u'image': u'nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3-STAGING-latest'}, 'filebeat': {u'config_map': u'dcae-filebeat-configmap', u'config_path': u'/usr/share/filebeat/filebeat.yml', u'log_path': u'/var/log/onap', u'image': u'docker.elastic.co/beats/filebeat:5.5.0', u'data_path': u'/usr/share/filebeat/data', u'config_subpath': u'filebeat.yml'}, 'consul_dns_name': u'consul-server.onap', 'image_pull_secrets': [u'onap-docker-registry-key'], 'namespace': u'onap', 'consul_host': 'consul-server:8500', 'default_k8s_location': u'central'}
204 2019-05-01 11:35:36.818 LOG <bbs-ep> [bbs-event-processor_yd5ucp.start] INFO: k8s deployment initiated successfully for s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor: {'services': ['s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor', 'xs4d51b24f52264857b7ef520be9efc46b-bbs-event-processor'], 'namespace': u'onap', 'location': u'central', 'deployment': 'dep-s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor'}
205 2019-05-01 11:35:36.818 LOG <bbs-ep> [bbs-event-processor_yd5ucp.start] INFO: Waiting up to 1800 secs for s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor to become ready
206 2019-05-01 11:36:58.376 LOG <bbs-ep> [bbs-event-processor_yd5ucp.start] INFO: Done starting: s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor
207 2019-05-01 11:36:57.873 LOG <bbs-ep> [bbs-event-processor_yd5ucp.start] INFO: k8s deployment is ready for: s4d51b24f52264857b7ef520be9efc46b-bbs-event-processor
208 2019-05-01 11:36:59.119 CFY <bbs-ep> [bbs-event-processor_yd5ucp.start] Task succeeded 'k8splugin.create_and_start_container_for_components'
209 2019-05-01 11:36:59.119 CFY <bbs-ep> [bbs-event-processor_yd5ucp] Node instance started
210 2019-05-01 11:36:59.119 CFY <bbs-ep> 'install' workflow execution succeeded
211 Finished executing workflow install on deployment bbs-ep
212 * Run 'cfy events list -e 7f285182-4f85-478c-95f3-b8b6970f7c8d' to retrieve the execution's events/logs
213
214IMPORTANT: Make sure that the configuration of BBS-ep in Consul contains the following version for the close loop policy in order to match the version expected by BBS APEX policy:
215
216::
217
218 "application.clVersion": "1.0.2"
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200219
220DCAE: RESTCONF Collector
221========================
222
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100223Description: :doc:`RESTCONF Collector <../../dcaegen2.git/docs/sections/services/restconf/index.rst>`_
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100224
225The following RESTCONF collector blueprints will be used:
226- `k8s-rcc-policy.yaml <https://git.onap.org/dcaegen2/collectors/restconf/plain/dpo/blueprints/k8s-rcc-policy.yaml-template?h=frankfurt>`_
227
228RESTCONF Collector deployment procedure:
229
230::
231
232 [root@dev-dcaegen2-dcae-bootstrap-779767c49c-7cvdw /]# cfy blueprints validate blueprints/k8s-rcc-policy.yaml
233 Validating blueprint: blueprints/k8s-rcc-policy.yaml
234 Blueprint validated successfully
235
236 [root@dev-dcaegen2-dcae-bootstrap-779767c49c-7cvdw /]# cfy blueprints upload -b restconfcollector /blueprints/k8s-rcc-policy.yaml
237 Uploading blueprint /blueprints/k8s-rcc-policy.yaml...
238 k8s-rcc-policy.yaml |#################################################| 100.0%
239 Blueprint uploaded. The blueprint's id is restconfcollector
240
241 [root@dev-dcaegen2-dcae-bootstrap-779767c49c-7cvdw /]# cfy deployments create -b restconfcollector
242 Creating new deployment from blueprint restconfcollector...
243 Deployment created. The deployment's id is restconfcollector
244
245 [root@dev-dcaegen2-dcae-bootstrap-779767c49c-7cvdw /]# cfy executions start -d restconfcollector install
246 Executing workflow install on deployment restconfcollector [timeout=900 seconds]
247 2020-01-13 15:12:52.119 CFY <restconfcollector> Starting 'install' workflow execution
248 2020-01-13 15:12:52.701 CFY <restconfcollector> [rcc_k8s_8qm5me] Creating node instance
249 2020-01-13 15:12:52.701 CFY <restconfcollector> [rcc_k8s_8qm5me.create] Sending task 'k8splugin.create_for_platforms'
250 2020-01-13 15:12:55.168 LOG <restconfcollector> [rcc_k8s_8qm5me.create] INFO: Added config for dcaegen2-collectors-rcc
251 2020-01-13 15:12:55.747 LOG <restconfcollector> [rcc_k8s_8qm5me.create] INFO: Done setting up: dcaegen2-collectors-rcc
252 2020-01-13 15:12:55.747 CFY <restconfcollector> [rcc_k8s_8qm5me.create] Task succeeded 'k8splugin.create_for_platforms'
253 2020-01-13 15:12:55.747 CFY <restconfcollector> [rcc_k8s_8qm5me] Node instance created
254 2020-01-13 15:12:56.341 CFY <restconfcollector> [rcc_k8s_8qm5me] Configuring node instance: nothing to do
255 2020-01-13 15:12:56.341 CFY <restconfcollector> [rcc_k8s_8qm5me] Starting node instance
256 2020-01-13 15:12:56.341 CFY <restconfcollector> [rcc_k8s_8qm5me.start] Sending task 'k8splugin.create_and_start_container_for_platforms'
257 2020-01-13 15:12:57.559 LOG <restconfcollector> [rcc_k8s_8qm5me.start] INFO: Starting k8s deployment for dcaegen2-collectors-rcc, image: nexus3.onap.org:10001/onap/org.onap.dcaegen2.collectors.restconfcollector:1.1.1, env: {'CONSUL_HOST': u'consul-server.onap.svc.cluster.local', u'DMAAPHOST': u'message-router.onap.svc.cluster.local', 'CONFIG_BINDING_SERVICE': u'config_binding_service', u'CBS_HOST': u'config-binding-service.dcae.svc.cluster.local', u'DMAAPPORT': u'3904', u'CBS_PORT': u'10000', u'CONSUL_PORT': u'8500', u'DMAAPPUBTOPIC': u'unauthenticated.DCAE_RCC_OUTPUT'}, kwargs: {'readiness': {u'endpoint': u'/healthcheck', u'type': u'http', u'timeout': u'1s', u'interval': u'15s'}, 'tls_info': {}, 'replicas': 1, u'envs': {u'CONSUL_HOST': u'consul-server.onap.svc.cluster.local', u'DMAAPHOST': u'message-router.onap.svc.cluster.local', u'CONFIG_BINDING_SERVICE': u'config_binding_service', u'CBS_HOST': u'config-binding-service.dcae.svc.cluster.local', u'DMAAPPORT': u'3904', u'CBS_PORT': u'10000', u'CONSUL_PORT': u'8500', u'DMAAPPUBTOPIC': u'unauthenticated.DCAE_RCC_OUTPUT'}, 'labels': {'cfydeployment': u'restconfcollector', 'cfynodeinstance': u'rcc_k8s_8qm5me', 'cfynode': u'rcc_k8s'}, 'ctx': <cloudify.context.CloudifyContext object at 0x7fb63e5872d0>, 'always_pull_image': False, 'resource_config': {}, 'log_info': {u'log_directory': u'/opt/app/RCCollector/logs'}, u'ports': [u'8080:30416'], 'k8s_location': u'central'}
258 2020-01-13 15:12:58.275 LOG <restconfcollector> [rcc_k8s_8qm5me.start] INFO: Passing k8sconfig: {'tls': {u'cert_path': u'/opt/tls/shared', u'image': u'nexus3.onap.org:10001/onap/org.onap.dcaegen2.deployments.tls-init-container:1.0.3', u'ca_cert_configmap': u'dev-dcaegen2-dcae-bootstrap-dcae-cacert', u'component_ca_cert_path': u'/opt/dcae/cacert/cacert.pem'}, 'filebeat': {u'config_map': u'dcae-filebeat-configmap', u'config_path': u'/usr/share/filebeat/filebeat.yml', u'log_path': u'/var/log/onap', u'image': u'docker.elastic.co/beats/filebeat:5.5.0', u'data_path': u'/usr/share/filebeat/data', u'config_subpath': u'filebeat.yml'}, 'consul_dns_name': u'consul-server.onap', 'image_pull_secrets': [u'onap-docker-registry-key'], 'namespace': u'onap', 'consul_host': 'consul-server:8500', 'default_k8s_location': u'central'}
259 2020-01-13 15:12:58.275 LOG <restconfcollector> [rcc_k8s_8qm5me.start] INFO: k8s deployment initiated successfully for dcaegen2-collectors-rcc: {'services': ['dcaegen2-collectors-rcc', 'xdcaegen2-collectors-rcc'], 'namespace': u'onap', 'location': u'central', 'deployment': 'dep-dcaegen2-collectors-rcc'}
260 2020-01-13 15:12:58.275 LOG <restconfcollector> [rcc_k8s_8qm5me.start] INFO: Waiting up to 1800 secs for dcaegen2-collectors-rcc to become ready
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100261 2020-01-13 15:13:29.970 LOG <restconfcollector> [rcc_k8s_8qm5me.start] INFO: k8s deployment is ready for: dcaegen2-collectors-rcc
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100262 2020-01-13 15:13:30.550 CFY <restconfcollector> [rcc_k8s_8qm5me.start] Task succeeded 'k8splugin.create_and_start_container_for_platforms'
263 2020-01-13 15:13:30.550 CFY <restconfcollector> [rcc_k8s_8qm5me] Node instance started
264 2020-01-13 15:13:31.265 CFY <restconfcollector> 'install' workflow execution succeeded
265 Finished executing workflow install on deployment restconfcollector
266 * Run 'cfy events list -e 2ea4f906-536b-48b1-aa34-dd6b4baed255' to retrieve the execution's events/logs
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200267
268DCAE: VES mapper
269================
270
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100271Installation instructions: :doc:`VES Mapper <../../dcaegen2.git/docs/sections/services/mapper/index.rst>`_
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200272
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100273The following VES mapper blueprints will be used:
274- `k8s-vesmapper.yaml <https://gerrit.onap.org/r/gitweb?p=dcaegen2/services/mapper.git;a=blob_plain;f=UniversalVesAdapter/dpo/blueprints/k8s-vesmapper.yaml-template.yaml>`_
275
276IMPORTANT: Set the image to nexus3.onap.org:10001/onap/org.onap.dcaegen2.services.mapper.vesadapter.universalvesadaptor:1.0.0 in the blueprint
277
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200278DCAE: VES collector
279===================
280
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100281Configure the mapping of the VES event domain to the correct DMaaP topic in Consul: ves-statechange --> unauthenticated.CPE_AUTHENTICATION
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200282
Pérez Caparrós David5da05c52020-03-05 10:31:49 +01002831. Access Consul UI: `<http://<consul_server_ui>:30270/ui/#/dc1/services>`_
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200284
Pérez Caparrós David5da05c52020-03-05 10:31:49 +01002852. Modify the dcae-ves-collector configuration by adding a new VES domain to DMaaP topic mapping
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200286
287::
288
289 "ves-statechange": {"type": "message_router", "dmaap_info": {"topic_url": "http://message-router:3904/events/unauthenticated.CPE_AUTHENTICATION"}}
290
Pérez Caparrós David5da05c52020-03-05 10:31:49 +01002913. Click on UPDATE in order to apply the new configuration
292
293
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200294SDNC: BBS DGs (Directed Graphs)
295===============================
296
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100297Make sure that the following BBS DGs in the SDNC DGBuilder are in Active state
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200298
299::
300
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100301 bbs-access-connectivity-vnf-topology-operation-create-huawei
302 bbs-access-connectivity-vnf-topology-operation-delete-huawei
303 bbs-internet-profile-vnf-topology-operation-change-huawei
304 bbs-internet-profile-vnf-topology-operation-common-huawei
305 bbs-internet-profile-vnf-topology-operation-create-huawei
306 bbs-internet-profile-vnf-topology-operation-delete-huawei
307 validate-bbs-vnf-input-parameters
308
309DGBuilder URL: `<https://sdnc.api.simpledemo.onap.org:30203>`_
310
311Access SDN M&C DG
312=================
313Configure Access SDN M&C IP address in SDNC DG using dgbuilder. For instance:
314
315> GENERIC-RESOURCE-API: bbs-access-connectivity-vnf-topology-operation-create-huawei.json
316> GENERIC-RESOURCE-API: bbs-access-connectivity-vnf-topology-operation-delete-huawei.json
317
3181. Export the relevant DG
319
3202. Modify the IP address
321
3223. Import back the DG and Activate it
323
324DGBuilder URL: `<https://sdnc.api.simpledemo.onap.org:30203>`_
325
326Edge SDN M&C DG
327===============
328Configure Edge SDN M&C IP address in SDNC DG using dgbuilder. For instance:
329
330> GENERIC-RESOURCE-API: bbs-access-connectivity-vnf-topology-operation-common-huawei.json
331
3321. Export the relevant DG
333
3342. Modify the IP address
335
3363. Import back the DG and Activate it
337
338DGBuilder URL: `<https://sdnc.api.simpledemo.onap.org:30203>`_
339
340Add SSL certificate of the 3rd party controller into the SDNC trust store
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100341=========================================================================
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100342
343::
344
345 kubectl exec -ti dev-sdnc-sdnc-0 -n onap -- bash
346
347 openssl s_client -connect <IP_ADDRESS_EXT_CTRL>:<PORT>
348 # copy server certificate and paste in /tmp/<CA_CERT_NAME>.crt
349 sudo keytool -importcert -file /tmp/<CA_CERT_NAME>.crt -alias <CA_CERT_NAME>_key -keystore truststore.onap.client.jks -storepass adminadmin
350 keytool -list -keystore truststore.onap.client.jks -storepass adminadmin | grep <CA_CERT_NAME>
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200351
Pérez Caparrós David5d8a1df2020-03-05 12:00:00 +0100352
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200353Policy: BBS APEX policy
354=======================
355
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100356Deployment procedure of BBS APEX Policy (master, apex-pdp image v2.3+)
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200357
Pérez Caparrós David5da05c52020-03-05 10:31:49 +01003581. Make Sure APEX PDP is running and in Active state
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200359
360::
361
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100362 API: GET
363 URL: {{POLICY-PAP-URL}}/policy/pap/v1/pdps
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200364
Pérez Caparrós David5da05c52020-03-05 10:31:49 +01003652. Create the operational control loop APEX policy type
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200366
367::
368
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100369 API: POST
370 URL: {{POLICY-API-URL}}/policy/api/v1/policytypes
371
3723. Create BBS APEX policy
373
374::
375
376 API: POST
377 URL: {{POLICY-API-URL}}/policy/api/v1/policytypes/onap.policies.controlloop.operational.Apex/versions/1.0.0/policies
378
3794. Deploy BBS policy
380
381::
382
383 API: POST
384 URL: {{POLICY-PAP-URL}}/policy/pap/v1/pdps/deployments/batch
385
3865. Verify the deployment
387
388::
389
390 API: GET
391 URL: {{POLICY-API-URL}}/policy/api/v1/policytypes/onap.policies.controlloop.operational.Apex/versions/1.0.0/policies/
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200392
393Edge Services: vBNG+AAA+DHCP, Edge SDN M&C
394==========================================
395
396Installation and setup instructions: `Swisscom Edge SDN M&C and virtual BNG <https://wiki.onap.org/pages/viewpage.action?pageId=63996962>`_
397
398References
399==========
400
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100401Please refer to the following wiki page for further steps related to the BBS service design and instantiation:
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200402
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100403- `BBS Documentation <https://wiki.onap.org/pages/viewpage.action?pageId=75303137#BBSDocumentation(Frankfurt)-BBSServiceConfiguration>`_
Pérez Caparrós David, INI-INO-ECO-HCT6d986ee2019-06-28 14:07:44 +0200404
405Known Issues
406------------
407
Pérez Caparrós David5da05c52020-03-05 10:31:49 +0100408- E2E Service deletion workflow does not delete the PNF resource in AAI (`SO-2609 <https://jira.onap.org/browse/SO-2609>`_)
Pérez Caparrós David, INI-INO-ECO-HCTd30ccf82019-06-18 23:05:16 +0200409
410.. |image1| image:: files/bbs/BBS_arch_overview.png
411 :width: 6.5in
412.. |image2| image:: files/bbs/BBS_system_view.png
413 :width: 6.5in