realtime:AI 備份 API、公車查詢 API,優先回應使用者。scheduled:價格快照、社群內容擷取、流量統計。batch:大型資料分析、重新建立搜尋索引、AI 摘要。YuniKorn 的 queue 可以設定保證資源與最大資源;任務只能在指定的 leaf queue 執行,並能在同一層 queue 之間進行公平分配。 yunikorn.apache
概念性的設定如下:
partitions:
- name: default
placementrules:
- name: tag
value: application
create: true
queues:
- name: root
submitacl: "*"
queues:
- name: personal
submitacl: "*"
queues:
- name: realtime
resources:
guaranteed:
cpu: "500m"
memory: "512Mi"
max:
cpu: "2"
memory: "2Gi"
- name: scheduled
resources:
guaranteed:
cpu: "200m"
memory: "256Mi"
max:
cpu: "1"
memory: "1Gi"
- name: batch
resources:
guaranteed:
cpu: "100m"
memory: "128Mi"
max:
cpu: "500m"
memory: "512Mi"
實際套用前,請依照你安裝的 YuniKorn 版本確認設定格式與 ConfigMap 名稱。YuniKorn 的 queue 設定是由 scheduler 啟動時載入,且 queue 結構必須從單一 root 開始。 yunikorn.apache
另外,YAML 中的 Pod 必須指定:
spec:
schedulerName: yunikorn
並搭配可辨識的標籤:
metadata:
labels:
application: realtime