跳到正文

站点 ​

站点是一个 Arkvory 安装:主安装、位于其他地点的镜像、从另一安装导入版本的安装。在 站点 中,一个安装(控制站点)显示它管理的每个站点:是否应答、版本、HA 副本和只读网关、镜像及其落后多少,以及下载队列。只有全局管理员能看到此页面。

集群状态 ​

页面以 集群状态 开头:各站点中需要关注的问题,以及哪个站点为哪个站点提供数据。控制站点根据最近一次对各站点的读取生成它,最多每 5 秒一次,并把自身列为“本站点”。

告警 ​

每条告警指明站点和问题,最严重的排在前面:严重,然后是 警告,然后是 提示。没有需要关注的问题时,列表会说明。

告警严重程度何时处理
无法访问严重2 分钟没有应答。一次读取失败不算告警检查站点和网络
证书、已撤销、已拒绝、无效严重立即,与同名状态一起出现重新配对,或将两个安装升级
过期警告站点有应答,但超过三个读取周期(90 秒)加上一轮读取所需的时间未被读取:控制站点的后台读取卡住了检查控制站点的 API 进程
不可写入严重写入进程拒绝写入,且并未在排空检查它的数据库和磁盘
副本严重HA 站点缺少数据副本;写入暂停,直到副本恢复恢复缺失的节点,参见高可用集群
单副本警告缺少副本,但运维人员已接受在某个时间之前只有单副本在该时间之前恢复缺失的节点
镜像失败警告镜像的上次同步失败。重新读取已恢复的源不算查看镜像的错误代码
镜像落后警告镜像落后于源 ARKVORY_FLEET_LAG_ALERT 个变更(默认 1000)或更多检查源、网络和镜像
更新失败警告站点的更新程序报告失败在站点设置中打开 更新
版本不同提示站点运行的版本与控制站点不同将各站点升级到同一版本

告警只使用最新的读取结果:不应答的站点只产生它自己的告警,而不会根据它上次报告的内容产生告警。一轮读取每八个站点最多需要 15 秒,因为控制站点同时最多读取八个站点,每个最多等待 15 秒;过期告警会加上这段时间,这样大量无法访问的站点不会让健康的站点看起来卡住。Prometheus 使用同一个 ARKVORY_FLEET_LAG_ALERT 告警,参见监控。

关联 ​

关联 显示哪个站点为哪个站点提供数据。每个镜像和导入都是一个箭头,从源站点指向保存镜像的站点。

  • 如果没有任何受管站点在某个源的地址上应答,该源以其地址显示,带虚线边框。如果该源就是控制站点本身,请设置 ARKVORY_SITE_URL,参见设置。
  • 失败的关联显示为红色虚线。
  • 关联上的数字是镜像落后于源的变更数。
  • 站点不应答期间,它的关联及落后数保持为它上次报告的内容,并标记为最后已知状态:在地图上显示为虚线,在表格中带有提示 最后已知状态:站点未响应。

地图下方的表格列出相同的信息:源、站点、仓库、源仓库 和 落后。

控制站点的全局管理员可以通过 GET /api/v1/fleet/overview 或 SDK 的 client.fleet.overview() 获取同样的告警和关联。对于 Prometheus,控制站点导出其站点的状态和告警数量:参见监控。

工作方式 ​

  • 控制站点保存站点列表。它每 30 秒通过 HTTPS 读取每个站点并保留最后的应答,因此停止应答的站点仍会显示最后已知的状态。
  • 配对时,站点给控制站点一个专属密钥,即集群密钥。它只能访问控制站点所需的内容:站点状态、其目录中的描述,以及所列的更改:下载队列、更新请求以及交给站点代理的镜像和 HA 更改。它不能下载文件字节、写入仓库,也不能读取或修改账户和密钥。
  • 控制站点用其数据目录中的密钥(fleet.key)封存集群密钥。仅凭数据库及其备份无法得到它们。恢复后请重新配对站点。
  • 每个站点都显示哪些控制站点在管理它,并可随时撤销。

配对站点 ​

  1. 在站点上:打开 站点,在 本站点 下选择 生成配对码。站点显示一个十分钟内有效的代码;使用内置 HTTPS 时,还会显示其证书指纹。
  2. 在控制站点上:打开 站点,在 配对站点 下输入站点地址并选择 检查。控制站点连接后显示收到的证书指纹。
  3. 比较两个指纹。它们必须相同。如果不同,说明地址错误或两个安装之间有其他东西:不要配对。
  4. 输入代码并选择 配对。站点出现在列表中并显示其状态。

代码只能使用一次。已使用或已过期的代码会被拒绝:请生成新代码。

