Harbory icon

Harbory

Harbory 是基于 Rust 的开源编排系统,可通过仪表板管理容器、反向代理和远程 VM,面向小型服务器集群,采用配对代理而非 Kubernetes 集群。

Harbory

面向小型 VM 集群的基础设施编排

Harbory 是用 Rust 编写的开源基础设施编排系统。它使用中央控制平面和轻量级代理,通过 Web 仪表板或 JSON API 管理容器、反向代理和远程 VM。

该产品面向小型服务器集群,而非大型数据中心。其设置流程侧重于使用短时有效的令牌将主机配对,然后让代理协调 Docker 容器和 Nginx 配置,无需 Kubernetes 集群、YAML 清单或集群引导步骤。

核心功能

容器部署与状态协调

从仪表板或 API 定义所需的容器状态,代理会自动根据 Docker 对该状态进行协调。文档称,随着代理在每次心跳时逐步达到目标状态,可以部署、重新部署或移除容器。

反向代理管理

创建经过模板化的反向代理路由,并在重新加载前进行验证。来源称,只有在生成的配置通过验证后,Nginx 才会重新加载,从而避免错误配置影响实际流量。

代理配对与身份验证

使用短时有效的配对令牌和签名凭据,使代理在每次连接时证明其拥有密钥。来源还介绍了质询/响应身份验证,而不是仅依赖持有者令牌。

Web 仪表板

通过 Web 仪表板配对代理、部署容器和路由,并监控实时安全与活动信息流。该界面被定位为日常管理的主要控制面板。

分布式控制平面架构

运行单个控制平面进程,通过持久的 gRPC 流协调多个轻量级代理。该网站将其与运行完整 Kubernetes 集群及其相关控制平面组件进行了对比。

使用 Harbory 的实际方式

  • 管理小型服务器集群中的容器

    如果你希望在少量 Linux 主机上运行和更新容器化服务,而不必管理 Kubernetes 组件或编写多层 YAML 定义,可以使用 Harbory。

  • 控制反向代理路由

    使用该产品将服务发布在 Nginx 后面,尤其适合希望在重新加载前对代理路由进行模板化和验证,而不是在每台主机上手动编辑的场景。

  • 将新主机配对到控制平面

    在新的 VM 上安装代理,从仪表板生成配对令牌,然后通过第二条命令将主机连接到控制平面。

  • 运行自行托管的控制平面

    对于希望自行托管编排系统的团队,文档介绍了一个控制平面安装程序,可使用你自己的数据库和 Supabase 设置进行配置。

  • 从代码仓库部署容器

    如果你希望从 GitHub 而不是镜像仓库进行部署,配置 GitHub OAuth 后,Harbory 可以在目标主机上克隆并构建仓库。

Pros and Cons

Pros

  • 无需 Kubernetes 控制平面;Harbory 使用单个控制平面和轻量级代理。
  • 文档说明了基于 apt 的代理安装路径和从源代码构建的路径。
  • 容器状态会自动与 Docker 进行协调,从而减少手动重新部署工作。
  • Nginx 路由会在重新加载前进行验证,降低推送错误代理配置的可能性。
  • Web 仪表板集中管理配对、部署和活动监控。

Cons

  • 来源在主机安装和代理配对方面的说明更为充分,对于更广泛的集成或高级生态系统支持涉及较少。
  • 运行自己的控制平面需要额外配置数据库和 Supabase,并且公开访问还需要单独的 TLS 反向代理。
  • GitHub 仓库部署是可选功能,必须先配置 GitHub OAuth App 才能使用。

FAQ

Harbory 用于什么?

来源将 Harbory 描述为一个分布式控制平面和代理系统,可从一个仪表板管理容器、反向代理和远程 VM。它面向希望进行基础设施编排、但不想运行 Kubernetes 集群的用户。

如何安装并连接代理?

文档称,可以在 Ubuntu/Debian 上通过基于 apt 的方式安装主机,也可以从源代码构建。安装后,在仪表板中生成一个短时有效的配对令牌,然后在主机上运行配对命令。

该平台可以管理什么?

Harbory 可以管理容器状态、配置 Nginx 反向代理路由,并通过持久的身份验证连接协调代理。文档还提到,如果控制平面配置了 GitHub OAuth,也可以从 GitHub 仓库部署容器。

Harbory 提供 Web UI 和 API 吗?

产品提供 Web 仪表板,用于配对代理、部署容器和路由,以及查看活动和安全信息。文档还提到,可通过普通 JSON API 管理期望状态。

我可以运行自己的控制平面吗?

来源表明,控制平面可以自行托管,其安装程序会写入数据库和 Supabase 配置的占位符。控制平面仅绑定到 127.0.0.1,因此文档称如果要公开访问,就需要配合单独的反向代理和 TLS 证书。

Quick Facts

类别
开发者工具
平台
Web 仪表板和 Linux 代理
主要用户
管理小型 VM 集群的用户
技术
Rust、Docker、Nginx、gRPC
部署模式
开源、可自行托管的控制平面与配对代理
来源域名
harbory.preetindersingh.tech