Files
bluejay-infra/apps/intranet/intranet.yaml
Andrew Stoltz 020a806d08 intranet: v202604240108gpu — point indexer at BLUEJAY-WS GPU + FilePatterns fix
Two-part fix on top of the live Shared.Indexing rollout:

1. Image bump v202604240050corpus -> v202604240108gpu, rebuilt from
   FlowerCore.Intranet.Web@feat/shared-indexing-search (HEAD includes
   the FilePatterns array-merge fix in IntranetSearchOptions). At
   runtime each DocCorpusRoot now sees ONLY the patterns explicitly
   set in appsettings.json — notes-md gets ["*.md"], notes-html gets
   ["*.html"], no accidental cross-bleed.

2. New IntranetSearch__OllamaBaseUrl env var pointing at
   http://10.0.56.20:11434 (BLUEJAY-WS GPU, R9700 32GB VRAM). Verified
   reachable from the cluster and nomic-embed-text:latest is pulled.
   This is the workaround for memory feedback_pi5_nomic_embed_slow:
   edge1 Pi 5 takes ~189s per 32-chunk batch, projecting full notes-md
   indexing (5665 chunks) at ~9 hours; the GPU should land it in minutes.
   Edge1 stays the chat default; this env var only redirects the
   indexer's bulk embedding calls.

Image distributed to all three RKE2 nodes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 01:08:55 -05:00

124 lines
2.7 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
apiVersion: v1
kind: Namespace
metadata:
name: intranet
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: intranet-vector-store
namespace: intranet
spec:
accessModes:
- ReadWriteOnce
storageClassName: longhorn
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: intranet-web
namespace: intranet
labels:
app: intranet-web
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: intranet-web
template:
metadata:
labels:
app: intranet-web
spec:
containers:
- name: intranet-web
image: localhost/fc-intranet-web:v202604240108gpu
imagePullPolicy: Never
ports:
- containerPort: 5300
name: http
env:
- name: ASPNETCORE_ENVIRONMENT
value: Production
- name: ASPNETCORE_URLS
value: "http://+:5300"
# Bulk corpus indexing on edge1 Pi 5 takes ~6s/chunk × 5665 chunks
# ≈ 9 hours. BLUEJAY-WS GPU (R9700, 32GB VRAM) does the same work
# in minutes. Memory: feedback_pi5_nomic_embed_slow.
- name: IntranetSearch__OllamaBaseUrl
value: "http://10.0.56.20:11434"
resources:
requests:
memory: "256Mi"
cpu: "100m"
limits:
memory: "1Gi"
cpu: "1000m"
livenessProbe:
httpGet:
path: /health
port: 5300
initialDelaySeconds: 30
periodSeconds: 30
readinessProbe:
httpGet:
path: /health
port: 5300
initialDelaySeconds: 10
periodSeconds: 10
volumeMounts:
- name: vector-store
mountPath: /data
volumes:
- name: vector-store
persistentVolumeClaim:
claimName: intranet-vector-store
---
apiVersion: v1
kind: Service
metadata:
name: intranet-web
namespace: intranet
spec:
selector:
app: intranet-web
ports:
- port: 5300
targetPort: 5300
name: http
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: intranet-tls
namespace: intranet
spec:
secretName: intranet-tls
issuerRef:
name: step-ca-acme
kind: ClusterIssuer
dnsNames:
- intranet.iamworkin.lan
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: intranet
namespace: intranet
spec:
entryPoints:
- websecure
routes:
- match: Host(`intranet.iamworkin.lan`)
kind: Rule
services:
- name: intranet-web
port: 5300
tls:
secretName: intranet-tls