Overview

Main components are

  • sdnc-dm = sdnc image in sdnrwt=true configuration
  • sdnc-web = sdnc-web image
  • sdnc-db = elasticsearch and nginx images

Details: Disaggregated Architecture

Pod and service structure

Deployment Options

Deployment options are configured within values.yaml via booleans.

  • SDNRWT: devicemanager + internal WEB Server
  • SDNRDM: devicemanager relateded bundles, but not web related
  • SDNRINIT: Only database initialization than terminating. See: SDN-R Data Migration Tool
  • SDNRONLY: Do only start SDN-R related bundles, remove all other bundles from featureboot list.

Database configuration by SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD.

SDNRWTSDNRDMSDNRINITMeaning
falsexx(Default setting of flags). SDNR deactivated, but normal SDNC startup for other features, like oofpci.
truefalsefalsedevicemanager + internal WEB Server. SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD
truetruefalsedevicemanager. SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD
falsextrueinit container function. SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD. Exit after configuration is done.
truetrue|falsetrueexecute init function and start ODL according to description 

x: do not care

Initialization scripts

SDNC/OAM Container entrypoint: /opt/sdnc/bin/startODL.sh

The duplicated script should be removed from OOM. Issue for this is:  SDNC-1078 - Getting issue details... STATUS

Environment Variables and configuration files

The startup env parameters are used by properties of configuration files

env varconfig file $ODL_HOME/etc/ description
SDNRDBURLdataprovider.properties(mandatory) elasticsearch URL
SDNRDBUSERNAMEdataprovider.properties(optional) elasticsearch basicAuth Username
SDNRDBPASSWORDdataprovider.properties(optional) elasticsearch basicAuth Password

Database Initialization


ElasticSearch database needs to be initialized by a script.

bin/es-init.sh

OOM enhancement: define kubernetes Job to execute e-init.sh

Development steps

Enhancement/integration of oom/sdnc follows from left (low complexity) to right (highest complexity)

Step 1:  SDNRDM enabled

  • introduce config switch (see SDNC-742 - Getting issue details... STATUS )
  • define elastic service for dataprovider:
    resources/config/conf/dataprovider.properties
  • mount dataprovider.properties to sdnc container

Step 2:  Disaggregated sdnc-web cluster

  • add new service 'sdnc-web' into sdnc/templates/statefulset.yaml
    add new sdnc-web image?
    no persistent volumes are required

Step 3: provide local elastic DB cluster


Changes in OOM:

/kubernetes/sdnc/


  • introduce config switch (see SDNC-742 - Getting issue details... STATUS )
  • introduce deployment.yaml for
  • No labels

1 Comment

  1. Added for implementing new option into startODL within oom and [sdnc/oam]/installation/sdnc     SDNC-1042 - Getting issue details... STATUS