Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This is an example of how to run an ONAP  sdnc-image with a minimal setup with SDN-R configuration with docker-compose. With this deployment you are able run the ODLUX gui within the SDNC which is then reachable on http://localhost:8080/odlux/index.html.

Prerequisites

  • vm (4 vCPU/ 4 gig RAM/ 40Gig HDD)
  • ubuntu (e.g. Ubuntu server 20.04.2 LTS)
  • docker
  • docker-compose (v2 recommended)

Deployment

So we have only 2 files in our directory. The docker-compose.yml itself and the .env file for storing all parameters we may like to change.

docker-compose.yml (minimal):

Code Block
version: '3'
services:services:
  sdnc-web:
    image: ${SDNC_WEB_IMAGE}
    container_name: sdnc-web
    ports:
      - 8080:8080
    environment:
      - SDNRHOST=sdnr
    depends_on:
      sdnr:
        condition: service_healthy
    healthcheck:
      test: "curl --silent --fail http://localhost:8080/ready > /dev/null || exit 1"
      interval: 10s
      timeout: 10s
      retries: 45
  sdnr:
    image: ${SDNC_IMAGE}
    container_name: sdnr
    ports:
      - 8181:8181
    environment:
      - A1_ADAPTER_NORTHBOUND=false
      - CCSDK_REPLICAS=0
      - DOMAIN=""
      - ENABLE_OAUTH=false
      - ENABLE_ODL_CLUSTER=false
      - ODL_ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - SDNC_REPLICAS=0
      - SDNRDBURL=http://sdnrdb:9200
      - SDNRDM=false
      - SDNRINIT=true
      - SDNRONLY=true
      - SDNRWT=true
      - SDNR_NETCONF_CALLHOME_ENABLED=true
      - JAVA_OPTS=-Xms256m -Xmx4g
    healthcheck:
      test: [ "CMD", "wget", "-nv", "-t1", "--spider", "http://localhost:8181/ready" ]
      interval: 10s
      timeout: 10s
      retries: 45
    depends_on:
      - sdnrdb
  sdnrdb:
    image: ${SDNRDB_IMAGE}
    container_name: sdnrdb
    environment:
      - discovery.type=single-node 
 

.env file:

Code Block
SDNC_IMAGE=nexus3.onap.org:10001/onap/sdnc-image:2.6.1
SDNC_WEB_IMAGE=nexus3.onap.org:10001/onap/sdnc-web-image:latest2.6.1
ADMIN_PASSWORD=admin
SDNRDB_IMAGE=docker.elastic.co/elasticsearch/elasticsearch-oss:7.9.3

The sdnc image version (here latest) you can choose from this list here: https://nexus3.onap.org:10001/v2/onap/sdnc-image/tags/list.

versionONAP release nameodl-base
2.8.XOslopotassium-sr2
2.7.XNew Delhi (no sdnc release)-
2.6.XMontrealargon-sr2
2.5.XLondonchlorine
2.4.XKohnsulfur
2.3.XJakartaphosphorus
2.2.XIstanbulsilicon-SR1
2.1.XHonolulualuminium-SR1/3
2.0.XGuilin

sodium-SR3/4

1.8.XFrankfurt
1.7.XEl Alto

So after you started this deployment with

Code Block
$ docker-compose up -d /docker compose up -d (depends on your docker compose version)

you should be able to access the ODLUX gui via you webbrowser on http://localhost:81818080/odlux/index.html. Login credentials are username "admin" and password the one you have in your .env file, so by default also "admin".


Troubleshooting

Problem: docker container is crashing

...

Code Block
$ curl -v http://localhost:8181/ready
$ curl -v http://localhost:8080/ready

both should return response code 200

...

If this does not return a 200 something is wrong on the sdnc or sdnc-web side so you have to follow step 2. If it returns 200 and odlux is still not reachable also go to step 2.

...

Code Block
featuresBoot = 3a3f1168-5df1-4fcc-a03f-6253067eaa1a,odl-restconf-all,odl-netconf-topology,odl-mdsal-all,odl-mdsal-apidocs,odl-daexim-all,odl-restconf-nb-rfc8040,sdnr-wt-feature-aggregator-devicemanager-base,sdnr-wt-feature-aggregator-devicemanager,sdnr-wt-helpserver-feature,sdnr-wt-odlux-core-feature,sdnr-wt-odlux-apps-feature
featuresBootAsynchronous=false

...