菜单
开源

Pyroscope 部署模式

您可以通过以下两种模式之一部署 Pyroscope

  • 单体模式:在此模式下,所有组件都在一个进程中运行,适用于您只需要一个 Pyroscope 实例的情况,因为多个实例之间不会共享信息
  • 微服务模式:在此模式下,随着实例数量的扩展,它们将共享一个用于存储和查询的后端

部署模式由 `-target` 参数决定,您可以通过 CLI 标志或 YAML 配置进行设置。

单体模式

单体模式在单个进程中运行所有必需的组件,是默认的操作模式,您可以通过指定 `-target=all` 进行设置。单体模式是部署 Pyroscope 最简单的方式,如果您想快速入门或在开发环境中试用 Pyroscope,这种模式非常有用。要查看当 `-target` 设置为 `all` 时运行的组件列表,请使用 `-modules` 标志运行 Pyroscope

bash
./pyroscope -modules

Pyroscope’s monolithic mode

微服务模式

在微服务模式下,组件部署在不同的进程中。扩展按组件进行,这使得扩展更加灵活,并具有更细粒度的故障域。微服务模式是生产部署的首选方法,但也是最复杂的。

在微服务模式下,每个 Pyroscope 进程都通过设置 `-target` 参数来指定运行特定的 Pyroscope 组件(例如,`-target=ingester` 或 `-target=distributor`)。要获得一个可用的 Pyroscope 实例,您必须部署所有必需的组件。有关每个 Pyroscope 组件的更多信息,请参阅架构

如果您有兴趣以微服务模式部署 Pyroscope,我们建议您使用 Kubernetes

Pyroscope’s microservices mode