6.2. 将警报作为开发者管理
在 OpenShift Container Platform 中,您可以通过 Alerting UI 管理警报、静默和警报规则。
Alerting UI 中可用的警报、静默和警报规则与您可访问的项目相关。
6.2.1. 从 Developer 视角访问 Alerting UI
Alerting UI 可通过 OpenShift Container Platform Web 控制台的 Developer 视角访问。
- 从 Developer 视角中,进入 Observe 并进入 Alerts 选项卡。
- 从 Project: 列表中选择您要管理警报的项目。
在这个视角中,警报、静默和警报规则都通过 Alerts 标签页管理。Alerts 选项卡中显示的结果特定于所选项目。
在 Developer 视角中,您可以从可在 Project: <project_name> 列表中访问的核心 OpenShift Container Platform 和用户定义的项目中选择。但是,如果您没有以集群管理员身份登录,则不会显示与 OpenShift Container Platform 核心项目相关的警报、静默和警报规则。
6.2.2. 从 Developer 视角获取警报、静默和警报规则的信息
Alerting UI 提供有关警报及其相关警报规则和静默的详细信息。
先决条件
- 您可以使用具有查看警报的项目查看权限的用户访问集群。
流程
要获取有关警报、静默和警报规则的信息:
- 
							从 OpenShift Container Platform Web 控制台的 Developer 视角中,进入 Observe < project_name> Alerts 页。 
- 查看警报、静默或警报规则的详情: - 可以通过在警报名称旁边点大于符号(>)来查看警报详情,然后从列表中选择警报。
- 可以通过在 Alert details 页面的 Silenced by 部分点静默详情来查看静默详情。Silence details 页面包括以下信息: - 警报指定条件
- 开始时间
- 结束时间
- 静默状态
- 触发警报的数目和列表
 
- 
									点 Alerts 页中的警报旁的 
									 菜单来查看 警报规则详情,然后点 View Alerting Rule。 菜单来查看 警报规则详情,然后点 View Alerting Rule。
 
Developer 视角中仅显示与所选项目相关的警报、静默和警报规则。
6.2.3. 管理静默
您可以在 Developer 视角中为 OpenShift Container Platform Web 控制台中的警报创建静默。在创建静默后,您可以查看、编辑这个静默,并可以使其过期。您还不会在警报触发时收到有关静默警报的通知。
在创建静默时,它们会在 Alertmanager pod 之间复制。但是,如果您没有为 Alertmanager 配置持久性存储,静默可能会丢失。例如,如果所有 Alertmanager pod 同时重启,会出现这种情况。
6.2.3.1. 从 Developer 视角静默警报
您可以静默特定的警报或静默与您定义的规格匹配的警报。
先决条件
- 
								如果您是集群管理员,可以使用具有 cluster-admin角色的用户访问集群。
- 如果您是非管理员用户,您可以使用具有以下用户角色的用户访问集群: - 
										cluster-monitoring-view集群角色,允许您访问 Alertmanager。
- 
										monitoring-alertmanager-edit角色,允许您在 web 控制台的 Administrator 视角中创建和静默警报
- 
										monitoring-rules-edit集群角色,允许您在 web 控制台的 Developer 视角中创建和静默警报。
 
- 
										
流程
静默特定的警报:
- 从 OpenShift Container Platform Web 控制台的 Developer 视角,进入 Observe 并进入 Alerts 选项卡。
- 从 Project: 列表中选择您要静默警报的项目。
- 如有必要,点警报名称旁边的大于符号(>)来扩展警报的详情。
- 在扩展视图中点警报消息以打开警报的 Alert details 页面。
- 点 Silence alert,打开带有警报默认配置的静默警报页。
- 可选:更改静默的默认配置详情。 注意- 在保存静默前,需要添加一个注释信息。 
- 要保存静默,点 Silence。
静默一组警报:
- 从 OpenShift Container Platform Web 控制台的 Developer 视角,进入 Observe 并进入 Silences 选项卡。
- 从 Project: 列表中选择您要静默警报的项目。
- 点 Create silence。
- 在 Create silence 页面中,设置警报的持续时间和标签详情。 注意- 在保存静默前,需要添加一个注释信息。 
- 要为与您输入的标签匹配的警报创建静默,请点 Silence。
6.2.3.2. 从 Developer 视角编辑静默
您可以编辑一个静默,这会使现有静默到期,然后创建一个带有相关配置变化的静默。
先决条件
- 
								如果您是集群管理员,可以使用具有 cluster-admin角色的用户访问集群。
