Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions deploy/openshift/deploy-to-openshift.sh
Original file line number Diff line number Diff line change
Expand Up @@ -264,6 +264,17 @@ spec:
EOF
success "Routes created"

# Deploy Jaeger for tracing
log "Deploying Jaeger for distributed tracing..."
if [[ -d "$SCRIPT_DIR/observability/jaeger" ]]; then
oc apply -f "$SCRIPT_DIR/observability/jaeger/deployment.yaml" -n "$NAMESPACE"
oc apply -f "$SCRIPT_DIR/observability/jaeger/service.yaml" -n "$NAMESPACE"
oc apply -f "$SCRIPT_DIR/observability/jaeger/route.yaml" -n "$NAMESPACE"
success "Jaeger deployed"
else
warn "Jaeger deployment files not found at $SCRIPT_DIR/observability/jaeger, skipping..."
fi

log "Waiting for deployments to be ready..."
log "This may take several minutes as models are downloaded..."

Expand Down
85 changes: 85 additions & 0 deletions deploy/openshift/observability/jaeger/deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: jaeger
namespace: vllm-semantic-router-system
labels:
app.kubernetes.io/name: jaeger
app.kubernetes.io/component: observability
app.kubernetes.io/part-of: semantic-router-stack
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: jaeger
app.kubernetes.io/component: observability
template:
metadata:
labels:
app.kubernetes.io/name: jaeger
app.kubernetes.io/component: observability
app.kubernetes.io/part-of: semantic-router-stack
spec:
securityContext:
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
containers:
- name: jaeger
image: jaegertracing/all-in-one:latest
ports:
- name: ui
containerPort: 16686
protocol: TCP
- name: otlp-grpc
containerPort: 4317
protocol: TCP
- name: otlp-http
containerPort: 4318
protocol: TCP
- name: jaeger-grpc
containerPort: 14250
protocol: TCP
- name: jaeger-thrift
containerPort: 14268
protocol: TCP
- name: zipkin
containerPort: 9411
protocol: TCP
env:
- name: COLLECTOR_OTLP_ENABLED
value: "true"
- name: SPAN_STORAGE_TYPE
value: "memory"
- name: MEMORY_MAX_TRACES
value: "10000"
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
seccompProfile:
type: RuntimeDefault
livenessProbe:
httpGet:
path: /
port: 16686
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 3
readinessProbe:
httpGet:
path: /
port: 16686
initialDelaySeconds: 10
periodSeconds: 5
timeoutSeconds: 5
failureThreshold: 3
resources:
requests:
memory: "512Mi"
cpu: "250m"
limits:
memory: "1Gi"
cpu: "500m"
20 changes: 20 additions & 0 deletions deploy/openshift/observability/jaeger/route.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
apiVersion: route.openshift.io/v1
kind: Route
metadata:
name: jaeger
namespace: vllm-semantic-router-system
labels:
app.kubernetes.io/name: jaeger
app.kubernetes.io/component: observability
app.kubernetes.io/part-of: semantic-router-stack
spec:
to:
kind: Service
name: jaeger
weight: 100
port:
targetPort: ui
tls:
termination: edge
insecureEdgeTerminationPolicy: Redirect
wildcardPolicy: None
39 changes: 39 additions & 0 deletions deploy/openshift/observability/jaeger/service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
apiVersion: v1
kind: Service
metadata:
name: jaeger
namespace: vllm-semantic-router-system
labels:
app.kubernetes.io/name: jaeger
app.kubernetes.io/component: observability
app.kubernetes.io/part-of: semantic-router-stack
spec:
type: ClusterIP
ports:
- name: ui
port: 16686
targetPort: 16686
protocol: TCP
- name: otlp-grpc
port: 4317
targetPort: 4317
protocol: TCP
- name: otlp-http
port: 4318
targetPort: 4318
protocol: TCP
- name: jaeger-grpc
port: 14250
targetPort: 14250
protocol: TCP
- name: jaeger-thrift
port: 14268
targetPort: 14268
protocol: TCP
- name: zipkin
port: 9411
targetPort: 9411
protocol: TCP
selector:
app.kubernetes.io/name: jaeger
app.kubernetes.io/component: observability
Loading