Skip to content

RAGSRV-Support Configuration

Overview

Ragsrv-Support is a companion service for Ragsrv.

Helm Chart Configuration

Basic Settings

Parameter Default Description
replicaCount 1 Number of support service pod replicas
image.repository gitea.basebox.health/basebox-distribution/ragsrv-support Container image repository
image.pullPolicy IfNotPresent Image pull policy
image.tag latest Image tag
fullnameOverride ragsrv-support Override the full name of the deployment

Service Configuration

Parameter Default Description
service.type ClusterIP Kubernetes service type
service.port 8000 Service port

Health Checks

Parameter Description
livenessProbe Basic shell command probe (/bin/true)
readinessProbe Basic shell command probe (/bin/true)

Environment Variables

Variable Default Description
API_KEY Required API key for authentication (should match RAGSRV)
HOST 0.0.0.0 Server host to bind to
SERVER_PORT 3001 Server port
LOG_LEVEL trace Logging level
API_KEY_HEADER X-API-KEY HTTP header name for API key
LOG_HEALTH_CHECKS false Log health check requests

OAuth Configuration (Optional)

Variable Description
REQUIRE_AUTH Enable/disable authentication
OAUTH_IDP_URL OAuth Identity Provider URL
OAUTH_IDP_AUD OAuth audience claim
OAUTH_JWKS_URL JWKS endpoint for token verification

Integration Variables

Variable Description
SUPPORT_SERVICE_URL Self-reference URL (for internal routing)
WEBHOOK_STATE_URL Webhook URL for state updates
OWNER_NAMESPACE_UUID Default namespace UUID
ALLOWED_IPS Comma-separated list of allowed IPs

GraphQL Configuration

Variable Default Description
GRAPHQL_ALLOW_INTROSPECTION true Allow GraphQL introspection
GRAPHQL_GRAPHIQL true Enable GraphiQL interface

Storage Configuration

Model Cache Volume

For persistent model storage:

volumes:
  - name: models-cache
    persistentVolumeClaim:
      claimName: ragsrv-support-models

volumeMounts:
  - name: models-cache
    mountPath: /models

extraObjects:
  ragsrv-support-models:
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: ragsrv-support-models
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 20Gi

Configuration Examples

Production Configuration

# values-production.yaml
replicaCount: 2

image:
  repository: gitea.basebox.health/basebox-distribution/ragsrv-support
  tag: "v1.2.3"
  pullPolicy: IfNotPresent

service:
  type: ClusterIP
  port: 8000

resources:
  requests:
    cpu: 4000m
    memory: 16Gi
    nvidia.com/gpu: 1
  limits:
    cpu: 8000m
    memory: 32Gi
    nvidia.com/gpu: 1

livenessProbe:
  httpGet:
    path: /health
    port: http
  initialDelaySeconds: 90
  periodSeconds: 30
  failureThreshold: 3

readinessProbe:
  httpGet:
    path: /health
    port: http
  initialDelaySeconds: 60
  periodSeconds: 10
  failureThreshold: 5

volumes:
  - name: models-cache
    persistentVolumeClaim:
      claimName: ragsrv-support-models
  - name: ragsrv-tmp
    persistentVolumeClaim:
      claimName: nfs-shared

volumeMounts:
  - name: models-cache
    mountPath: /models
  - name: ragsrv-tmp
    mountPath: /tmp/ragsrv

nodeSelector:
  nvidia.com/gpu: "true"

env:
  API_KEY: "<must-match-ragsrv-api-key>"
  LOG_LEVEL: "info"
  HOST: "0.0.0.0"
  SERVER_PORT: "8000"
  REQUIRE_AUTH: "true"
  LOG_HEALTH_CHECKS: "false"
  API_KEY_HEADER: "X-API-KEY"
  GRAPHQL_ALLOW_INTROSPECTION: "false"
  GRAPHQL_GRAPHIQL: "false"

extraObjects:
  ragsrv-support-models:
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: ragsrv-support-models
    spec:
      accessModes:
        - ReadWriteOnce
      storageClassName: fast-ssd
      resources:
        requests:
          storage: 50Gi

Installation

# Install ragsrv-support
helm install ragsrv-support oci://hub.basebox.ai/helm/ragsrv-support \
  --values values-production.yaml \
  --namespace basebox \
  --create-namespace

# Verify
kubectl get pods -n basebox -l app.kubernetes.io/name=ragsrv-support

Integration

RAGSRV-Support must be deployed alongside RAGSRV. Ensure the API_KEY matches between both services:

# ragsrv values
env:
  API_KEY: "same-secure-key"
  SUPPORT_SERVICE_URL: "http://ragsrv-support:8000"

# ragsrv-support values
env:
  API_KEY: "same-secure-key"