保留平台模型 RPM、TPM 和并发策略语义,增加 PostgreSQL 集群级租约、饱和候选重选和多平台自动负载,避免突发任务固定等待首个平台。\n\n新增 Worker 实时负载采样、自适应 active/heavy 容量、心跳与管理端指标,并扩展本地 acceptance runner,覆盖三 Worker、同模型三平台 2/4/6 并发和 48 个带图视频突发任务。\n\n验证:go test ./...、go vet ./...、PostgreSQL 跨 Store 集成测试、gofmt、bash -n、ShellCheck 及本地集群 provider-burst 验收通过;48/48 成功,无越限、重复提交、重复计费、重复回调或终态资源泄漏。
88 lines
2.6 KiB
YAML
88 lines
2.6 KiB
YAML
apiVersion: k3d.io/v1alpha5
|
|
kind: Simple
|
|
metadata:
|
|
name: easyai-acceptance-local
|
|
servers: 3
|
|
agents: 0
|
|
image: EASYAI_ACCEPTANCE_K3S_IMAGE
|
|
subnet: EASYAI_ACCEPTANCE_CLUSTER_SUBNET
|
|
kubeAPI:
|
|
host: 127.0.0.1
|
|
hostPort: "16550"
|
|
ports:
|
|
- port: 18443:31088
|
|
nodeFilters:
|
|
- server:0
|
|
- port: 19443:31089
|
|
nodeFilters:
|
|
- server:1
|
|
volumes:
|
|
- volume: EASYAI_ACCEPTANCE_MEDIA_DIR:/var/lib/easyai-acceptance/media
|
|
nodeFilters:
|
|
- server:*
|
|
- volume: easyai-acceptance-local-server-0-etcd:/var/lib/rancher/k3s/server/db
|
|
nodeFilters:
|
|
- server:0
|
|
- volume: easyai-acceptance-local-server-1-etcd:/var/lib/rancher/k3s/server/db
|
|
nodeFilters:
|
|
- server:1
|
|
- volume: easyai-acceptance-local-server-2-etcd:/var/lib/rancher/k3s/server/db
|
|
nodeFilters:
|
|
- server:2
|
|
- volume: easyai-acceptance-local-server-0-storage:/var/lib/rancher/k3s/storage
|
|
nodeFilters:
|
|
- server:0
|
|
- volume: easyai-acceptance-local-server-1-storage:/var/lib/rancher/k3s/storage
|
|
nodeFilters:
|
|
- server:1
|
|
options:
|
|
k3s:
|
|
extraArgs:
|
|
- arg: --disable=traefik
|
|
nodeFilters:
|
|
- server:*
|
|
- arg: --disable=servicelb
|
|
nodeFilters:
|
|
- server:*
|
|
- arg: --node-label=easyai.io/site=ningbo
|
|
nodeFilters:
|
|
- server:0
|
|
- arg: --node-label=easyai.io/site=hongkong
|
|
nodeFilters:
|
|
- server:1
|
|
- arg: --node-label=easyai.io/site=los-angeles
|
|
nodeFilters:
|
|
- server:2
|
|
- arg: --node-label=easyai.io/workload=true
|
|
nodeFilters:
|
|
- server:0
|
|
- server:1
|
|
- arg: --node-label=easyai.io/worker=true
|
|
nodeFilters:
|
|
- server:0
|
|
- server:1
|
|
- arg: --node-label=easyai.io/database=true
|
|
nodeFilters:
|
|
- server:0
|
|
- server:1
|
|
- arg: --node-taint=easyai.io/control-plane-only=true:NoSchedule
|
|
nodeFilters:
|
|
- server:2
|
|
- arg: --kubelet-arg=system-reserved=cpu=EASYAI_ACCEPTANCE_SITE_SYSTEM_CPU,memory=EASYAI_ACCEPTANCE_SITE_SYSTEM_MEMORY
|
|
nodeFilters:
|
|
- server:0
|
|
- server:1
|
|
- arg: --kubelet-arg=kube-reserved=cpu=250m,memory=512Mi
|
|
nodeFilters:
|
|
- server:0
|
|
- server:1
|
|
- arg: --kubelet-arg=system-reserved=cpu=EASYAI_ACCEPTANCE_WITNESS_SYSTEM_CPU,memory=EASYAI_ACCEPTANCE_WITNESS_SYSTEM_MEMORY
|
|
nodeFilters:
|
|
- server:2
|
|
- arg: --kubelet-arg=kube-reserved=cpu=250m,memory=512Mi
|
|
nodeFilters:
|
|
- server:2
|
|
- arg: --kubelet-arg=eviction-hard=memory.available<512Mi,nodefs.available<10%
|
|
nodeFilters:
|
|
- server:*
|