2.4. 增强的可靠性和性能
配置以确保 Loki 在生产环境中的可靠性和效率。
2.4.1. 使用简短的令牌启用对基于云的日志存储的身份验证 复制链接链接已复制到粘贴板!
工作负载身份联邦允许使用简短的令牌对基于云的日志存储进行身份验证。
流程
使用以下选项之一启用身份验证:
-
如果使用 OpenShift Container Platform Web 控制台安装 Loki Operator,则会自动检测到使用简短令牌的集群。系统将提示您创建角色,并提供 Loki Operator 所需的数据,以创建
CredentialsRequest对象,该对象填充 secret。 如果使用 OpenShift CLI (
oc) 安装 Loki Operator,则必须使用正确的模板为存储供应商手动创建Subscription对象,如下例所示。此身份验证策略只支持所示的存储供应商。Azure 示例订阅
Copy to Clipboard Copied! Toggle word wrap Toggle overflow AWS 示例订阅示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
如果使用 OpenShift Container Platform Web 控制台安装 Loki Operator,则会自动检测到使用简短令牌的集群。系统将提示您创建角色,并提供 Loki Operator 所需的数据,以创建
2.4.2. 配置 Loki 以容忍节点故障 复制链接链接已复制到粘贴板!
Loki Operator 支持设置 pod 反关联性规则,以请求同一组件的 pod 调度到集群中的不同可用节点上。
关联性是 pod 的一个属性,用于控制它们希望调度到的节点。反关联性是 pod 的一个属性,用于阻止 pod 调度到某个节点上。
在 OpenShift Container Platform 中,可以借助 pod 关联性和 pod 反关联性来根据其他 pod 上的键/值标签限制 pod 有资格调度到哪些节点。
Operator 会为所有 Loki 组件设置默认、首选的 podAntiAffinity 规则,其中包括 compactor, distributor, gateway, indexGateway, ingester, querier, queryFrontend, 和 ruler 组件。
您可以通过在 requiredDuringSchedulingIgnoredDuringExecution 字段中配置所需的设置来覆盖 Loki 组件的首选 podAntiAffinity 设置:
ingester 组件的用户设置示例
2.4.3. 集群重启过程中的 LokiStack 行为 复制链接链接已复制到粘贴板!
当 OpenShift Container Platform 集群重启时,LokiStack ingestion 和查询路径将继续在可用于节点的可用 CPU 和内存资源中运行。这意味着 OpenShift Container Platform 集群更新过程中,LokiStack 没有停机。此行为通过使用 PodDisruptionBudget 资源来实现。Loki Operator 为 Loki 置备 PodDisruptionBudget 资源,它决定了每个组件必须可用的最少 pod 数量,以确保特定条件下正常操作。