- 如果您是非管理员用户,您可以使用具有以下用户角色的用户访问集群: - 
										cluster-monitoring-view集群角色,允许您访问 Alertmanager。
- 
										monitoring-rules-edit集群角色,允许您在 web 控制台的 Developer 视角中创建和静默警报。
 
- 
										
流程
- 从 OpenShift Container Platform Web 控制台的 Developer 视角,进入 Observe 并进入 Silences 选项卡。
- 从 Project: 列表中选择您要编辑静默的项目。
- 针对您想要修改的静默,点  并选择 Edit silence。 并选择 Edit silence。- 或者,您可以点 Actions,然后在静默的 Silence details 页面中选择 Edit silence。 
- 在 Edit silence 页面中,进行更改并点 Silence。这样做会使现有静默到期,并创建带有更新的配置。
6.2.3.3. 从 Developer 视角使静默到期
您可以使单个静默或多个静默到期。使静默过期的效果是,永久取消激活它。
您无法删除已过期、静默的警报。超过 120 小时的过期的静默会被垃圾收集。
先决条件
- 
								如果您是集群管理员,可以使用具有 cluster-admin角色的用户访问集群。
- 如果您是非管理员用户,您可以使用具有以下用户角色的用户访问集群: - 
										cluster-monitoring-view集群角色,允许您访问 Alertmanager。
- 
										monitoring-rules-edit集群角色,允许您在 web 控制台的 Developer 视角中创建和静默警报。
 
- 
										
流程
- 从 OpenShift Container Platform Web 控制台的 Developer 视角,进入 Observe 并进入 Silences 选项卡。
- 从 Project: 列表中选择您要使静默到期的项目。
- 对于您要过期的静默,选择对应行的复选框。
- 点 Expire 1 silence 使一个静默过期,或点 Expire <n> silences 使多个静默过期(其中 <n> 是你选择的静默数)。 - 另外,要使单个静默到期,您还可以点 Actions,然后在静默的 Silence details 页面中选择 Expire silence。 
6.2.4. 为用户定义的项目管理警报规则
在 OpenShift Container Platform 中,您可以为用户定义的项目创建、查看、编辑和删除警报规则。这些警报规则将根据所选指标的值触发警报。
6.2.4.1. 为用户定义的项目创建警报规则
您可以为用户定义的项目创建警报规则。这些警报规则将根据所选指标的值触发警报。
- 当创建警报规则时,如果在其他项目中存在具有相同名称的规则,则对其强制使用项目标签。
- 为了帮助用户了解警报的影响和原因,请确保您的警报规则包含警报消息和严重性值。
先决条件
- 您已为用户定义的项目启用了监控。
- 
								您以集群管理员身份登录,或作为具有用于创建警报规则的项目的 monitoring-rules-edit集群角色的用户登录。
- 
								已安装 OpenShift CLI(oc)。
流程
- 
								为警报规则创建 YAML 文件。在本例中,该文件名为 example-app-alerting-rule.yaml。
- 向 YAML 文件添加警报规则配置。以下示例创建一个名为 - example-alert的新警报规则。当示例服务公开的- version指标变为- 0时,警报规则会触发警报:- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 将配置文件应用到集群: - oc apply -f example-app-alerting-rule.yaml - $ oc apply -f example-app-alerting-rule.yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
6.2.4.2. 访问用户定义的项目的警报规则
						要列出用户定义的项目的警报规则,您必须已被分配该项目的 monitoring-rules-view 集群角色。
					
先决条件
- 您已为用户定义的项目启用了监控。
- 
								您以具有项目的 monitoring-rules-view集群角色的用户身份登录。
- 
								已安装 OpenShift CLI(oc)。
流程
- 列出 - <project>中的警报规则:- oc -n <project> get prometheusrule - $ oc -n <project> get prometheusrule- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 要列出警报规则的配置,请运行以下命令: - oc -n <project> get prometheusrule <rule> -o yaml - $ oc -n <project> get prometheusrule <rule> -o yaml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
6.2.4.3. 为用户定义的项目删除警报规则
您可以为用户定义的项目删除警报规则。
先决条件
- 您已为用户定义的项目启用了监控。
- 
								您以集群管理员身份登录,或作为具有用于创建警报规则的项目的 monitoring-rules-edit集群角色的用户登录。
- 
								已安装 OpenShift CLI(oc)。
流程
- 要删除 - <namespace>中的规则- <alerting_rule>,请运行以下命令:- oc -n <namespace> delete prometheusrule <alerting_rule> - $ oc -n <namespace> delete prometheusrule <alerting_rule>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow