集群与系统
集群、节点组与节点,配置版本与金丝雀,待处理事项,网站启停,区域,服务账号,审计日志与系统设置。
全局规则 与 IP 名单 见 规则、IP 名单与 GeoIP,封禁 见 封禁,DNS 调度 与 告警 见 DNS 调度与告警,区域探针、调度地址与智能调度规则见 区域探针与智能调度;侧边栏全部页面见 控制台导航。
集群与节点
页面:集群与节点(/clusters),上方的「集群 | 区域」切换集群与 区域(/clusters?view=regions)。集群视图的页面操作为 新建集群 与 添加节点,其下是当前集群的概要。有多个集群时用 选择集群 切换。集群还没有节点时只显示节点区块(含 添加节点);有节点后显示概要与各页签。概览 页签是节点组、节点、配置金丝雀、缓存区、节点升级与配置版本;DNS 页签是该集群的 DNS 绑定,见 绑定集群;智能调度 页签是该集群的调度规则与预览,见 智能调度规则;端口池 页签(/clusters?tab=ports)是该集群 L4 应用可用的端口区间,见 设置端口池。
| 概要 | 内容 |
|---|---|
| 在线节点 | 在线节点数 / 节点总数 |
| 网站 | 集群的网站数 |
| 最新版本 | 集群最新的配置版本,如 #12 · 7/8 已应用:8 为在线的已启用节点数,7 为其中运行目标版本的节点数。金丝雀进行中时,金丝雀节点的目标是候选版本,其他节点是稳定版本,见 配置金丝雀 |
集群
集群是一组节点与分配到这些节点的网站;每个集群有独立的配置版本序列。
| 操作 | 说明 |
|---|---|
| 新建集群 | 集群名称:小写字母、数字与 -,以字母或数字开头,最多 64 字符,不能重复;描述:最多 500 字符。创建时生成默认节点组 default 并发布版本 #1 |
| 编辑集群 | 修改名称与描述 |
| 删除 | 仅当集群没有节点和网站,且 DNS 不是 自动、已写入的 DNS 记录清理完成时允许 |
| 规则 | 说明 |
|---|---|
| 网站所在集群 | 有多个集群时,新建网站的表单可选择「集群」(默认最早创建的集群);/api/v1 用 clusterId 指定。网站创建后不能更换集群 |
| 容量 | 一个集群最多发布 512 个已启用的网站,最多有 256 个 L4 应用 |
| 缓存区 | 概览 的「缓存区」卡片设置每个节点缓存区的容量与不活跃回收时间,见缓存区 |
节点组
| 操作 | 说明 |
|---|---|
| 新建节点组 | 节点组:名称,最多 64 字符,集群内唯一;区域:可选,见 区域;金丝雀组:见 配置金丝雀 |
| 编辑节点组 | 修改名称、区域与 金丝雀组 |
| 删除 | 默认节点组(标记 默认)不能删除;删除其他节点组时,其中节点移回默认节点组 |
节点组用作 DNS 调度 的线路与备用节点组、节点升级的试运行组与配置金丝雀的金丝雀组。节点组的区域也是其中节点 兼任探针 时所在的区域。
添加节点
添加节点 对话框打开即生成一次性安装命令:集群的默认节点组,有效期 1 小时,不带节点名称。选项 显示下列字段,重新生成 按所填的值生成新的命令。
| 字段 | 说明 |
|---|---|
| 节点名称 | 可选,最多 64 字符 |
| 节点组 | 默认为集群的默认节点组;集群只有一个节点组时不显示 |
| 有效期 | 15 分钟、1 小时(默认)、24 小时;API 允许 5 分钟至 7 天 |
对话框显示 安装命令(带剩余时间,仅显示一次)、地址提醒与一行节点通道连接检查(未通过时带「修改」链接,打开 节点通道),其下为 注册进度。CA 指纹在命令的 --ca-sha256 中,也显示在 系统信息。每次打开对话框都生成新的 token,关闭后命令不再显示。token 以 ewt_ 开头,单次有效;数据库保存其 SHA-256 与前缀,不保存明文。地址提醒、连接检查与安装流程见 接入节点。
节点
| 列 | 内容 |
|---|---|
| 节点 | 名称与主机名 |
| 状态 | 在线(45 秒内有心跳)、离线、已停用;注册后还没有连接过节点通道的节点为 等待心跳(灰色);在线但节点报告数据面不健康时另标 数据面异常;节点通道拒绝离线节点的证书时标 证书已过期 或 证书被拒绝 |
| 节点组 | 节点组与区域 |
| IP | 节点最近一次心跳上报的单播地址(每次心跳替换,最多 64 个);DNS 与探针使用的地址见 调度地址与备用 IP;DNS 没有可用地址时标 无公网地址,见 没有公网地址的节点 |
| 指标 | 节点上报的 CPU 与内存使用率(metrics-v1);没有指标时为「—」 |
| 已应用版本 | 节点已应用的配置版本;标记 已同步(达到该节点的目标版本)、落后、应用失败(悬停显示原因)或 需要升级;在线但还没有应用任何配置的节点标 待应用配置 |
| Agent / 引擎 | agent 版本、引擎及其版本 |
| 心跳 | 最近一次心跳时间 |
| 操作 | 说明 |
|---|---|
| 详情 | 也可点击节点名称(/clusters?node=<节点 ID>):指标、数据面(正常 / 数据面异常)、连接来源地址、证书到期(客户端证书;不足 10 天标 即将到期,节点通常在此之前已自动续期;过期或节点通道拒绝了它时标 证书已过期 或 证书被拒绝)、兼任探针、调度地址(编辑地址)与 探测结果,见 区域探针与智能调度;缓存 显示缓存用量并可单独设置本节点的容量,见缓存区 |
| 改名 | 最多 64 字符 |
| 移动到节点组 | 仅限同一集群的节点组 |
| 停用 / 启用 | 停用后节点通道拒绝该节点(证书续期除外,重新启用时证书仍有效),节点继续按最后一次成功应用的配置服务;其未完成的刷新预热任务标记为 已跳过,重新启用并拉取任务时,为这些刷新涉及的网站各补发一次整站刷新 |
| 删除 | 吊销节点证书;节点须用新的安装命令重新注册 |
节点升级
节点升级 区块按节点组试运行并推进签名升级,见 节点升级。
配置金丝雀
配置金丝雀 卡片按集群设置策略,并显示当前发布的状态。默认关闭。
| 策略字段 | 取值 | 默认值 |
|---|---|---|
| 启用金丝雀 | 开 / 关 | 关 |
| 观察窗口(分钟) | 1–60 | 5 |
| 通过后自动推进 | 开:窗口通过后推进到全部节点;关:等待 立即推进到全部 | 开 |
| 5xx 比例倍数(相对基线) | 1–100 | 2 |
| 5xx 比例下限(%) | 0.1–100 | 5 |
| 最小请求数 | 1–1000000 | 100 |
| 项目 | 行为 |
|---|---|
| 金丝雀节点 | 窗口开始时在线、属于 金丝雀组 的已启用节点。窗口结束前不变:期间离开金丝雀组的节点仍是金丝雀节点,新加入的节点等下一个窗口 |
| 目标版本 | 金丝雀节点取候选版本,其他节点取稳定版本;节点只会拿到自己的目标版本,不会拿到更新的版本 |
| DNS | 每个节点按自己的目标版本判断;窗口期间非金丝雀节点不被摘除 |
| 回滚条件(窗口内任一条) | 金丝雀节点应用失败;数据面不健康或离线;金丝雀节点的 5xx 比例超过 max(非金丝雀节点的 5xx 比例 × 倍数, 下限),且金丝雀请求数不少于最小请求数;窗口结束后超过一个窗口仍未应用 |
| 回滚动作 | 以稳定版本的内容发布一个新版本,所有节点回到该内容,但不带回窗口内停用、删除的网站和移除的域名,缓存代数与证书取当前值;写审计(系统身份),并向开启 接收所有告警 的告警渠道发送「配置金丝雀发布已回滚」 |
| 回滚后 | 集群停在稳定版本。数据库里的改动不撤销,之后的发布仍然先经过金丝雀 |
| 窗口期间有新发布 | 新候选版本取代旧候选版本,窗口的开始时间和金丝雀节点不变 |
| 没有在线的金丝雀节点 | 直接发布到全部节点,写审计 cluster.rollout_direct 并发送告警,不阻塞发布 |
| 直接到全部节点的变更 | ACME HTTP-01 挑战;停用、删除网站与移除域名;停用、删除 L4 应用;调低访问日志采样率;证书续签;挑战密钥轮换;网站与全局的 Under Attack。这些变更同时进入稳定版本,其余改动仍在候选版本里等待窗口。配置版本 的 回滚 也直接到全部节点 |
| 关闭策略 | 正在进行的候选版本推进到全部节点 |
| 状态 | 含义 |
|---|---|
| 未进行 | 没有候选版本 |
| 金丝雀中 | 候选版本在金丝雀节点上观察 |
| 等待推进 | 窗口已通过,等待手动推进 |
| 已推进 | 候选版本已是全部节点的版本 |
| 已回滚 | 金丝雀节点已回到稳定版本 |
| 已直接发布 | 没有在线的金丝雀节点,变更已直接发布 |
发布进行中时,卡片另显示:
| 项目 | 内容 |
|---|---|
| 改动 | 候选版本相对稳定版本 新增、修改、移除 的网站(按名称);网站没有变化时为「网站无变化」 |
| 原因 | 稳定版本之后各版本的发布原因,不重复 |
| 窗口结束 | 倒计时;悬停显示具体时间 |
立即推进到全部(写审计 cluster.rollout_promote)与 中止并回滚(写审计 cluster.rollout_abort)都需要确认,只在 金丝雀中 与 等待推进 时可用。策略修改写审计 cluster.rollout_policy_update。
配置版本
每次影响节点配置的变更在集群内发布一个新版本。配置版本 表列出最近 20 个版本:版本、内容哈希、网站、原因、时间。每个集群保留最近 200 个版本;金丝雀的稳定版本与候选版本不清理。只为 ACME HTTP-01 挑战发布的版本不计入,1 小时后删除。
| 原因 | 触发 |
|---|---|
| 创建集群 {集群} | 新建集群 |
| 新建网站 / 修改网站 / 删除网站 {网站} | 网站变更 |
| 启用网站 / 停用网站 {网站} | 网站启停 |
| 新建 L4 应用 / 修改 L4 应用 / 删除 L4 应用 {应用} | L4 应用 变更;停用与启用的原因为「修改 L4 应用」 |
| 清除网站 {网站} 的缓存 | 旧版控制台的网站 清除缓存(现在是节点任务,不发布版本) |
| 已更新 {网站} 的证书配置 | HTTPS 设置变更;网站引用的证书签发或续期完成 |
| 已更新 ACME 验证 | HTTP-01 挑战变更 |
| 已更新规则与 IP 名单 | 网站规则、全局规则或 IP 名单变更 |
| 修改网站 {网站} 的防护 | 网站 安全 页签的 Under Attack、CC 防护或挑战设置变更 |
| 修改网站 {网站} 的 OWASP CRS | 网站 安全 页签的 OWASP CRS 设置变更 |
| 修改全局 Under Attack | 防护 的全局 Under Attack 变更,所有集群各发布一个版本 |
| 修改 CC 模板 | CC 模板 变更,有网站跟随模板的集群各发布一个版本 |
| 轮换挑战密钥 | 每天轮换挑战密钥,配置中带有挑战密钥的集群各发布一个版本 |
| 更新源站地址允许清单 | 源站地址允许清单 变更,所有集群各发布一个版本 |
| 回滚到 #{版本} | 回滚 |
| 版本 #{版本} 的金丝雀发布已回滚 | 配置金丝雀 回滚 |
| 升级后重新编译配置 | 控制台升级改变了已保存配置的编译结果,所有集群各发布一个版本 |
回滚 以所选版本的内容发布一个新版本,不删除历史。当前已停用的网站与 L4 应用不随回滚下发;IP 名单、全局规则、全局 Under Attack 与源站地址允许清单取当前值。所选版本引用的网站、域名、证书、IP 名单或 L4 应用已删除,L4 应用的端口已不在端口池内,或证书已过期时,拒绝回滚。
回滚 的确认对话框列出回滚相对最新版本 新增、修改、移除 的网站;内容与最新版本相同时显示「与当前版本相同」,只有网站以外的配置不同时显示「网站无变化」。不能回滚时(如 ROLLBACK_RESOURCE_UNAVAILABLE)显示原因,确认按钮不可用。预览不写入任何数据,API 见 集群与概览。
变更需要集群活动节点缺少的能力时:
| 发布方 | 行为 |
|---|---|
| 控制台账户(会话或 AccessKey) | 照常发布;缺少能力的节点显示 需要升级,继续使用原配置 |
| 服务账号 | 409 NODE_CAPABILITY_REQUIRED,不发布 |
| 控制台的自动任务 | 不发布 |
待处理
概览(/overview)顶部的 待处理 列出需要处理的事项,每行显示所属集群,点击打开该集群(DNS 事项打开其 DNS 页签);没有事项时不显示。侧边栏 概览 旁显示事项数。按下表顺序排列:
| 事项 | 条件 |
|---|---|
| 异常节点:N | 已启用、连接过节点通道的节点:离线、应用失败、数据面异常(已应用过配置时),或节点通道拒绝其证书 |
| DNS 版本 #N 发布失败 | 集群的 DNS 不是 不管理,DNS 版本发布失败 |
| DNS 发布被大面积摘除保护拦下 | 集群的 DNS 发布被 大面积摘除保护 拦下 |
| 升级到 X 失败 | 集群最近一次 节点升级 失败,24 小时内 |
| 金丝雀 #N 已回滚 | 配置金丝雀 已回滚,24 小时内 |
| 金丝雀 #N 待晋升 | 窗口已通过,等待 立即推进到全部 |
| 金丝雀 #N 观察中 | 候选版本在金丝雀节点上观察,带窗口结束倒计时 |
| 落后节点:N | 在线、健康的节点没有运行目标版本,或需要升级 |
| 无公网地址的节点:N | 在线节点没有 DNS 可用的地址,只计 DNS 不是 不管理 的集群,见 没有公网地址的节点 |
API:GET /api/v1/overview 的 attention,见 集群与概览。
网站启停
网站 概览 页签的 状态 旁有 停用 / 启用(需要确认);API 见 站点启停。
| 项目 | 行为 |
|---|---|
| 状态 | 网站 列表的 状态 列与网站 概览 页签显示网站是否已在节点生效:待接入(集群没有在线节点,或在线节点都还没有应用含该网站的版本)、生效中 N/M(M 个在线节点中有 N 个运行该网站的最新配置且数据面正常)、运行中(全部在线节点都已运行)、已停用。配置金丝雀窗口内显示 金丝雀 N/M,HH:MM 全部生效(非金丝雀节点在窗口结束前继续运行旧版本;需要手动晋升时为 待晋升)。未全部生效时页面每 5 秒刷新一次 |
| 提示 | 保存、新建、启用与停用网站后的提示随节点更新:生效中 N/M → 已生效(金丝雀中显示窗口结束时间;停用为 移除中 N/M → 已从节点移除),最多跟踪 3 分钟 |
| 节点 | 停用的网站不下发;节点对其域名的 HTTP 请求返回 503(X-Edgeweir-Error: site-disabled),页面为平台错误页的 网站已停用 或内置页面;HTTPS 请求在 TLS 握手时失败 |
| DNS | 记录保留 |
| 证书 | 续期继续,HTTP-01 挑战照常应答 |
| 刷新预热 | 返回 SITE_DISABLED |
| 回滚 | 不会让已停用的网站重新下发 |
| 版本与审计 | 状态变化时发布新版本并写审计(site.enable、site.disable);状态不变时不发布、不写审计 |
区域
页面:集群与节点 的 区域 视图(/clusters?view=regions;/regions 跳转到这里),页面操作为 新建区域。区域是节点组与区域探针的标签(如华东),在节点组与节点表中显示;探测指标的调度条件可以只计一个区域的探测方。探针在 系统设置 的 监控 页签,见 区域探针。
| 操作 | 说明 |
|---|---|
| 新建区域 | 名称:最多 64 字符;代码:小写字母、数字与 -,以字母或数字开头,最多 32 字符,不能重复 |
| 编辑区域 | 修改名称与代码 |
| 删除 | 区域下还有探针时拒绝(该区域下还有 N 个探针);引用该区域的节点组保留,区域置空,其中兼任探针的节点不再探测 |
服务账号
页面:系统设置 的 服务账号 页签(/system?tab=service-accounts;/service-accounts 跳转到这里),页面操作为 新建服务账号。服务账号是供集成调用 /api/v1 的身份:不能登录控制台,只能用 key(ews_ 开头,请求头 x-api-key)调用下表中的过程。
| 操作 | 说明 |
|---|---|
| 新建服务账号 | 名称(最多 64 字符,不能重复)、权限范围(scope)、启用 |
| 编辑 | 修改名称、scope 与启用状态;停用的服务账号的 key 被拒绝 |
| 密钥 | 新建密钥(可填 密钥名称;key 仅显示一次);吊销 需要确认。列表显示 已吊销 与 最后使用 |
| 删除 | 需要确认;它的全部 key 同时失效 |
| Scope | 可调用的过程 |
|---|---|
| 无需 scope | system.status、account.me、dns.catalog |
system:read | settings.get |
clusters:read | clusters.list、clusters.get |
sites:read | sites.list、sites.get、sites.launch、dns.siteTarget |
sites:write | sites.setEnabled |
usage:read | usage.list、usage.changes |
| 项目 | 行为 |
|---|---|
| 其他过程 | 403 SERVICE_ACCOUNT_FORBIDDEN |
| 缺少 scope | 403 SCOPE_REQUIRED,data.scope 为所需的 scope |
| 节点能力 | 变更需要集群活动节点缺少的能力时返回 409 NODE_CAPABILITY_REQUIRED,见 配置版本 |
| 审计 | 服务账号做出的变更以 服务账号 身份写审计;服务账号与 key 本身的变更写审计 service_account.* |
端点与请求格式见 API 与端点。
审计日志
页面:审计日志(/audit)。管理操作写入审计日志。控制台自身的变更与审计条目在同一事务中提交;登录、修改密码、两步验证与通行密钥的变更由 better-auth 完成,审计条目在其提交后写入,写入失败只记录日志。审计日志不自动清理。
| 字段 | 内容 |
|---|---|
| 时间 | 操作时间 |
| 操作者 | 类型(用户、AccessKey、服务账号、节点、探针、系统)、ID、名称 |
| IP、User-Agent | 请求来源;不经请求的操作(节点、探针、系统)为空。IP 取值规则见 可信代理与客户端 IP |
| 操作 | 代码形如 site.create,界面显示其名称(如 创建网站) |
| 对象 | 类型、ID、名称;名称在操作时记录,对象删除后仍可读 |
| 元数据 | JSON,操作相关的参数与前后值 |
页面显示 时间、操作者、操作(名称与代码)、对象,每页 50 条;筛选 操作、对象 类型与时间范围(全部时间、近 1 小时、近 24 小时、近 7 天、近 30 天)。行末的 详情 显示全部字段:完整时间、操作者与对象的 ID、IP、User-Agent 与格式化的元数据 JSON。没有名称的旧代码按原样显示。/api/v1 返回全部字段,读取方式见 API 与端点。
| 操作前缀 | 内容 |
|---|---|
system.* | 初始化(含 setup token 错误的 system.setup_rejected)、节点通道地址(system.node_channel_update)、源站地址允许清单、节点发布源、用量设置、封禁设置、防护、CC 模板、探测设置(system.probes_update)、升级后重新编译 |
auth.* | 登录成功(auth.sign_in,含登录方式)与失败(auth.sign_in_failed) |
account.* | 修改密码、启用 / 停用两步验证、添加 / 删除通行密钥、在服务器上找回账户(account.recover,见 找回账户) |
api_key.* | AccessKey 创建、吊销 |
service_account.* | 服务账号与其 key |
cluster.*、node_group.*、region.*、node.*、enrollment_token.* | 集群(含配置金丝雀、回滚、挑战密钥轮换、端口池 cluster.port_pools_update)、节点组、区域、节点(含注册、证书续期、升级、调度地址 node.set_addresses、兼任探针 node.set_probe)、安装命令 |
probe.* | 探针令牌(probe.token_create)、注册(probe.enroll)与证书续期(probe.certificate_renew,操作者为 探针)、改名与启停(probe.update)、删除(probe.delete) |
scheduling.* | 调度规则的增删改(scheduling.rule_create、scheduling.rule_update、scheduling.rule_delete);规则动作的生效与恢复(scheduling.activate、scheduling.recover,操作者为 系统) |
l4_app.* | L4 应用:l4_app.create、l4_app.update、l4_app.enable、l4_app.disable、l4_app.delete |
site.*、cache.*、certificate.*、dns_credential.*、ip_list.*、platform.* | 网站(含启停、HTTPS、日志、防护、OWASP CRS 与网站规则)、刷新预热、证书、DNS 凭据、IP 名单、全局规则 |
ban.* | 手动封禁:ban.create、ban.update(再次封禁)、ban.delete(解封) |
dns.*、alert.* | DNS 调度(含服务商账号、集群绑定、回滚、大面积摘除保护与强制发布)、告警渠道、告警规则、SMTP、告警订阅 |
系统设置
页面:系统设置(/system),页签:
| 页签 | 内容 |
|---|---|
| 通用 | 以下各节:系统信息、节点通道、源站地址允许清单、节点发布源、用量、平台错误页 |
| 监控 | /system?tab=probes:区域探针列表(页面操作 添加探针)与 探测设置 卡片,见 区域探针;/regions?tab=probes 跳转到这里 |
| 服务账号 | /system?tab=service-accounts,见 服务账号 |
系统信息
只读。
| 项目 | 来源 |
|---|---|
| 版本 | 镜像版本 <YYYYMMDD>-<commit>;源码运行为 dev |
| 控制台地址 | EDGEWEIR_PUBLIC_URL;localhost 或回环地址标「仅本机可达」,内网地址标「内网地址」:其他网络的节点无法从此下载 install.sh;公网地址使用 HTTP 时标「未加密」:install.sh 以明文传给要用 root 运行它的主机 |
| CA 指纹 | 节点通道内部 CA 的 SHA-256;安装命令中的 --ca-sha256 与之相同 |
| 统计模式 | EDGEWEIR_ANALYTICS(lite / clickhouse) |
| 初始化令牌 | 未使用 或 已于 {时间} 使用 |
| OpenAPI | /api/v1/openapi.json |
节点通道
地址:节点与区域探针连接节点通道的地址,即安装命令中的 --server。输入框为空时使用 EDGEWEIR_NODE_API_URL,未设置时为 https://<EDGEWEIR_PUBLIC_URL 的主机名>:<NODE_API_PORT>;占位文字为当前生效的地址,标签显示其来源。
| 约束 | 说明 |
|---|---|
| 格式 | https://主机[:端口],不含路径、查询参数与账号;保存为主机名小写、去掉末尾 / 与默认端口 443 的形式 |
| 生效 | 保存后立即生效,不重启控制台:新的安装命令与探针命令使用该地址,节点通道证书加入其主机名或 IP |
| 已注册的节点 | 继续连接注册时的地址,旧地址的名称留在证书中;编辑时提示「已注册的节点仍连接原地址,原地址需保持可用」 |
| 清空 | 保存空值后回退到环境变量或默认值 |
地址为 localhost、回环或内网地址时标「仅本机可达」或「内网地址」:其他网络的节点无法注册。地址下方显示 连接检查 的结果:连接正常、控制台无法连接该地址、证书不符,前面可能有代理或 CDN,或 出站策略不允许连接该地址(保存的地址是内网、回环等特殊用途地址,EDGEWEIR_OUTBOUND_ALLOW_CIDRS 未放行,控制台不连接)。修改写审计 system.node_channel_update。证书名称见 节点通道地址与证书。
源站地址允许清单
允许的地址段(每行一个 CIDR),最多 256 条。清单内的内网、回环等特殊用途地址可作为源站。保存后所有集群各发布一个配置版本,并写审计 system.origin_allow_list_update。源站地址规则见 源站地址限制。
节点发布源
发布源地址:节点升级读取发布清单的镜像地址,布局为 <地址>/v<版本>/checksums.txt。
| 约束 | 说明 |
|---|---|
| 格式 | http(s) URL,不含账号、查询参数或片段 |
| 协议 | 公网地址须使用 HTTPS;HTTP 只用于 EDGEWEIR_OUTBOUND_ALLOW_CIDRS 放行的内网地址 |
| 出站策略 | 保存时解析主机名,地址须为公网或 EDGEWEIR_OUTBOUND_ALLOW_CIDRS 放行的地址 |
| 清空 | 保存空值后回退到环境变量或默认值 |
每个节点另有本机固定的发布源与签名信任锚,控制台不能修改;见 节点升级。
用量
| 字段 | 取值 | 默认值 | 说明 |
|---|---|---|---|
| 保留天数 | 35–400 | 100 | 用量记录保留时间 |
| 离线节点不阻塞完整性(分钟) | 5–1440 | 60 | 超过该时间没有心跳的节点不再阻塞 completeUntil |
修改写审计 system.usage_update。用量接口与 completeUntil 的定义见 用量。
平台错误页
| 字段 | 适用的请求 | 说明 |
|---|---|---|
| 未知域名 | Host 不属于集群的任何网站 | 状态码 404;留空使用内置页面 |
| 网站已停用 | 已停用网站的域名 | 状态码 503 |
每个模板最多 65536 字节(UTF-8),占位符 {{status}}、{{request_id}}、{{client_ip}}、{{host}}、{{time}}、{{path}} 的值经 HTML 转义;用到 {{time}} 或 {{path}} 时所有集群的配置要求节点能力 rules-v3。保存后所有集群各发布一个配置版本(原因「修改平台错误页」);修改写审计 system.error_pages_update。旧节点忽略平台错误页。见 错误页。
设置优先级
控制台中保存的值优先于环境变量,环境变量优先于默认值。环境变量只作为已有部署的后备。
| 设置 | 位置 | 环境变量 | 默认值 |
|---|---|---|---|
| 节点通道 | 系统设置 → 节点通道 | EDGEWEIR_NODE_API_URL | https://<EDGEWEIR_PUBLIC_URL 的主机名>:<NODE_API_PORT> |
| 节点发布源 | 系统设置 → 节点发布源 | EDGEWEIR_NODE_RELEASE_BASE_URL | https://github.com/marvinli001/edgeweir-node/releases/download |
| SMTP CA 证书 | 告警 → SMTP → CA 证书(PEM) | EDGEWEIR_SMTP_CA_FILE(PEM 文件路径) | 系统信任库 |
| SMTP 服务器与账户 | 告警 → SMTP | 无 | 未配置 |
| 源站地址允许清单 | 系统设置 → 源站地址允许清单 | 无 | 空 |
| 用量 | 系统设置 → 用量 | 无 | 保留 100 天,离线阈值 60 分钟 |
| 封禁 | 防护设置 → 封禁 | 无 | 上限 10000,共享自动封禁 |
| 防护 | 防护设置 → 防护 | 无 | 全局 Under Attack 关闭,挑战类型 JS 计算,事件保留 30 天 |
节点通道 与 节点发布源 的标签显示当前生效值的来源:已保存、环境变量 或 默认。系统设置中保存的发布源地址受 EDGEWEIR_OUTBOUND_ALLOW_CIDRS 约束;环境变量中的值由运维设置,不经该检查。全部环境变量见 环境变量。
防护设置
页面:防护设置(/protection),在侧边栏 访问控制 下。
封禁
| 字段 | 取值 | 默认值 | 说明 |
|---|---|---|---|
| 手动封禁上限 | 100–100000 | 10000 | 有效的手动封禁总数,网站封禁与全局封禁合计;超出返回 BAN_PLATFORM_LIMIT |
| 集群内共享自动封禁 | 开 / 关 | 开 | 节点产生的自动封禁是否下发到同集群的其他节点;关闭时只保存供查看 |
修改写审计 system.bans_update。见 封禁。
防护
| 字段 | 取值 | 默认值 | 说明 |
|---|---|---|---|
| 全局 Under Attack | 开 / 关 | 关 | 所有网站没有通行凭证的 GET/HEAD 请求先挑战;切换前需确认 |
| 挑战类型 | Cookie 跳转 / JS 计算 / 工作量证明 / 图片验证码 | JS 计算 | 全局 Under Attack 的挑战类型 |
| 安全事件保留天数 | 7–365 | 30 | 节点上报的 CC 防护事件保留时间 |
开关变化,或开启时更换挑战类型,所有集群各发布一个配置版本。修改写审计 system.protection_update。全局 Under Attack 需要节点能力 challenge-v1,缺少该能力的节点继续使用原配置,见 配置版本。网站自己的 Under Attack 与 CC 防护见 挑战与 CC 防护。
CC 模板
网站开启 CC 防护并 跟随默认模板 时使用的阈值:最高级别、验证码级别改用高难度计算验证、窗口、站点 QPS、单 URL QPS、单 IP QPS、IP 封禁时长、源站错误率、最小回源请求数、持续多久升级、冷却多久降级。「预设」选择宽松、标准或严格,或选择「自定义」逐项填写;字段、范围、默认值与各预设的取值见 CC 防护。保存后,有网站跟随模板的集群各发布一个配置版本;修改写审计 system.cc_template_update。
GeoIP 数据库
只读。逐个节点显示 国家、省份 与 ASN 数据状态(可用 / 未配置),并带 IPinfo 署名链接。国家和 ASN 数据随节点发布镜像内置,其余数据库由各节点本机配置;配置数据库 链接到 规则、IP 名单与 GeoIP。
故障排查
| 现象 | 原因 | 处理 |
|---|---|---|
| 集群还有 N 个节点和 M 个网站,不能删除 | 集群非空 | 删除集群内的节点与网站后重试 |
| 先关闭该集群的 DNS,等待记录清理完成 | 集群的 DNS 仍为 自动 或仍持有记录 | 在 DNS 页签切换到 不管理,等待清理完成后重试 |
| 集群名称已存在:… / 节点组已存在:… / 区域代码已存在:… / 服务账号名称已存在:… | 名称或代码重复 | 更换名称或代码 |
| 默认节点组不能删除 | 删除默认节点组 | 默认节点组只能改名或更换区域 |
| 该区域下还有 N 个探针 | 删除仍有探针的区域 | 先在 系统设置 的 监控 页签删除这些探针 |
| 节点组不属于该节点所在的集群 | 跨集群移动节点 | 节点只能在集群内移动;换集群须删除后重新注册 |
| 此集群最多发布 512 个网站 | 集群内已启用的网站达到上限 | 停用不再使用的网站,或经 /api/v1 用 clusterId 在其他集群新建网站 |
| 集群节点尚不支持这些能力:… | 服务账号或自动任务发布的变更需要集群活动节点缺少的能力 | 升级节点,见 节点升级 |
| 回滚引用的资源已移除、转移或不可用(回滚确认对话框中) | 所选版本引用的网站、域名、证书或 IP 名单已删除,或证书已过期 | 选择更近的版本,或修复当前配置 |
| 服务账号不能调用此接口 | 服务账号调用了 服务账号 表之外的过程 | 改用 AccessKey |
| 缺少权限范围:… | 服务账号缺少该过程需要的 scope | 在 系统设置 的 服务账号 页签编辑其 权限范围 |
| 发布源须使用 HTTPS 并解析到允许的地址 | 公网 HTTP 地址,或解析到未放行的内网地址 | 使用 HTTPS,或在 EDGEWEIR_OUTBOUND_ALLOW_CIDRS 放行 |