apiVersion: flows.netobserv.io/v1beta2
kind: FlowCollector
metadata:
name: cluster
spec:
processor:
metrics:
disableAlerts: [NetObservLokiError, NetObservNoFlows] (1)
您可以使用Web控制台监控与网络可观测性操作符健康相关的警报。
关于网络可观测性操作符的健康和资源使用情况的指标位于Web控制台的**观察**→**仪表盘**页面中。您可以查看以下类别中操作符健康的指标:
每秒流量
采样
最近一分钟的错误
每秒丢弃的流量
Flowlogs-pipeline统计信息
Flowlogs-pipleine统计信息视图
eBPF代理统计信息视图
操作符统计信息
资源使用情况
如果触发警报,则会在**网络流量**和**主页**页面上显示一个健康警报横幅,引导您到仪表盘。在以下情况下会生成警报:
如果flowlogs-pipeline
工作负载由于Loki错误(例如达到Loki摄取速率限制)而丢弃流量,则会发生NetObservLokiError
警报。
如果在一定时间内没有摄取任何流量,则会发生NetObservNoFlows
警报。
如果网络可观测性eBPF代理哈希映射表已满,并且eBPF代理以性能下降的方式处理流量,或者当容量限制器被触发时,则会发生NetObservFlowsDropped
警报。
您可以从Web控制台的**仪表盘**页面访问关于网络可观测性操作符的健康和资源使用情况的指标。
您已安装网络可观测性操作符。
您可以作为具有cluster-admin
角色或具有所有项目查看权限的用户访问集群。
在Web控制台中,以**管理员**身份导航到**观察**→**仪表盘**。
从**仪表盘**下拉菜单中,选择**Netobserv/Health**。
查看页面上显示的操作符健康指标。
您可以通过编辑FlowCollector
资源来选择退出健康警报
在Web控制台中,导航到**操作符**→**已安装的操作符**。
在**NetObserv操作符**的**提供的API**标题下,选择**Flow Collector**。
选择**集群**,然后选择**YAML**选项卡。
添加spec.processor.metrics.disableAlerts
以禁用健康警报,如下面的YAML示例所示:
apiVersion: flows.netobserv.io/v1beta2
kind: FlowCollector
metadata:
name: cluster
spec:
processor:
metrics:
disableAlerts: [NetObservLokiError, NetObservNoFlows] (1)
1 | 您可以指定一个或一个包含两种类型的警报列表来禁用。 |
您可以为Netobserv仪表盘指标创建自定义告警规则,以便在达到Loki速率限制时触发告警。
您已以集群管理员角色的用户身份或具有所有项目查看权限的用户身份访问集群。
您已安装网络可观测性操作符。
单击导入图标+创建YAML文件。
向YAML文件添加告警规则配置。在下面的YAML示例中,当达到Loki速率限制时会创建一个告警。
apiVersion: monitoring.openshift.io/v1
kind: AlertingRule
metadata:
name: loki-alerts
namespace: openshift-monitoring
spec:
groups:
- name: LokiRateLimitAlerts
rules:
- alert: LokiTenantRateLimit
annotations:
message: |-
{{ $labels.job }} {{ $labels.route }} is experiencing 429 errors.
summary: "At any number of requests are responded with the rate limit error code."
expr: sum(irate(loki_request_duration_seconds_count{status_code="429"}[1m])) by (job, namespace, route) / sum(irate(loki_request_duration_seconds_count[1m])) by (job, namespace, route) * 100 > 0
for: 10s
labels:
severity: warning
单击创建将配置文件应用于集群。
当网络可观测性eBPF代理哈希映射表已满或容量限制器被触发时,会触发NetObservAgentFlowsDropped
告警。如果看到此告警,请考虑增加FlowCollector
中的cacheMaxFlows
,如下例所示。
增加 |
在Web控制台中,导航到**操作符**→**已安装的操作符**。
在网络可观测性操作符的提供的API标题下,选择Flow Collector。
选择集群,然后选择YAML选项卡。
增加spec.agent.ebpf.cacheMaxFlows
值,如下面的YAML示例所示。
apiVersion: flows.netobserv.io/v1beta2 kind: FlowCollector metadata: name: cluster spec: namespace: netobserv deploymentModel: Direct agent: type: eBPF ebpf: cacheMaxFlows: 200000 (1)
1 | 将cacheMaxFlows 值从NetObservAgentFlowsDropped 告警发生时的值增加。 |
有关创建可在仪表盘上看到的告警的更多信息,请参阅为用户定义的项目创建告警规则。