安全更新:Docker 镜像从 v0.4.0-rc.1 起已修复 FFmpeg MagicYUV 解码器漏洞 CVE-2026-8461(高危),使用旧镜像的实例请立即升级。查看 CVE 公告
安全更新:v0.4.0-beta.3 已修复 WebDAV 请求可导致服务进程终止的问题,旧版本实例请尽快升级。查看安全公告
部署模式
[deployment] 声明当前实例采用单实例还是多 primary 集群部署。默认值保持单实例体验:
[deployment]profile = "single"可选值:
| 值 | 用途 |
|---|---|
single | 默认模式;适合 SQLite、memory cache、本地存储和单 primary reverse tunnel |
cluster | 多 primary 部署;启用共享依赖和拓扑兼容性检查 |
cluster 前置条件
Section titled “cluster 前置条件”[deployment]profile = "cluster"internal_endpoint = "http://primary-a:3000"internal_proxy_secret = "replace-with-at-least-32-random-characters"
[database]url = "postgres://aster:password@postgres/asterdrive"
[cache]backend = "redis"endpoint = "redis://redis:6379/0"
[config_sync]backend = "redis"endpoint = "redis://redis:6379/0"topic = "aster_drive.config_reload"internal_endpoint 必须是当前 primary 可从其他 primary 直接访问、且唯一指向该实例的绝对 http/https URL,不能带 query 或 fragment;不要填写所有实例共用的负载均衡地址。internal_proxy_secret 至少 32 个字符,并且必须在所有 primary 上保持一致。两项都留空表示 direct-only cluster;只配置其中一项会在静态配置检查阶段失败。
cluster profile 会在启动、/health/ready 和 aster_drive doctor 中检查共享数据库、Redis 和存储拓扑。single 和 cluster 的全新数据库都不会自动创建存储策略;创建管理员后都进入 needs_storage,但 cluster 必须在管理端创建所有 Primary 都能访问的共享策略并设为默认。
共享依赖、静态密钥、上传与 SFTP 限制、reverse tunnel owner routing、健康检查、migration 锁、任务 lease 和 Ingress 要求统一见负载均衡与多实例。上传模式的具体选择见上传与大文件。
环境变量写法:
ASTER__DEPLOYMENT__PROFILE=cluster需要在本地复现双 primary 的 reverse tunnel 路由和接管验收时,显式开启测试 feature:
cargo test --features multi-primary-e2e --test multi_primary cluster::reverse_tunnel_ -- --ignored