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
bordertrue
viewerToolbartrue
fitWindowfalse
diagramDisplayNamelboxtrue
diagramDisplayName
revision318
diagramNamekubernets-structure
simpleViewerfalse
width1000
linksauto
tbstyletop
diagramWidth11911050

Deployment Options

Default:  sdnrwt=false

  • sdnc-web: scale=0
  • sdnc-dm: scale=0
  • sdnc-es:scale=0

SDNR with external/central ES:

  • sdnc-web: scale=3
  • sdnc-dm: scale=3
  • sdnc-es:scale=0

SDNR with internal ES:

  • sdnc-web: scale=3
  • sdnc-dm: scale=3
  • sdnc-es:scale=3

Changes in OOM:

...

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: 

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

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
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keySDNC-742
    )
  • introduce deployment.yaml for