将策略推导出的集群目标与单 Worker 内存安全上限分离,避免失活实例的全部容量转移到单个 2 GiB Pod。 生产环境单实例上限和媒体物化并发设为 24;两实例正常时总容量由 16 提升至 48,后续可通过增加 Worker 节点继续扩展。新增 0093 迁移保存实例容量上限,并兼容滚动发布中的旧实例。 风险:更高媒体并发会增加 Worker 和节点内存压力,保留单实例 24 的硬边界并由持续监控观察 RSS、OOM、队列与节点余量。 验证:go test ./... -count=1;go vet ./...;真实 PostgreSQL 分配与故障转移测试;迁移安全检查;kubectl kustomize;gofmt -l;git diff --check。
40 lines
1.6 KiB
YAML
40 lines
1.6 KiB
YAML
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: easyai-ai-gateway-config
|
|
labels:
|
|
app.kubernetes.io/part-of: easyai-ai-gateway
|
|
data:
|
|
APP_ENV: production
|
|
HTTP_ADDR: ":8088"
|
|
IDENTITY_MODE: hybrid
|
|
IDENTITY_SECRET_STORE: kubernetes
|
|
IDENTITY_KUBERNETES_NAMESPACE: easyai
|
|
IDENTITY_KUBERNETES_SECRET_NAME: easyai-gateway-security-events
|
|
IDENTITY_SECURITY_EVENTS_HEARTBEAT_INTERVAL_SECONDS: "60"
|
|
IDENTITY_SECURITY_EVENTS_STALE_AFTER_SECONDS: "180"
|
|
IDENTITY_SECURITY_EVENTS_CLOCK_SKEW_SECONDS: "60"
|
|
SERVER_MAIN_BASE_URL: http://10.77.0.1:3001
|
|
TASK_PROGRESS_CALLBACK_ENABLED: "true"
|
|
TASK_PROGRESS_CALLBACK_URL: http://10.77.0.1:3001/internal/platform/task-progress-callbacks
|
|
TASK_PROGRESS_CALLBACK_TIMEOUT_MS: "5000"
|
|
TASK_PROGRESS_CALLBACK_MAX_ATTEMPTS: "10"
|
|
AI_GATEWAY_TASK_CLEANUP_ENABLED: "false"
|
|
AI_GATEWAY_TASK_RETENTION_DAYS: "30"
|
|
AI_GATEWAY_TASK_ANALYSIS_RETENTION_DAYS: "7"
|
|
AI_GATEWAY_TASK_CLEANUP_INTERVAL_SECONDS: "300"
|
|
AI_GATEWAY_TASK_CLEANUP_BATCH_SIZE: "1000"
|
|
CORS_ALLOWED_ORIGIN: https://ai.51easyai.com
|
|
AI_GATEWAY_PUBLIC_BASE_URL: https://ai.51easyai.com
|
|
AI_GATEWAY_WEB_BASE_URL: https://ai.51easyai.com
|
|
AI_GATEWAY_GENERATED_STORAGE_DIR: /app/data/static/generated
|
|
AI_GATEWAY_UPLOADED_STORAGE_DIR: /app/data/static/uploaded
|
|
AI_GATEWAY_LOCAL_TEMP_ASSET_TTL_HOURS: "24"
|
|
AI_GATEWAY_LOCAL_RESULT_TTL_HOURS: "24"
|
|
AI_GATEWAY_LOCAL_RESULT_MIN_FREE_BYTES: "10737418240"
|
|
AI_GATEWAY_LOCAL_RESULT_MAX_BYTES: "268435456"
|
|
AI_GATEWAY_LOCAL_RESULT_MAX_TASK_BYTES: "536870912"
|
|
AI_GATEWAY_ASYNC_QUEUE_WORKER_ENABLED: "true"
|
|
AI_GATEWAY_ASYNC_WORKER_HARD_LIMIT: "2048"
|
|
AI_GATEWAY_ASYNC_WORKER_REFRESH_INTERVAL_SECONDS: "5"
|