Security Context
global:
securityContext: {}
# runAsNonRoot: true
# runAsUser: 65534
# runAsGroup: 65534
# fsGroup: 65534
containerSecurityContext: {}
# readOnlyRootFilesystem: true
# Override global security context for specific components
dashboard:
securityContext: {}
containerSecurityContext: {}
recommender:
securityContext: {}
containerSecurityContext: {}
agent:
securityContext: {}
containerSecurityContext: {}
admissions:
securityContext: {}
containerSecurityContext: {}
updater:
securityContext: {}
containerSecurityContext: {}
prometheus:
server:
securityContext: {}
containerSecurityContext: {}
kube-state-metrics:
securityContext: {}
containerSecurityContext: {}
networkMonitor:
securityContext: {}
containerSecurityContext: {}
dcgmExporter:
securityContext: {}
containerSecurityContext: {}
injectors:
containerSecurityContext: {}Read-Only Root Filesystem
When you run ScaleOps with readOnlyRootFilesystem: true, the agent and dashboard
still need a writable /tmp directory at runtime for caching and internal processing.
To support this, ScaleOps automatically mounts a writable emptyDir volume at /tmp
on the agent and dashboard whenever the effective container security context has
readOnlyRootFilesystem: true.
Only disable the /tmp volume if that path is already writable through another
mechanism — such as your own mounted volume. Otherwise the agent and dashboard
will fail on a read-only root filesystem.
Configuring the /tmp volume
The /tmp volume is controlled by global.tmpVolume, with optional per-component
overrides on the agent and dashboard. You can disable it or customize the underlying
emptyDir spec (for example to set a sizeLimit or back it with Memory):
tmpVolume settings only take effect when readOnlyRootFilesystem: true is set.
global:
containerSecurityContext:
readOnlyRootFilesystem: true
tmpVolume:
# enabled: true # set to false to opt out of the writable /tmp volume
emptyDir:
sizeLimit: 1Gi # any emptyDir spec is supported (e.g. medium: Memory)
# Per-component overrides (agent and dashboard only)
agent:
tmpVolume:
enabled: false # opt this component out of the writable /tmp volume
dashboard:
tmpVolume:
emptyDir:
medium: Memory # override the emptyDir spec for a single component| Field | Description | Default |
|---|---|---|
global.tmpVolume.enabled | Only effective when readOnlyRootFilesystem: true. Whether to mount the writable /tmp volume. Set to false to opt out. | true |
global.tmpVolume.emptyDir | Only effective when readOnlyRootFilesystem: true. The emptyDir spec applied to the /tmp volume (e.g. sizeLimit, medium). | {} |
agent.tmpVolume / dashboard.tmpVolume | Per-component override of enabled and/or emptyDir, merged over the global value. Only effective when readOnlyRootFilesystem: true. | {} |