Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
...
CSIT/CCSDK Automation Issues
...
Ticket logged:
Jira Legacy | ||||||
---|---|---|---|---|---|---|
|
Where were we?
Using SDNC v1.8.1 & certs that we have in our repo we were able to use SDNC, mount nodes, & retrieve information using /rests & /restconf
...
Our integration (and manual) testing using SDN-C v.1.8.1 worked fine. At a high level the setup followed these steps
- pre-generated (?) zip (csit/plans/cps/sdnc/certs) extract to /opt/opendaylight/current/certs
...
- Install SDN-C v 1.8.1
- Mount a node
- Execute /rests and /restconf requests to nodes successfully either manual and directly to SND-C or using CPS services
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
# ============LICENSE_START======================================================= # Copyright (C) 2021 Nordix 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. # ============LICENSE_END========================================================= version: '3' services: mariadb: image: mariadb:10.1.11 ports: - "3306:3306" container_name: mariadb environment: - MYSQL_ROOT_PASSWORD=password hostname: mariadb.so.testlab.onap.org logging: driver: "json-file" options: max-size: "30m" max-file: "5" sdnc: image: onap/sdnc-image:1.8.1 container_name: sdnc volumes: - /etc/localtime:/etc/localtime:ro - ./certs:/opt/opendaylight/current/certs entrypoint: ["/opt/onap/sdnc/bin/startODL.sh"] ports: - "8282:8181" hostname: sdnc depends_on: - mariadb environment: - MYSQL_ROOT_PASSWORD=password - SDNC_CONFIG_DIR=/opt/onap/sdnc/data/properties - MYSQL_PASSWD=password - ODL_CERT_DIR=/opt/opendaylight/current/certs - ODL_ADMIN_USERNAME=admin - ODL_ADMIN_PASSWORD=Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U dns: - ${DNS_IP_ADDR-10.0.100.1} logging: driver: "json-file" options: max-size: "30m" max-file: "5" extra_hosts: - sdnctldb02:${LOCAL_IP} - sdnctldb01:${LOCAL_IP} - dbhost:${LOCAL_IP} |
Where are we now?
...
Installing pre-existing certs.This caused issues with SDN-C v. 2.2.3
...
- installation, so we removed this step[ (we assume SDN-C now includes its own and/or ODL certs)
Install SDN-C (output includes details on ODL certification installation)
Code Block language yml title SDNC Certificate Success collapse true 100% [========================================================================] Karaf started in 44s. Bundle stats: 433 active, 434 total Certificate installation in progress. Elapsed time - 60 secs. Waiting for 10 secs before checking the status.. Certificate installation in progress. Elapsed time - 70 secs. Waiting for 10 secs before checking the status.. Certificate installation in progress. Elapsed time - 80 secs. Waiting for 10 secs before checking the status.. Certificate installation in progress. Elapsed time - 90 secs. Waiting for 10 secs before checking the status.. Start cert provisioning. Log file: /opt/opendaylight/current/data/log/installCerts.log Certificate installation script completed execution Everything OK in Certificate Installation
- Mount Node
- RestConf queries work fine:
We can also query SDNC to return all nodes using http://localhost:8282/restconf/config/network-topology:network-topology/topology/topology-netconf
...
the nodes can also be retrieved using /restconf
...
...
/rest based request fail
http://localhost:8282/rests/data/network-topology:network-topology/topology=topology-netconf/node=DemoNode/yang-ext:mount/turing-machine:turing-machine we receive the following error:Code Block language yml title Postman Response linenumbers true { "errors": { "error": [ { "error-tag": "resource-denied-transport", "error-type": "protocol", "error-message": "Mount point does not exist." } ] } }
...
CPS CSIT test fail with same root cause
Info icon false title CSIT Error 09:49:08.028 [http-nio-8080-exec-8] ERROR o.o.c.n.d.e.DmiExceptionHandler - Exception occurred
org.springframework.web.client.HttpServerErrorException$ServiceUnavailable: 503 Service Unavailable: [{"errors":{"error":[{"error-tag":"resource-denied-transport","error-type":"protocol","error-message":"Mount point does not exist."}]}}]
Summary
Perhaps there is a change in the way /rests behaves that we are unfamilar unfamiliar with or perhaps our configuration is incorrect. To sum up: we can successfully start SDNC, mount a node, query nodes using /restconf but all /rests calls seem to fail. This could be an issue with certs or TLS.
Open Questions
# | Question/Issue | Notes/Decision | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Are we to generate certs for SDNC ourselves or can we rely on the certs used as part of SDNC itself? | As mentioned on https://docs.onap.org/projects/onap-sdnc-oam/en/istanbul/cert_installation.html certs folder is required as part of installing SDNC through docker-compose | ||||||||||
2 | Do we have some incorrect config in our docker-compose file?
|
Need mount to specific files, see https://gerrit.onap.org/r/c/cps/+/126945/14..15/csit/plans/cps/sdnc/docker-compose.yml Original guide used for sdnc docker-compose can be found here: Istanbul - Run. | ||||||||||||
3 | CPS has certs within our repo which were generated for previous versions of SDNC. If we mount the volume as such: volumes: 18:23:42 2022-02-07 18:09:57,310 - root - ERROR - Error while extracting zip file(s). Exiting Certificate Installation. This is how we installed and used certs for SDNC 1.8.1 so has the process of accessing the certs changed? | This was resolved by adding separate volume mounts for the files contained with the certs folder. Old:
New:
|