...
...
Credentials
...
SDNC API URL: HEAT http://sdnc:8282/apidoc/explorer/index.html, OOM: http://cluster_node_ip:30267/apidoc/explorer/index.html
credential: admin/Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
DGBuilder URL: http://{{sdnc_ip}}:3000/# with dguser/test123
...
Code Block | ||
---|---|---|
| ||
ubuntu@onap-sdnc:~$ sudo docker exec -it sdnc_controller_container bash root@d135452786ee:cd /optvar/opendaylightlog/currentonap/data/logsdnc root@d135452786ee:tail -f karaf.log |
...
Code Block |
---|
root@sb00-rancher:~/oom# kubectl -n onap edit StatefulSet/dev-sdnc-sdnc spec: podManagementPolicy: Parallel replicas: 1 ... - name: SDNC_REPLICAS value: "1" |
Steps to check DG
- http://{{
...
- cluster_ip}}:
...
- 30203/# with dguser/test123
...
Code Block | ||||
---|---|---|---|---|
| ||||
root@sb00-nfs:/opt/http_test_server/http_test_server/htdocs# kubectl get svc| grep 3000
appc-dgbuilder NodePort 10.43.133.199 <none> 3000:30228/TCP 19d
cds-ui NodePort 10.43.177.249 <none> 3000:30497/TCP 23d
sdnc-dgbuilder NodePort 10.43.14.68 <none> 3000:30203/TCP 23d |
- Open menu from GUI top right corner, and choose Import→Clipboard
- Copy DG json file from gerrit sdnc/oam/platform-logic/generic-resource-api/src/main/json, e.g. GENERIC-RESOURCE-API_dci-connects-network-topology-operation-activate.json
- In the DG graph, click on the left of DGSTART node to see more function on the DG, like validate XML, download XML, etc
- You can download XML and search for error message you see in sdnc_controller_container karaf log
DG Tutorial
Tutorial: vCPE Example : Using SLI-API for Prototyping
Tutorial: VoLTE Example: Adding REST Node
There is some update needed for the DG in the above tutorial for Dublin
- namespace change
- FileRecorder plugin path change
- RestapiCallNode path change
Here is the update DG for VoLTE Adding REST Node example
Code Block | ||||
---|---|---|---|---|
| ||||
[{"id":"1c91b4f1.e45473","type":"service-logic","name":"VOLTE-API 0.0.2-DEMO","module":"VOLTE-API","version":"0.0.2-DEMO","comments":"","xml":"<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd' module='VOLTE-API' version='0.0.2-DEMO'>","outputs":1,"x":317.1666564941406,"y":106.16667175292969,"z":"30ac5fe5.ab4d2","wires":[["a28ec6bd.3832d8"]]},{"id":"40983a09.90a524","type":"dgstart","name":"DGSTART","outputs":1,"x":111,"y":81,"z":"30ac5fe5.ab4d2","wires":[["1c91b4f1.e45473"]]},{"id":"a28ec6bd.3832d8","type":"method","name":"method volte-wan-activate","xml":"<method rpc='volte-wan-activate' mode='sync'>\n","comments":"","outputs":1,"x":181.16668701171875,"y":170.16665649414062,"z":"30ac5fe5.ab4d2","wires":[["e53e6cd.afc3f1"]]},{"id":"e53e6cd.afc3f1","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":389,"y":258,"z":"30ac5fe5.ab4d2","wires":[["cdeda8e3.1218f","9794fca5.9de488","cd5f5503.b9f128","19f372e1.31b345","8ff8c47.cd19b38","edd83200.432db8"]]},{"id":"cdeda8e3.1218f","type":"set","name":"set: order-status = Active","xml":"<set>\n\t<parameter name=\"service-data.oper-status.order-status\" value=\"Active\"/>","comments":"","x":597,"y":603,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"19f372e1.31b345","type":"returnSuccess","name":"return success","xml":"<return status='success'>\n\t<parameter name=\"error-code\" value=\"200\" />\n\t<parameter name='error-message' value=\"`'service-data.dcz-wanip=' + $service-data.dcz-wanip`\"/>","comments":"","x":569,"y":790,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"9794fca5.9de488","type":"set","name":"set: service-data = input","xml":"<set>\n\t<parameter name=\"service-data.\" value=\"volte-wan-activate.\" />","comments":"","x":596.8888854980469,"y":704.388916015625,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"cd5f5503.b9f128","type":"set","name":"Set final indicator to Y","xml":"<set>\n<parameter name=\"ack-final\" value=\"Y\"/>","comments":"","x":591.2063369750977,"y":748.1031608581543,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"8ff8c47.cd19b38","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"volte-wan-activate\"/>\n<parameter name=\"field3\" value=\"`$volte-wan-activate.dca-wanip`\"/>\n<parameter name=\"field4\" value=\"`$volte-wan-activate.dcz-wanip`\"/>\n<parameter name=\"field5\" value=\"`$volte-wan-activate.route_target`\"/>\n<parameter name=\"field6\" value=\"`$volte-wan-activate.route_distinguisher`\"/>","comments":"","outputs":1,"x":559,"y":301,"z":"30ac5fe5.ab4d2","wires":[[]]},{"id":"c2486391.d9417","type":"execute","name":"excute REST DC-Connect-Create-A","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n\t<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/l3-dci-connect.json'`\"/>\n\t<!-- \n\t<parameter name=\"restapiUrl\" value=\"`$prop.controller_A_RestApi.url+ '/v2.0/l3-dci-connects'`/>\n\t-->\n\t<parameter name=\"restapiUrl\" value=\"`$prop.controller_A_RestApi.url + '/l3-dci-connect.php'`\" />\n\t<parameter name=\"restapiUser\" value=\"`$prop.controller_A_RestApi.user`\" />\n\t<parameter name=\"restapiPassword\" value=\"`$prop.controller_A_RestApi.password`\"/>\n\t<parameter name=\"format\" value=\"xml\" />\n\t<parameter name=\"httpMethod\" value=\"post\" />\n\t<parameter name=\"responsePrefix\" value=\"restapi-result\" />\n\t\n\t","comments":"","outputs":1,"x":998,"y":727,"z":"30ac5fe5.ab4d2","wires":[[]]},{"id":"852c391a.a7d2b","type":"execute","name":"excute REST DC-Connect-Create-B","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n\t<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/l3-dci-connect.json'`\"/>\n\t<!-- \n\t<parameter name=\"restapiUrl\" value=\"`$prop.controller_A_RestApi.url+ '/v2.0/l3-dci-connects'`/>\n\t-->\n\t<parameter name=\"restapiUrl\" value=\"`$prop.controller_A_RestApi.url + '/l3-dci-connect.php'`\" />\n\t<parameter name=\"restapiUser\" value=\"`$prop.controller_B_RestApi.user`\"/>\n\t<parameter name=\"restapiPassword\" value=\"`$prop.controller_B_RestApi.password`\"/>\n\t<parameter name=\"format\" value=\"xml\" />\n\t<parameter name=\"httpMethod\" value=\"post\" />\n\t<parameter name=\"responsePrefix\" value=\"restapi-result\" />\n\t\n\t","comments":"","outputs":1,"x":998,"y":830,"z":"30ac5fe5.ab4d2","wires":[[]]},{"id":"edd83200.432db8","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":560,"y":370,"z":"30ac5fe5.ab4d2","wires":[["f3cc8b33.0516c","6a3b097e.b896d8","a67a46fc.946838","c2486391.d9417","fbd78797.a6d598","852c391a.a7d2b","de93e82.c1dca18"]]},{"id":"f3cc8b33.0516c","type":"set","name":"set A controller data (http emulator)","xml":"<set>\n<parameter name='prop.controller_A_RestApi.url' value='http://10.0.7.1:9000' />\n<!-- 8181 when doing localhost -->\n<parameter name=\"prop.restapi.templateDir\" value=\"/opt/onap/sdnc/data\"/>\n<parameter name=\"prop.controller_A_RestApi.user\" value=\"admin\"/>\n<parameter name=\"prop.controller_A_RestApi.password\" value=\"Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U\"/>\n\n","comments":"","x":994,"y":455,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"6a3b097e.b896d8","type":"set","name":"set WAN data (l3_vni=5001)","xml":"<set>\n<parameter name='device.wan.l3_vni' value='5001' />\n","comments":"","x":976,"y":556,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"a67a46fc.946838","type":"set","name":"set DC A network data","xml":"<set>\n<!-- example uses device. \n real adapter might use device.l3_connection. or something else -->\n<!-- ARRAY parameters could be comma separated lists or leaf lists depending on adaptor -->\n<parameter name='device.evpn_irts' value='1:5000'/>\n<parameter name='device.evpn_erts' value='1:5000'/>\n<parameter name='device.local_subnet' value='\\\"8a41319d-87cf-4cd6-8957-00000000000A\\\"'/>\n<parameter name='device.id' value='CDD702C3-7719-4FE6-A5AD-3A9C9E265309' />\n<parameter name='device.name' value='PODX-routerY' />\n<parameter name='device.description' value='VPC A connect VPC B' />\n<parameter name='device.router_id' value='CBB702C3-6789-1234-A5AD-00000000000A' />\n","comments":"","x":958,"y":675,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"fbd78797.a6d598","type":"set","name":"set DC B network data","xml":"<set>\n<!-- example uses device. \n real adapter might use device.l3_connection. or something else -->\n<!-- ARRAY parameters could be comma separated lists or leaf lists depending on adaptor -->\n<parameter name='device.evpn_irts' value='1:5001'/>\n<parameter name='device.evpn_erts' value='1:5001'/>\n<parameter name='device.local_subnet' value='\\\"8a41319d-87cf-4cd6-8957-00000000000B\\\"'/>\n<parameter name='device.id' value='CDD702C3-7719-4FE6-A5AD-3A9C9E265309' />\n<parameter name='device.name' value='PODW-routerZ' />\n<parameter name='device.description' value='VPC B connect VPC A' />\n<parameter name='device.router_id' value='CBB702C3-6789-1234-A5AD-00000000000B' />\n","comments":"","x":955,"y":782,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"d5a70b78.3a1","type":"comment","name":"Test block to describe logic - template uses \"device.\" for parameters","info":"","comments":"","x":1054,"y":378,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"a5a8ce82.7fa0d","type":"comment","name":"DC Set Nodes should map from Input parameters","info":"","comments":"","x":1043,"y":618,"z":"30ac5fe5.ab4d2","wires":[]},{"id":"de93e82.c1dca18","type":"set","name":"set B controller data (http emulator)","xml":"<set>\n<parameter name='prop.controller_B_RestApi.url' value='http://10.0.7.1:9000' />\n<!-- 8181 when doing localhost -->\n<parameter name=\"prop.restapi.templateDir\" value=\"/opt/onap/sdnc/data\"/>\n<parameter name=\"prop.controller_B_RestApi.user\" value=\"admin\"/>\n<parameter name=\"prop.controller_B_RestApi.password\" value=\"Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U\"/>\n\n","comments":"","x":998,"y":503,"z":"30ac5fe5.ab4d2","wires":[]}] |
DB operation
Code Block |
---|
mysql> show tables; mysql> show columns from SERVICE_MODEL; mysql> select name, service_uuid, invariant_uuid from SERVICE_MODEL; +------------------------+--------------------------------------+--------------------------------------+ | name | service_uuid | invariant_uuid | +------------------------+--------------------------------------+--------------------------------------+ | NULL | 0 | NULL | | vBNG_0202 | 00e50cbd-ef0f-4b28-821e-f2b583752dd3 | dbf9288d-18ef-4d28-82cb-29373028f367 | | BK-012317-UUID-Service | 0a92fd9c-baab-4c03-b4e2-827e2cb9bcc7 | 083b57cd-4b76-4924-a64c-610445528063 | | vEPC | 2c02b479-905f-4b6d-bd03-a2c8a8cdfae4 | 6dd6969c-b75c-4146-8a96-0cb9c0af19a7 | | VoLTE e2e Service | 96a01eb8-1538-40a6-a9ab-0f6bf8e0d877 | e9b5654e-6627-4590-9a54-a39b4d85955e | | vIMS | de3dc33a-799a-48fe-aef2-9a7e93631a4c | 970177ab-40d9-4ab7-9a9b-aa2d08c9ca91 | +------------------------+--------------------------------------+--------------------------------------+ |
...
Code Block |
---|
root@dev-appc-appc-0:/opt/opendaylight/current/data/log# /opt/opendaylight/bin/client Logging in as karaf ________ ________ .__ .__ .__ __ \_____ \ ______ ____ ____ \______ \ _____ ___.__.| | |__| ____ | |___/ |_ / | \\____ \_/ __ \ / \ | | \\__ \< | || | | |/ ___\| | \ __\ / | \ |_> > ___/| | \| ` \/ __ \\___ || |_| / /_/ > Y \ | \_______ / __/ \___ >___| /_______ (____ / ____||____/__\___ >/|___| /_______ (____ / | \/|__| \/ \/ \/ \/\/ /____||____/__\___ /|___| /__| \/|__| \/ \/ \/ \/\/ /_____/ \/ Hit '<tab>' for a list of available commands and '[cmd] --help' for help on a specific command. Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown OpenDaylight. opendaylight-user@root>log opendaylight-user@root>get Logger | Level ------------------------------------+------ ROOT | INFO org.apache.aries.spifly | WARN org.apache.karaf.jaas.modules.audit | INFO opendaylight-user@root>set DEBUG org.onap opendaylight-user@root>_/ \/ Hit '<tab>' for a list of available commands and '[cmd] --help' for help on a specific command. Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown OpenDaylight. opendaylight-user@root>log opendaylight-user@root>get Logger | Level ------------------------------------+------ ROOT | INFO org.apache.aries.spifly | WARN org.apache.karaf.jaas.modules.audit | INFO opendaylight-user@root>set DEBUG org.onap opendaylight-user@root> |
List karaf features
Code Block | ||||
---|---|---|---|---|
| ||||
bash-4.4# /opt/opendaylight/bin/client
opendaylight-user@root> feature:list
Name │ Version │ Required │ State │ Repository │ Description
────────────────────────────────────────────────────────────────┼──────────────────┼──────────┼─────────────┼─────────────────────────────────────────────────────────────────┼───────────────────────────────────────────────────
odl-lispflowmapping-mappingservice-shell │ 1.8.1 │ │ Uninstalled │ odl-lispflowmapping-mappingservice-shell │ ODL :: lispflowmapping :: odl-lispflowmapping-map
|
Preconfiguration for VoLTE SDNC: ONAP VoLTE SDNC Integration Test.docxVoLTE SDNC log: volte_sdnc.log