Versions Compared

Key

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

Table of Contents

Overview

Drawio
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNamesdnr-deploy-frankfurt
simpleViewerfalse
pageId64000196
diagramWidth551

Main components are

  • sdnc-dm = sdnc image in sdnrwt=true configuration
  • sdnc-web = SDNR Web sdnc-dm = SDNR DevMgr web image
  • sdnc-es = DBdb = elasticsearch and nginx images

Details: Disaggregated Architecture

Pod and service structure

Drawio
1000
bordertrue
viewerToolbartrue
fitWindowfalse
lboxtrue
diagramDisplayName
revision1018
diagramNamekubernets-structure
simpleViewerfalse
width
linksauto
tbstyletop
diagramWidth12081050

Deployment Options

Deployment options are configured within values.yaml via booleans.

  • SDNRWT

...

SDNRWT enabled

disaggregated sdnc-web cluster

...

SDNRWT enabled

disaggregated sdnc-web cluster

local elasticDB cluster

...

sdnrwt=true

sdnrwtweb=false

sdnrwt=true

...

sdnrwt=true

sdnrdb=sdnc-es

...

  • sdnc-web: scale=0
  • sdnc: scale=3 (default)
  • sdnc-es:scale=0

...

  • sdnc-web: scale=0
  • sdnc: scale=3 (default)
  • sdnc-es:scale=0

...

  • sdnc-web: scale=1|3
  • sdnc: scale=3 (default)
  • sdnc-es:scale=0

...

  • : 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: 

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keySDNC-1078

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:  SDNRWT SDNRDM enabled

  • introduce config switch (see
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keySDNC-742
    )
  • define elastic service for dataprovider:
    resources/config/conf/dataprovider.properties
  • mount dataprovider.properties to sdnc container

...

  • introduce config switch (see
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keySDNC-742
    )
  • introduce deployment.yaml for

Database Initialization

ElasticSearch database needs to be initialized by a script.

bin/es-init.sh

...