updating to match everything in my homelab.
This commit is contained in:
73
diagrams/dual-workflow-engines.mmd
Normal file
73
diagrams/dual-workflow-engines.mmd
Normal file
@@ -0,0 +1,73 @@
|
||||
```plaintext
|
||||
%% Dual Workflow Engine Strategy (ADR-0009)
|
||||
%% Flowchart showing Argo vs Kubeflow decision and integration
|
||||
|
||||
flowchart TB
|
||||
subgraph trigger["🎯 Workflow Triggers"]
|
||||
nats["NATS Event"]
|
||||
api["API Call"]
|
||||
schedule["Cron Schedule"]
|
||||
end
|
||||
|
||||
subgraph decision["❓ Which Engine?"]
|
||||
question{{"Workflow Type?"}}
|
||||
end
|
||||
|
||||
subgraph kubeflow["🔬 Kubeflow Pipelines"]
|
||||
direction TB
|
||||
kfp_train["ML Training<br/>✅ Component caching"]
|
||||
kfp_eval["Model Evaluation<br/>✅ Metric tracking"]
|
||||
kfp_exp["Experiment Comparison<br/>✅ MLflow integration"]
|
||||
end
|
||||
|
||||
subgraph argo["⚡ Argo Workflows"]
|
||||
direction TB
|
||||
argo_dag["Complex DAG<br/>✅ Advanced control flow"]
|
||||
argo_batch["Batch Processing<br/>✅ Parallelization"]
|
||||
argo_ingest["Document Ingestion<br/>✅ Simple steps"]
|
||||
end
|
||||
|
||||
subgraph hybrid["🔗 Hybrid Pattern"]
|
||||
direction TB
|
||||
argo_orch["Argo Orchestrates"]
|
||||
kfp_step["KFP via API"]
|
||||
argo_orch --> kfp_step
|
||||
end
|
||||
|
||||
subgraph integration["📡 Integration Layer"]
|
||||
direction TB
|
||||
events["Argo Events<br/>EventSource + Sensor"]
|
||||
end
|
||||
|
||||
%% Flow from triggers
|
||||
nats --> events
|
||||
api --> decision
|
||||
schedule --> events
|
||||
events --> decision
|
||||
|
||||
%% Decision branches
|
||||
question -->|"ML training<br/>with caching"| kubeflow
|
||||
question -->|"Complex DAG<br/>batch jobs"| argo
|
||||
question -->|"ML + complex<br/>orchestration"| hybrid
|
||||
|
||||
%% Kubeflow use cases
|
||||
kfp_train --> kfp_eval
|
||||
kfp_eval --> kfp_exp
|
||||
|
||||
%% Argo use cases
|
||||
argo_dag --> argo_batch
|
||||
argo_batch --> argo_ingest
|
||||
|
||||
classDef trigger fill:#f39c12,color:black
|
||||
classDef kubeflow fill:#4a90d9,color:white
|
||||
classDef argo fill:#ef6c00,color:white
|
||||
classDef hybrid fill:#8e44ad,color:white
|
||||
classDef integration fill:#27ae60,color:white
|
||||
|
||||
class nats,api,schedule trigger
|
||||
class kfp_train,kfp_eval,kfp_exp kubeflow
|
||||
class argo_dag,argo_batch,argo_ingest argo
|
||||
class argo_orch,kfp_step hybrid
|
||||
class events integration
|
||||
|
||||
```
|
||||
Reference in New Issue
Block a user