Table of Contents |
---|
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
...
Drawio | ||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
- sdnc-web = SDNR Web
- sdnc-dm = SDNR DevMgr
- sdnc-es = DB
Pod and service structure
...
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
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.
SDNRWT | SDNRDM | SDNRINIT | Meaning |
---|---|---|---|
false | x | x | (Default setting of flags). SDNR deactivated, but normal SDNC startup for other features, like oofpci. |
true | false | false | devicemanager + internal WEB Server. SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD |
true | true | false | devicemanager. SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD |
false | x | true | init container function. SDNRDBURL, SDNRDBUSERNAME, SDNRDBPASSWORD. Exit after configuration is done. |
true | true|false | true | execute 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 | ||||||
---|---|---|---|---|---|---|
|
Environment Variables and configuration files
The startup env parameters are used by properties of configuration files
env var | config file $ODL_HOME/etc/ | description |
---|---|---|
SDNRDBURL | dataprovider.properties | (mandatory) elasticsearch URL |
SDNRDBUSERNAME | dataprovider.properties | (optional) elasticsearch basicAuth Username |
SDNRDBPASSWORD | dataprovider.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 server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key SDNC-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 server System Jira serverId 4733707d-2057-3a0f-ae5e-4fd8aff50176 key SDNC-742 - introduce deployment.yaml for