DSS
Decision Support Service
Overview
The Decision Support Service (DSS) contains one-or-more instances of OpenCDS, an open-source clinical decision support application modified by HLN for the purpose of RCKMS.
DSS utilizes authored Knowledge Modules, populated in container memory, to perform deterministic operations, such as constructing the reportability response.
Service Mesh
Interactions
Cloud Storage Buckets, which the DSS Preflight Container downloads all Knowledge Module binaries from as part of it's startup routine.
SS invokes DSS to perform deterministic operations for a valid eCR.
Placement
Workload should be deployed to both the authoring and reportability environments.
In the authoring environment, DSS is populated with both TEST and PRODUCTION Knowledge Modules, and runs both a testing-mode and production-mode OpenCDS instance. DSS is invoked by means of the Shared Service Submission Tool (SST) in CAT-RCKMS.
In the reportability environment, DSS is only populated with PRODUCTION Knowledge Modules, and only runs the production-mode OpenCDS instance. DSS is invoked by the Shared Service (SS) once it has a valid payload and identified the jurisdictions (and by extension, the Knowledge Modules) necessary for determining a reportability response.
For details on replica counts and resource configurations on a per-environment basis, see the Workload Definition section below.
Pod Specification
Attributes
Name
decision-support-service
Restart Policy
Always
Termination Grace Period (seconds)
90
Tolerations (optional for AIMS environments)
N/A
Containers
DSS ContainerDSS Preflight Container🚮GC Logging for JavaVolumes
This pod requires two volumes:
A volume named
dss-pf, of typeempty_dirwith themediumparameter left blank or set to an empty string (""). This is used by the DSS Preflight init container, which pulls all necessary Knowledge Modules from the designated cloud storage bucket to optimize first-run performance of DSS.A volume named
java-diag, of typeempty_dirwith themediumparameter left blank or set to an empty string (""). This is used by the Java GC Logging common sidecar container.
Workload Definition
Reportability Environment
Provision workload as a Kubernetes Deployment resource, with RollingUpdate strategy and the following attributes for nominal operation state:
Replicas
35
Minimum Ready Seconds
45
Maximum Surge
10
Maximum Unavailable
0
Authoring Environment
Provision workload as a Kubernetes Deployment resource, with RollingUpdate strategy and the following attributes for nominal operation state:
Replicas
1
Minimum Ready Seconds
45
Maximum Surge
1
Maximum Unavailable
0
Provision workload as a Kubernetes Deployment resource, with RollingUpdate strategy and the following attributes for nominal operation state:
Replicas
1
Minimum Ready Seconds
45
Maximum Surge
1
Maximum Unavailable
0
Workload Identity
A Kubernetes Service Account named decision-support-service should be associated with this workload, for bindings specified in containers.
Last updated