agentic-os/ai-core/litellm/deployment.yaml

84 lines
2.2 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: litellm
namespace: ai-core
labels:
app.kubernetes.io/name: litellm
app.kubernetes.io/component: llm-gateway
agentic-os.io/layer: ai-core
spec:
replicas: 1
revisionHistoryLimit: 3
selector:
matchLabels:
app.kubernetes.io/name: litellm
template:
metadata:
labels:
app.kubernetes.io/name: litellm
agentic-os.io/layer: ai-core
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "4000"
prometheus.io/path: "/metrics"
spec:
containers:
- name: litellm
image: ghcr.io/berriai/litellm:main-v1.55.10
args:
- "--config"
- "/etc/litellm/config.yaml"
ports:
- containerPort: 4000
name: http
env:
- name: LITELLM_MASTER_KEY
valueFrom:
secretKeyRef:
name: litellm-master
key: LITELLM_MASTER_KEY
- name: LITELLM_SALT_KEY
valueFrom:
secretKeyRef:
name: litellm-master
key: LITELLM_SALT_KEY
- name: DATABASE_URL
valueFrom:
secretKeyRef:
name: litellm-master
key: DATABASE_URL
- name: STORE_MODEL_IN_DB
value: "True"
livenessProbe:
httpGet:
path: /health
port: 4000
initialDelaySeconds: 30
periodSeconds: 20
timeoutSeconds: 5
failureThreshold: 3
readinessProbe:
httpGet:
path: /health
port: 4000
initialDelaySeconds: 10
periodSeconds: 10
timeoutSeconds: 3
failureThreshold: 3
volumeMounts:
- name: config
mountPath: /etc/litellm
readOnly: true
resources:
requests:
cpu: 250m
memory: 512Mi
limits:
cpu: "2"
memory: 2Gi
volumes:
- name: config
configMap:
name: litellm-config