OUS Container
Summary
The OUS container deploys an embedded web service to fulfill requests from DSS pods.
Attributes
Type
Primary
Name
opencds-update-service
Image
opencds-update-service
Image Pull Policy
Always
Command
Arguments
Port
8080
Security Context
Allow Privilege Escalation:
false
Endpoints
External-to-Cluster
This container does not have any external-to-cluster exposed endpoints.
Internal
DSS Pod Registration
PUT /dss-init
Register a DSS Pod instance with it's unique UUID, usually populated with the Downward API's metadata.uid value.
Headers
Content-Type*
String
Must be set to application/json.
Request Body
environment*
String
TEST or PRODUCTION DSS instance.
instanceId*
String
Pod unique identifier.
Pre-Evaluate Hook
PUT /updatecheck
Provided the Pod unique instance ID and CDM/KM entities to check updates for.
Headers
Content-Type*
String
Must be application/json.
Liveness Probe
GET /__probes/liveness
Refer to the Kubernetes Documentation for more information on probes.
Readiness Probe
GET /__probes/readiness
Refer to the Kubernetes Documentation for more information on probes.
Environment Variables
All environment variables, unless otherwise indicated, are considered required.
General Variables
PORT
Controls which port the embedded web server is bound to.
Accepted Values
8080defaultAny numerical value. Should match the value of Port parameter in Attributes.
Document Database Connectivity
DOCUMENT_STORE_CONNECTION_URI Secret
Defines the URI by which to connect to the Document Store database.
As this includes the username and password, it should be mapped appropriately.
Accepted Values
localhost:27017/rckmsdefaultAny valid MongoDB connection URI string, without protocol prefix (e.g. do not include
mongodb://in the value)
Knowledge Module Storage Bucket Connectivity
CLOUD_STORAGE_BUCKET_NAME
Defines the bucket name/connection URI for the target Knowledge Module storage bucket resource.
Accepted Values
A valid platform connection URI or bucket name per SDK guidance. For Google Cloud Storage buckets, omit the
gs://prefix, and leverage GKE Workload Identity for permitting read and write operations. For AWS S3 buckets, ensure that anAWS_PROFILEor Pod service account workload identity is configured properly for read and write operations.
READ_URI_TTL
Defines the time-to-live for the single use, read-only, signed storage bucket URL that is returned to DSS as part of the new DSS/OUS polling workflow (replaces the prior preEvaluateHook workflow for maintaining CDM/KM synchronization across DSS pods).
Accepted Values
30000defaultAny value in milliseconds.
Logging Level Configuration
LOGGING_LEVEL Optional
This container is configured with Pino logging library, which gives engineers and operators more granular control over logging output in Node applications.
Accepted Values
debugVerbose logging. Useful for triaging.infodefault Standard logging output.warnOutputs log events classified aswarningsor higher.errorOutputs log events classified aserrorsor higher.fatalOnly fatal, typically uncaught exceptions will be logged.silentDisables all logging output.traceExtremely verbose logging.
Sentry Configuration
Probes
Liveness
Mode
HTTP (GET)
Arguments
Path:
/__/probes/livenessPort:
8080(must match container port)
Timings
Initial Delay of
15sPeriod of
90sTimeout of
5s
Thresholds
1Successes2Failures
Readiness
Mode
HTTP (GET)
Arguments
Path:
/__/probes/readinessPort:
8080(must match container port)
Timings
Initial Delay of
15sPeriod of
15sTimeout of
5s
Thresholds
1Successes2Failures
Startup
This container does not utilize startup probes.
Resources
250
1536
N/A
500
2304
N/A
Technology Stack
Container uses Alpine Linux base image from the official Node repository, targeting the Node 14 LTS variant. Deploys an ExpressJS web server for routing requests.
Volume Mounts
This container does not mount any volumes.
Workload Identity
This container requires a Pod Service Account with the following role(s):
Google Cloud Storage / AWS S3 Bucket Maintainer
Google Cloud Storage / AWS S3 Bucket Object Creator
Google Cloud Storage / AWS S3 Bucket Object Editor
MongoDB Client / AWS
DocumentDBClient
Code Owners
Last updated