Grafana Mimir 部署模式
您可以将 Grafana Mimir 部署在以下两种模式之一中
- 单体模式
- 微服务模式
部署模式由 `-target` 参数决定,您可以通过 CLI 标志或 YAML 配置进行设置。
单体模式
单体模式在单个进程中运行所有必需组件,是默认的操作模式,您可以通过指定 `-target=all` 进行设置。如果您想快速入门或在开发环境中与 Grafana Mimir 一起工作,单体模式是最简单的部署方式。要查看当 `-target` 设置为 `all` 时运行的组件列表,请使用 `-modules` 标志运行 Grafana Mimir
./mimir -modules
通过部署多个带有 `-target=all` 的 Grafana Mimir 二进制文件,可以横向扩展单体模式。这种方法提供了高可用性和更大的规模,而无需处理完整的微服务部署的配置复杂性。
微服务模式
在微服务模式下,组件部署在不同的进程中。扩缩容是按组件进行的,这使得扩缩容更加灵活,故障域更加细粒度。微服务模式是生产部署的首选方法,但也是最复杂的。
在微服务模式下,每个 Grafana Mimir 进程都通过将其 `-target` 参数设置为特定的 Grafana Mimir 组件(例如,`-target=ingester` 或 `-target=distributor`)来调用。要获得可用的 Grafana Mimir 实例,您必须部署所有必需的组件。有关每个 Grafana Mimir 组件的更多信息,请参阅架构。
如果您有兴趣在微服务模式下部署 Grafana Mimir,我们建议您使用 Kubernetes 和 mimir-distributed Helm chart。
读写模式
警告
读写部署模式是实验性的。
读写模式提供了单体模式和微服务模式之外的另一种选择。
在读写模式下,组件被分组为三个服务,以简化操作开销,同时仍允许在读取路径和写入路径上独立调整规模。这些服务将组件分组如下
- 读取
- query-frontend
- querier
- backend
- store-gateway
- compactor
- ruler
- alertmanager
- query-scheduler
- overrides-exporter
- 写入
- distributor
- ingester
与其它模式类似,每个 Grafana Mimir 进程都通过将其 `-target` 参数设置为特定服务(例如,`-target=read`、`-target=write` 或 `-target=backend`)来调用。
读写模式仅在 Jsonnet 中可用。