公司网站怎么备案武汉网络推广网络营销
目录
Loki 部署模式
单片模式
简单可扩展
微服务模式
Loki 部署模式
Loki 是一个由许多微服务组成的分布式系统。它还具有独特的构建模型,其中所有这些微服务都存在于同一个二进制文件中。
您可以使用命令行标志配置单个二进制文件的行为-target,以指定哪些微服务将在启动时运行。您可以进一步配置文件中的每个组件loki.yaml。
由于 Loki 将其存储的数据与提取和查询数据的软件分离,因此您可以根据需求的变化轻松地在不同模式下重新部署集群,而无需进行任何配置更改或只需进行很少的配置更改。
单片模式
最简单的操作模式是单片部署模式。您可以通过设置-target=all命令行参数来启用单片模式。此模式在单个进程内以单个二进制文件或 Docker 映像的形式运行 Loki 的所有微服务组件。
单片模式对于快速开始试验 Loki 以及每天最多约 20GB 的小量读/写量很有用。
您可以通过使用共享对象存储并通过配置文件的ring部分
loki.yaml
以在所有实例之间共享状态,将单片模式部署水平扩展到更多实例,但如果您需要扩展部署,建议使用简单可扩展模式。
memberlist_config
您可以通过使用配置和共享对象存储运行两个 Loki 实例并将 设置replication_factor
为 来配置高可用性3
。您以循环方式将流量路由到所有 Loki 实例。
查询并行化受实例数量和文件max_query_parallelism
中定义的设置限制loki.yaml
。
简单可扩展
简单可扩展部署是Loki Helm Chart安装的默认配置。此部署模式是大规模部署 Loki 的最简单方法。它在以单片模式部署或将每个组件部署为单独的微服务之间取得了平衡。
笔记
这种部署模式有时被称为“SSD”,代表简单可扩展部署,不要与固态硬盘混淆。Loki 使用对象存储。
Loki 的简单可扩展部署模式将执行路径分为读取、写入和后端目标。这些目标可以独立扩展,让您可以自定义 Loki 部署以满足您对日志提取和日志查询的业务需求,从而使您的基础设施成本更好地匹配您使用 Loki 的方式。
简单的可扩展部署模式可以扩展到每天几 TB 的日志,但是如果超出这个范围,微服务模式将是大多数用户的更好选择。
简单可扩展模式下的三个执行路径均通过在启动时向 Loki 附加以下参数来激活:
-
-target=write
写入目标是有状态的,由 Kubernetes StatefulSet 控制。它包含以下组件:– Distributor – Ingester -
-target=read
读取目标是无状态的,可以作为可自动扩展的 Kubernetes Deployment 运行(请注意,在官方的 helm chart 中,它目前部署为有状态集)。它包含以下组件: – 查询前端 – 查询器 -
-target=backend
后端目标是有状态的,由 Kubernetes StatefulSet 控制。包含以下组件: – Compactor – Index gateways – Query scheduler – Ruler
简单可扩展的部署模式需要在 Loki 前面部署反向代理,以将客户端 API 请求定向到读取或写入节点。Loki Helm 图表包含使用 Nginx 的默认反向代理配置。
微服务模式
微服务部署模式将 Loki 的组件作为不同的进程运行。每个进程都通过指定其来调用target
:对于版本 2.9,组件包括:
-
缓存生成加载器
-
压实机
-
分销商
-
索引网关
-
摄取者
-
摄取器-查询器
-
覆盖导出器
-
查询器
-
查询前端
-
查询调度程序
-
统治者
-
表管理器(已弃用)
提示
你可以通过使用标志运行 Loki 来查看你的 Loki 版本的完整目标列表
-list-targets
,例如:
docker run docker.io/grafana/loki:2.9.2 -config.file=/etc/loki/local-config.yaml -list-targets
将组件作为单独的微服务运行提供了更高的粒度,让您可以将每个组件扩展为单独的微服务,以更好地匹配您的特定用例。
微服务模式部署可以比 Loki 安装更高效。然而,它们的设置和维护也是最复杂的。
微服务模式仅推荐用于非常大的 Loki 集群或需要对扩展和集群操作进行更精确控制的操作员。
微服务模式专为 Kubernetes 部署而设计。社区支持的 Helm 图表可用于以微服务模式部署 Loki。