地址是站点 API 的 HTTPS 地址,例如 https://branch.example:8443。明文 HTTP 只在同一台计算机上(127.0.0.1)被接受。如果 TLS 在站点前面的代理处终止,站点无法显示代理的证书:请与浏览器为站点地址显示的 SHA-256 指纹比较。

此后控制站点只信任这一个证书。站点换了新证书时会显示 证书已变更:请移除站点并重新配对。

状态 ​

状态含义处理
正常站点应答了最近一次读取无需处理
尚未读取站点尚未被读取等待下一次读取或选择 立即读取
无法访问没有应答:站点已停止或网络中断检查站点和网络。最后已知的状态仍然可见
证书已变更站点出示的证书与已确认的不同如果证书已续签,请移除站点并重新配对
访问已撤销站点管理员撤销了此控制站点用新代码重新配对
意外应答站点的应答本版本无法理解将两个安装升级到同一版本
已拒绝站点拒绝了请求用新代码重新配对

列表显示的内容 ​

  • 版本:站点的版本及其角色,写入或只读网关。
  • HA 和网关:在 HA 集群中,完整副本数以及写入所需的副本数;持有槽位的只读网关。
  • 镜像:站点的镜像和导入;最落后的一个比源落后多少变更,或有多少已停止。
  • 下载队列:正在进行的下载和在队列中等待的下载。
  • 最后应答:站点最后一次应答的时间。

立即读取全部 立即读取所有站点,而不等待下一轮。移除 在此处忘记站点;也请在该站点上撤销控制站点,因为在此之前其密钥在那里仍然有效。

站点内容 ​

站点行中的 内容 在列表下方打开其仓库、制品和文件。选择一个仓库;查找 按名称或标签搜索制品,并列出路径以所输入内容开头的文件。显示更多 读取下一页。

控制站点用其集群密钥在站点上读取这些内容,并按站点给出的原样显示应答。只传输描述:名称、大小、标签、阶段、路径和修订。要下载文件,请使用站点本身。

站点设置 ​

站点行中的 设置 在列表下方打开其设置;本站点的设置 为本站点打开同样的卡片。卡片分为三部分:

  • 下载队列:同时进行的下载数、为人员保留的位置、策略、类别权重以及流量控制中的其他队列值。留空的字段保留站点环境中的值,以灰色显示。保存队列设置 立即应用这些值,无需重启:新的决策遵循它们,正在进行的下载保留其位置。恢复默认值 恢复为环境值。
  • 更新:已安装版本和最新版本、自动安装和维护时段、立即检查 和 安装更新。站点的更新程序在一分钟内接收请求;在此之前卡片显示为已接受。
  • 镜像和集群:站点的镜像和导入,带有 更换密钥 和 断开;带源密钥的 接入镜像或导入;在 HA 集群上,切换 到拥有完整副本的节点(节点名称输入两次)以及单副本决定。站点代理在一分钟内以 arkvory configure 和 cluster-* 的检查与回滚应用每个请求;发给代理的请求 显示每个请求的结果。源密钥只以单独文件交给代理一次,之后不再显示。代理就是站点的更新程序:用 updates-connect 连接它。

每次更改都带有其所基于的修订号。如果在此期间有人修改了设置,站点会拒绝该更改,卡片会显示当前值:请检查后再次保存。站点会记录谁修改了它的队列:控制站点的密钥及其管理员的名称。

从控制站点只能把镜像或导入接入为新仓库,源的证书颁发机构证书在站点本身上设置(arkvory configure --mirror-ca-file):站点信任的内容永远不会被远程更改。请求列表以代码显示每项更改的结果;代理自己的消息保留在站点上的代理日志中。如果某项更改中途被打断,在站点管理员检查并在那里运行 arkvory changes-reset --root <根目录> 之前,代理不会接受其他更改。

谁在管理本站点 ​

在 本站点 下,每个站点列出管理它的控制站点:名称、配对人、配对时间和最后请求。撤销 立即拒绝该控制站点的密钥。

设置 ​

变量默认值含义
ARKVORY_SITE_NAME主机名本安装在其他站点上的名称
ARKVORY_FLEET_KEY_FILE数据目录中的 fleet.key封存受管站点密钥的密钥;写入进程首次启动时创建
ARKVORY_SITE_URL未设置其他站点访问本安装所用的地址 https://host[:port]。设置后,源为本安装的镜像会在 关联 中关联到本安装。值无效时启动会停止
ARKVORY_FLEET_LAG_ALERT1000受管站点的镜像落后于源多少个变更时告警;整数,1 或更大

限制 ​

  • 隔离测试以及添加或移除集群节点仍是在节点上执行的本地命令。只读网关保留其环境中的下载队列。
  • 一个控制站点最多管理 256 个站点,同时最多读取八个。
  • 控制站点持有其管理的每个站点的密钥:请像保护站点本身一样保护它的全局管理员和数据目录。

Arkvory · ProAnimaStudio