跳转至

Legate Central 命令行参数

legate 启动 Central。精确参数以所部署镜像的 --help 输出为准:

docker run --rm ghcr.io/bit-fortress/legate:edge --help

Legate 没有配置文件或环境变量自动映射层,部署系统应把 secret 文件和 flag 显式注入。生产环境查询参数和部署时必须使用同一个精确镜像标签。

基础与状态依赖

参数 默认值 说明
--listen :8080 HTTP 监听地址
--database-dsn 空,必填 PostgreSQL DSN
--redis-addr 共享 circuit breaker 状态;空时使用内存
--redis-prefix legate Redis key prefix
--instance-id 主机名 Central telemetry 的稳定实例 ID

--instance-id 与 telemetry state dir 应跨重启保持稳定;同一 state dir 不能被两个进程同时使用。

管理员认证

参数 说明
--admin-auth-mode 必填:disableddev-bootstrapoidc
--admin-dev-bootstrap-token dev-bootstrap 接受的 Bearer Token
--admin-dev-identities-file 额外开发身份 JSON
--admin-public-url OIDC callback 使用的公开 origin
--admin-oidc-providers-file OIDC Provider JSON
--admin-allow-insecure-local-oidc 仅允许回环/localhost HTTP OIDC 开发
--admin-bootstrap-provider-id 一次性首位平台管理员 Provider
--admin-bootstrap-subject 精确 OIDC subject;与 email 二选一
--admin-bootstrap-email 精确 verified email;与 subject 二选一
--admin-cors-origin 可重复的管理 API 浏览器 origin,只适用于非 Cookie credential
--admin-trusted-proxy-cidr 可重复,允许提供 X-Forwarded-For 的直接代理 CIDR
--admin-recovery-user-id 恢复会话目标的现有平台管理员 ID
--admin-recovery-token-file 恢复 Token 文件
--admin-recovery-source-cidr 可重复,允许使用恢复认证的最终客户端 CIDR

OIDC 详细约束见配置 OIDC

文本流预算

参数 默认值
--text-stream-max-upstream-bytes 67,108,864
--text-stream-max-protocol-bytes 67,108,864
--text-stream-max-events 1,000,000
--text-stream-idle-timeout 2m
--text-stream-max-duration 1h
--text-stream-max-active 32
--text-stream-max-active-per-workspace 8
--text-stream-max-retained-bytes 3,221,225,472
--text-stream-max-retained-bytes-per-workspace 805,306,368

这些限制同时约束每条流、整个进程与单个 Workspace。达到 admission 预算时请求返回 capacity_error,不会惩罚 Endpoint breaker。

Central 遥测预算

参数 默认值
--telemetry-state-dir /var/lib/legate/telemetry
--telemetry-max-workspaces 1,024
--telemetry-global-events 100,000
--telemetry-global-bytes 268,435,456
--telemetry-global-active-requests 50,000
--telemetry-workspace-events 10,000
--telemetry-workspace-bytes 33,554,432
--telemetry-workspace-active-requests 5,000
--telemetry-batch-events 1,000
--telemetry-batch-bytes 4,194,304
--telemetry-in-flight-batches 8
--telemetry-worker-concurrency 4
--telemetry-ingestion-write-concurrency 8
--telemetry-ingestion-parse-concurrency 16
--telemetry-drain-timeout 10s

预算之间有校验关系:Workspace 不得超过 global,batch 不得超过 Workspace,多 Workspace 需要至少两个 in-flight batch slots。state dir 必须是 owner-only 可写目录。

启动示例

本机无认证开发:

legate \
  --listen=127.0.0.1:8080 \
  --database-dsn='postgres://legate:[email protected]:5432/legate?sslmode=disable' \
  --admin-auth-mode=disabled \
  --instance-id=local-central

OIDC + Redis:

legate \
  --listen=:8080 \
  --database-dsn='postgres://legate:password@postgres:5432/legate?sslmode=require' \
  --redis-addr=redis:6379 \
  --redis-prefix=legate-prod \
  --instance-id=central-a \
  --admin-auth-mode=oidc \
  --admin-public-url=https://legate.example.com \
  --admin-oidc-providers-file=/etc/legate/admin-oidc.json

启动会先完成参数、OIDC、数据库、Driver/WASM runtime、telemetry state 和 HTTP 依赖校验。任何必填项、预算关系或安全边界无效都会在监听前退出。