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
- SDNRDBURL: URL for database access.
SDNRWT | SDNRDM | Meaning |
---|---|---|
false | false | SDNR deactivated |
true | x | devicemanager + internal WEB Server |
false | true | devicemanager |
Enhancement/integration of oom/sdnc follows from left (low complexity) to right (highest complexity)
Step 1: SDNRDM enabled
- introduce config switch (see - SDNC-742Getting 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-742Getting issue details... STATUS )
- introduce deployment.yaml for
Environment Variables for Configuration
env var | config file | description |
---|---|---|
$SDNC_ESUSER | dataprovider.properties | elasticsearch basicAuth Username |
$SDNC_ESPASSWD | dataprovider.properties | 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