Abstract
MLOps Financial Sentinel is an institutional-grade, event-driven Machine Learning platform built from bare compute on Oracle Cloud Infrastructure (OCI) and lightweight Kubernetes (
k3s). It orchestrates point-in-time market data lineage, distributed deep learning time-series forecasting (AutoGluon TimeSeries with Chronos, PatchTST, and DeepAR), Katib Bayesian AutoML gates, and scale-to-zero model serving for the Indonesia Stock Exchange (XIDX).
ποΈ End-to-End System Architecture
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 1. Point-in-Time Data Lineage & Replay Layer β
β β’ Ingestion: Daily XIDX EOD trades & market screen replays β
β β’ Deterministic Processing: Python uv + pyarrow + Calendar alignmentβ
β β’ S3 Object Storage: MinIO with RFC 8785 canonical SHA-256 digests β
β (Buckets: xidx-market-data, feature-store, model-registry) β
βββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
βΌ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 2. Declarative Orchestration & Tracking (Kubeflow Pipelines v2 SDK) β
β βββ Step 1: Snapshot Ingestion & Point-in-Time Cutoff Validation β
β βββ Step 2: Baseline Feature Transforms (ATR(14), Log-Returns) β
β βββ Step 3: AutoGluon TimeSeries Fit (Ensemble Deep Models) β
β β βββ Katib Controller (Bayesian Hyperparameter Search) β
β β βββ MLflow Server (Live WQL / CRPS Loss Curve Streams) β
β βββ Step 4: Held-Out Cold-Start Certification Check β
β βββ Step 5: Benchmark Evaluation Gate (Coverage >= 95%) β
βββββββββββββββββββββββββββββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
ββββββββββββ΄βββββββββββ
β Gate PASS: Cov >=95%β
βΌ βΌ (Gate FAIL -> Quarantine Alert)
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β 3. Production Serving, Automation & Drift Sentries β
β β’ Registry: Blessed model artifacts promoted to MLflow Registry β
β β’ Serving Engine: KServe InferenceService (v2 DataPlane protocol) β
β β’ Serverless Autoscaling: Knative Scale-to-Zero during idle hours β
β β’ Dispatch: Real-time candidate ranking via Discord Webhook alerts β
β β’ Drift Sentry: KS-test on volatility & Real-Time Quantile Breaches β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββπ Zero-to-One MLOps Article Series
This project is documented as an in-depth, multi-part engineering series detailing how each layer is built from first principles:
-
Zero-to-One MLOps (Part 1): Why Build by Hand and the 5-Phase Architecture Why toy tutorials and managed SaaS obscure fundamental systems physics, the 3 physical failure modes of distributed ML, and our 5-phase architectural blueprint.
-
Zero-to-One MLOps (Part 2): Hands-on Guide to k3s, MinIO Helm, and Traefik Ingress Step-by-step runbook for provisioning a production-grade MLOps base on bare Linux: k3s v1.31, MinIO S3 via Helm, dynamic Terraform manifest loaders, and Traefik HTTPS Ingress backed by Cloudflare.
-
Part 3: Point-in-Time Market Data Lineage & Cryptographic Manifests (Upcoming) Eliminating lookahead bias with point-in-time Parquet partitions, calendar-aware alignment, and RFC 8785 SHA-256 manifests on MinIO.
-
Part 4: Declarative Kubeflow Pipelines (KFP v2) & MLflow Experiment Tracking (Upcoming) Containerized multi-stage DAG orchestration, ephemeral artifact passing, and streaming live validation loss curves.
-
Part 5: Katib Bayesian AutoML & Automated Benchmark Certification Gates (Upcoming) Automated hyperparameter optimization, held-out cold-start qualification, and strict model promotion criteria.
-
Part 6: Production KServe Scale-to-Zero Serving & Statistical Drift Sentries (Upcoming) Serverless inference economics (saving 128 idle hours/week), Knative scale-to-zero, and Kolmogorov-Smirnov drift alerts.
π οΈ Technology Stack & Platform Components
| Subsystem | Technology | Responsibility in Sentinel |
|---|---|---|
| Compute & Host | Oracle Cloud (OCI) | VM.Standard.E5.Flex AMD EPYC Genoa (4 OCPU / 32GB RAM / 200GB NVMe). |
| Cluster Engine | k3s (v1.31 LTS) | Lightweight, CNCF-certified Kubernetes control plane with embedded SQLite. |
| Storage Engine | MinIO S3 via Helm | 50Gi NVMe PVC, S3 API data plane, and multi-bucket partitioning. |
| Ingress & TLS | Traefik + Cloudflare | Edge SSL termination, reverse proxy routing, and admin IP whitelisting. |
| Pipeline DAGs | Kubeflow Pipelines v2 | Declarative containerized pipeline graph orchestration. |
| Experiment Tracking | MLflow Tracking & Registry | Live metric curves, model parameter traces, and production tagging. |
| AutoML Optimizer | Katib | Distributed Bayesian hyperparameter optimization sweeps. |
| Inference Serving | KServe + Knative | Scale-to-zero serverless serving and v2 inference protocol. |
| ML Engine | AutoGluon TimeSeries | Multi-model deep ensembles (Chronos, PatchTST, DeepAR, TFT). |
| Drift Monitoring | Evidently AI + Discord | Real-time KS drift testing, quantile cone breaches, and alert webhooks. |
π― Engineering Invariants
- Storage Decoupled from Pod Lifecycles: Kubernetes pods are ephemeral worker units; state is permanent. All datasets, weights, and metrics flow directly to S3.
- Zero Lookahead Tolerance: Data ingested for training must strictly reflect information available at prediction time , enforced via cryptographic hash manifests.
- Automate from First Principles: Avoid vendor lock-in by sticking to open cloud-native standards (Kubernetes CRDs, S3 API, OCI container images).