工作空间远程共享(实验性)

将工作空间共享到 ElevoWorkspace,允许其他 Knodo 实例挂载访问

工作空间远程共享

⚠️ 实验性特性:该功能目前处于实验阶段,默认关闭。

功能概述

ElevoWorkspace 共享功能允许您将工作空间通过 StorageProvider SDK 共享到远程 ElevoWorkspace 服务,供其他 Knodo 实例挂载访问,实现跨团队协作和灾难恢复。

开启功能

该功能默认关闭,需要平台管理员先在管理后台开启:

  1. 进入管理后台 → 系统配置 → ElevoWorkspace 共享
  2. 打开启用共享功能开关
  3. 配置以下必要信息:
    • HTTP API 地址:ElevoWorkspace 服务的 HTTP API 地址(如 http://localhost:8080
    • 管理员 Token:ElevoWorkspace 管理员访问令牌

💡 配置也可以通过环境变量设置初始值:ELEVO_WORKSPACE_ENABLEDELEVO_WORKSPACE_HTTP_URLELEVO_WORKSPACE_ADMIN_TOKEN。管理后台修改的值优先于环境变量。

前提条件

  • 平台管理员已在系统配置中开启功能并配置好 ElevoWorkspace 连接信息
  • 网络连通:确保本实例能够访问 ElevoWorkspace 服务的 HTTP API
  • 您拥有目标工作空间的管理员权限

只有空间管理员有权限开启或关闭自己空间的共享,普通成员对共享功能完全无感,不会看到任何相关入口。

操作步骤

开启共享

  1. 进入目标工作空间,点击左下角 更多设置 打开空间设置弹框
  2. 基本信息 Tab 中找到远程共享区域
  3. 打开共享开关,等待连接建立
  4. 状态显示为已连接(绿色)即表示共享成功

远程空间共享

关闭共享

  1. 进入目标工作空间,点击左下角 更多设置 打开空间设置弹框
  2. 基本信息 Tab 中找到远程共享区域
  3. 关闭共享开关
  4. 在确认对话框中点击确认关闭

⚠️ 注意:关闭共享后,其他 Knodo 实例将无法继续访问此工作空间。

状态说明

状态颜色说明
已连接🟢 绿色StorageProvider 正常运行,远程可访问
重连中🟡 黄色连接中断,正在尝试重新连接
已断开🔴 红色连接失败,请检查网络或联系平台管理员

工作空间列表标识

已开启共享的工作空间在列表页会显示已共享标识(绿色 Share2 图标),仅空间管理员可见。

审计日志

以下操作会记录到审计日志:

操作审计动作说明
开启共享ELEVO_SHARE_START记录操作人和 Share ID
关闭共享ELEVO_SHARE_STOP记录操作人

技术架构

租户管理

  • 使用平台管理员预配置的单一租户(通过系统配置预设租户 ID 和 Token)
  • 一个组织只维护一个 StorageProvider 连接

工作空间共享

  • 通过 sourcePath 区分同一组织下的不同工作空间
  • Share 创建后,远程实例可通过 Share ID 挂载访问
  • 支持幂等操作:重复开启共享直接返回现有状态

并发控制

  • 组织级锁:确保同一组织只有一个 StorageProvider
  • 工作空间级锁:防止并发操作导致状态不一致

故障恢复

  • 服务启动时自动恢复所有已开启共享的连接
  • 指数退避重试机制(1s → 2s → 4s → 8s → 16s,最多 5 次)
  • 恢复失败记录 ERROR 日志,不阻塞服务启动

常见问题

Q: 为什么我看不到共享开关?

请确认平台管理员已在管理后台 → 系统配置 → ElevoWorkspace 共享中开启了功能开关。功能关闭时,空间设置中不会显示共享选项。

Q: 为什么共享状态显示"已断开"?

可能原因:

  1. ElevoWorkspace 服务不可达
  2. 网络连接中断
  3. 认证信息过期

解决方案:检查网络连通性,确认平台管理员配置的服务信息正确,必要时联系平台管理员。

Q: 关闭共享后数据会丢失吗?

不会。关闭共享只是断开远程访问连接,工作空间数据完整保留在本地。

Q: 非管理员可以看到共享状态吗?

不可以。共享功能仅对空间管理员可见,普通成员完全无感,不会看到任何共享相关的入口或状态信息。

工作空间远程共享(实验性) | Knodo 文档