From d5ae3217d5934acbdd92f8ce7e48a0e9b73359f1 Mon Sep 17 00:00:00 2001 From: Jessica Dehn Date: Fri, 15 Sep 2023 10:52:39 -0500 Subject: [PATCH] STP-3705: Remove dashboard info now in SMA Signed-off-by: Jessica Dehn --- docs/README.md | 5 - docs/about_sat/introduction.md | 17 -- docs/dashboards/README.md | 4 - docs/dashboards/SAT_Grafana_Dashboards.md | 119 ------------- docs/dashboards/SAT_Kibana_Dashboards.md | 177 -------------------- docs/img/Fabric_PortState_Locations_UI.png | Bin 10312 -> 0 bytes docs/img/Grafana_Fabric_Congestion.png | Bin 13882 -> 0 bytes docs/img/Grafana_HSN_Errors.png | Bin 9558 -> 0 bytes docs/img/Grafana_rfc3635.png | Bin 11670 -> 0 bytes docs/img/SAT_Grafana_Fabric_Vars.png | Bin 8031 -> 0 bytes docs/release_notes/sat_2.6_release_notes.md | 5 + 11 files changed, 5 insertions(+), 322 deletions(-) delete mode 100644 docs/dashboards/README.md delete mode 100644 docs/dashboards/SAT_Grafana_Dashboards.md delete mode 100644 docs/dashboards/SAT_Kibana_Dashboards.md delete mode 100644 docs/img/Fabric_PortState_Locations_UI.png delete mode 100644 docs/img/Grafana_Fabric_Congestion.png delete mode 100644 docs/img/Grafana_HSN_Errors.png delete mode 100644 docs/img/Grafana_rfc3635.png delete mode 100644 docs/img/SAT_Grafana_Fabric_Vars.png diff --git a/docs/README.md b/docs/README.md index df877a00e..56eae1437 100644 --- a/docs/README.md +++ b/docs/README.md @@ -32,11 +32,6 @@ - [Authenticate SAT Commands](external_system.md#authenticate-sat-commands) - [Generate SAT S3 Credentials](external_system.md#generate-sat-s3-credentials) -## [SAT Dashboards](dashboards/README.md) - -- [SAT Kibana Dashboards](dashboards/SAT_Kibana_Dashboards.md) -- [SAT Grafana Dashboards](dashboards/SAT_Grafana_Dashboards.md) - ## [SAT Usage](usage/README.md) - [SAT Bootprep](usage/sat_bootprep.md) diff --git a/docs/about_sat/introduction.md b/docs/about_sat/introduction.md index 5e73754d0..eb082735b 100644 --- a/docs/about_sat/introduction.md +++ b/docs/about_sat/introduction.md @@ -9,23 +9,6 @@ components. SAT offers a command line utility which uses subcommands. There are similarities between SAT commands and `xt` commands used on the Cray XC platform. For more information on SAT commands, see [SAT Command Overview](#sat-command-overview). -Six Kibana Dashboards are included with SAT. They provide organized output for system health information. - -- [AER Kibana Dashboard](../dashboards/SAT_Kibana_Dashboards.md#aer-kibana-dashboard) -- [ATOM Kibana Dashboard](../dashboards/SAT_Kibana_Dashboards.md#atom-kibana-dashboard) -- [Heartbeat Kibana Dashboard](../dashboards/SAT_Kibana_Dashboards.md#heartbeat-kibana-dashboard) -- [Kernel Kibana Dashboard](../dashboards/SAT_Kibana_Dashboards.md#kernel-kibana-dashboard) -- [MCE Kibana Dashboard](../dashboards/SAT_Kibana_Dashboards.md#mce-kibana-dashboard) -- [RAS Daemon Kibana Dashboard](../dashboards/SAT_Kibana_Dashboards.md#ras-daemon-kibana-dashboard) - -Four Grafana Dashboards are included with SAT. They display messages that are generated by the HSN (High Speed Network) and -are reported through Redfish. - -- [Grafana Fabric Congestion Dashboard](../dashboards/SAT_Grafana_Dashboards.md#grafana-fabric-congestion-dashboard) -- [Grafana Fabric Errors Dashboard](../dashboards/SAT_Grafana_Dashboards.md#grafana-fabric-errors-dashboard) -- [Grafana Fabric Port State Dashboard](../dashboards/SAT_Grafana_Dashboards.md#grafana-fabric-port-state-dashboard) -- [Grafana Fabric RFC3635 Dashboard](../dashboards/SAT_Grafana_Dashboards.md#grafana-fabric-rfc3635-dashboard) - In CSM 1.3 and newer, the `sat` command is automatically available on all the Kubernetes control plane. For more information, see [SAT in CSM](sat_in_csm.md). Older versions of CSM do not have the `sat` command automatically available, and SAT diff --git a/docs/dashboards/README.md b/docs/dashboards/README.md deleted file mode 100644 index 123db754f..000000000 --- a/docs/dashboards/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# SAT Dashboards - -- [SAT Kibana Dashboards](SAT_Kibana_Dashboards.md) -- [SAT Grafana Dashboards](SAT_Grafana_Dashboards.md) diff --git a/docs/dashboards/SAT_Grafana_Dashboards.md b/docs/dashboards/SAT_Grafana_Dashboards.md deleted file mode 100644 index 53165463d..000000000 --- a/docs/dashboards/SAT_Grafana_Dashboards.md +++ /dev/null @@ -1,119 +0,0 @@ -# SAT Grafana Dashboards - -The SAT Grafana Dashboards display messages that are generated by the HSN (High Speed Network) and reported through -Redfish. The messages are displayed based on severity. - -Grafana can be accessed via web browser at the following URL: -`https://sma-grafana.cmn.`. - -(`ncn-m001#`) The value of `site-domain` can be obtained as follows: - -```bash -kubectl get secret site-init -n loftsman -o jsonpath='{.data.customizations\.yaml}' | \ - base64 -d | grep "external:" -``` - -That command will produce the following output, for example: - -```text - external: EXAMPLE_DOMAIN.com -``` - -This would result in the address for Grafana being `https://sma-grafana.cmn.EXAMPLE_DOMAIN.com`. - -For more information on accessing the Grafana Dashboards, refer to **Access the Grafana Monitoring UI** in the -SMA product documentation. - -For more information on the interpretation of metrics for the SAT Grafana Dashboards, refer to "Fabric Telemetry -Kafka Topics" in the SMA product documentation. - -## Navigate SAT Grafana Dashboards - -There are four Fabric Telemetry dashboards used in SAT that report on the HSN. Two contain chart panels and two display -telemetry in a tabular format. - -|Dashboard Name|Display Type| -|--------------|------------| -|Fabric Congestion|Chart Panels| -|Fabric RFC3635|Chart Panels| -|Fabric Errors|Tabular Format| -|Fabric Port State|Tabular Format| - -The tabular format presents a single point of telemetry for a given location and metric, either because the telemetry -is not numerical or that it changes infrequently. The value shown is the most recently reported value for that location -during the time range selected, if any. The interval setting is not used for tabular dashboards. - -## SAT Grafana Interval and Locations Options - -Shows the Interval and Locations Options for the available telemetry. - -![Grafana Interval and Locations Options](../img/SAT_Grafana_Fabric_Vars.png) - -The value of the **Interval** option sets the time resolution of the received telemetry. This works a bit like a -histogram, with the available telemetry in an interval of time going into a "bucket" and averaging out to a single -point on the chart or table. The special value *auto* will choose an interval based on the time range selected. - -For more information, refer to [Grafana Templates and Variables](https://grafana.com/docs/grafana/latest/reference/templating/#interval-variables). - -The **Locations** option allows restriction of the telemetry shown by locations, either individual links or all links -in a switch. The selection presented updates dynamically according to time range, except for the errors dashboard, -which always has entries for all links and switches, although the errors shown are restricted to the selected time -range. - -The chart panels for the RFC3635 and Congestion dashboards allow selection of a single location from the chart's legend -or the trace on the chart. - -## Grafana Fabric Congestion Dashboard - -![Grafana Fabric Congestion Dashboard](../img/Grafana_Fabric_Congestion.png) - -SAT Grafana Dashboards provide system administrators a way to view fabric telemetry data across all Rosetta switches in -the system and assess the past and present health of the high-speed network. It also allows the ability to drill down -to view data for specific ports on specific switches. - -This dashboard contains the variable, **Port Type** not found in the other dashboards. The possible values are *edge*, -*local*, and *global* and correspond to the link's relationship to the network topology. The locations presented in the -panels are restricted to the values (any combination, defaults to "all") selected. - -The metric values for links of a given port type are similar in value to each other but very distinct from the values of -other types. If the values for different port types are all plotted together, the values for links with lower values are -indistinguishable from zero when plotted. - -The port type of a link is reported as a port state "subtype" event when defined at port initialization. - -## Grafana Fabric Errors Dashboard - -![Grafana HSN Errors Dashboard](../img/Grafana_HSN_Errors.png) - -This dashboard reports error counters in a tabular format in three panels. - -There is no **Interval** option because this parameter is not used to set a coarseness of the data. Only a single value -is presented that displays the most recent value in the time range. - -Unlike other dashboards, the locations presented are all locations in the system rather than having telemetry within -the time range selected. However, the values are taken from telemetry within the time range. - -## Grafana Fabric Port State Dashboard - -![Grafana Fabric Port State Dashboard](../img/Fabric_PortState_Locations_UI.png) - -There is no **Interval** option because this parameter is not used to set a coarseness of the data. Only a single value -is presented that displays the most recent value in the time range. - -The Fabric Port State telemetry is distinct because it typically is not numeric. It also updates infrequently, so a -long time range may be necessary to obtain any values. Port State is refreshed daily, so a time range of 24 hours -results in all states for all links in the system being shown. - -The three columns named, *group*, *switch*, and *port* are not port state events, but extra information included with -all port state events. - -## Grafana Fabric RFC3635 Dashboard - -![Grafana Fabric RFC3635 Dashboard](../img/Grafana_rfc3635.png) - -For more information on performance counters, refer to -[Definitions of Managed Objects for the Ethernet-like Interface Types](https://tools.ietf.org/html/rfc3635), -an Internet standards document. - -Because these metrics are counters that only increase over time, the values plotted are the change in the counter's -value over the interval setting. diff --git a/docs/dashboards/SAT_Kibana_Dashboards.md b/docs/dashboards/SAT_Kibana_Dashboards.md deleted file mode 100644 index 1fbb7a871..000000000 --- a/docs/dashboards/SAT_Kibana_Dashboards.md +++ /dev/null @@ -1,177 +0,0 @@ -# SAT Kibana Dashboards - -Kibana is an open source analytics and visualization platform designed to search, view, and interact with data stored -in Elasticsearch indices. Kibana runs as a web service and has a browser-based interface. It offers visual output of -node data in the forms of charts, tables and maps that display real-time Elasticsearch queries. Viewing system data in -this way breaks down the complexity of large data volumes into easily understood information. - -Kibana can be accessed via web browser at the following URL: -`https://sma-kibana.cmn.`. - -(`ncn-m001#`) The value of `site-domain` can be obtained as follows: - -```bash -kubectl get secret site-init -n loftsman -o jsonpath='{.data.customizations\.yaml}' | \ - base64 -d | grep "external:" -``` - -That command will produce the following output, for example: - -```text - external: EXAMPLE_DOMAIN.com -``` - -This would result in the address for Kibana being `https://sma-kibana.cmn.EXAMPLE_DOMAIN.com`. - -For more information on accessing the Kibana Dashboards, refer to **View Logs Via Kibana** in the SMA product -documentation. - -Additional details about the AER, ATOM, Heartbeat, Kernel, MCE, and RAS Daemon Kibana Dashboards are included in this -table. - -|Dashboard|Short Description|Long Description|Kibana Visualization and Search Name| -|---------|-----------------|----------------|------------------------------------| -|`sat-aer`|AER corrected|Corrected Advanced Error Reporting messages from PCI Express devices on each node.|Visualization: `aer-corrected` Search: `sat-aer-corrected`| -|`sat-aer`|AER fatal|Fatal Advanced Error Reporting messages from PCI Express devices on each node.|Visualization: `aer-fatal` Search: `sat-aer-fatal`| -|`sat-atom`|ATOM failures|Application Task Orchestration and Management tests are run on a node when a job finishes. Test failures are logged.|`sat-atom-failed`| -|`sat-atom`|ATOM `admindown`|Application Task Orchestration and Management test failures can result in nodes being marked `admindown`. An `admindown` node is not available for job launch.|`sat-atom-admindown`| -|`sat-heartbeat`|Heartbeat loss events|Heartbeat loss event messages reported by the `hbtd` pods that monitor for heartbeats across nodes in the system.|`sat-heartbeat`| -|`sat-kernel`|Kernel assertions|The kernel software performs a failed assertion when some condition represents a serious fault. The node goes down.|`sat-kassertions`| -|`sat-kernel`|Kernel panics|The kernel panics when something is seriously wrong. The node goes down.|`sat-kernel-panic`| -|`sat-kernel`|Lustre bugs (LBUGs)|The Lustre software in the kernel stack performs a failed assertion when some condition related to file system logic represents a serious fault. The node goes down.|`sat-lbug`| -|`sat-kernel`|CPU stalls|CPU stalls are serous conditions that can reduce node performance, and sometimes cause a node to go down. Technically these are Read-Copy-Update stalls where software in the kernel stack holds onto memory for too long. Read-Copy-Update is a vital aspect of kernel performance and rather esoteric.|`sat-cpu-stall`| -|`sat-kernel`|Out of memory|An Out Of Memory (OOM) condition has occurred. The kernel must kill a process to continue. The kernel will select an expendable process when possible. If there is no expendable process the node usually goes down in some manner. Even if there are expendable processes the job is likely to be impacted. OOM conditions are best avoided.|`sat-oom`| -|`sat-mce`|MCE|Machine Check Exceptions (MCE) are errors detected at the processor level.|`sat-mce`| -|`sat-rasdaemon`|`rasdaemon` errors|Errors from the `rasdaemon` service on nodes. The `rasdaemon` service is the Reliability, Availability, and Serviceability Daemon, and it is intended to collect all hardware error events reported by the Linux kernel, including PCI and MCE errors. This may include certain HSN errors in the future.|`sat-rasdaemon-error`| -|`sat-rasdaemon`|`rasdaemon` messages|All messages from the `rasdaemon` service on nodes.|`sat-rasdaemon`| - -## Disable Search Highlighting in Kibana Dashboard - -By default, search highlighting is enabled. This procedure instructs how to disable search highlighting. - -The Kibana Dashboard should be open on the system. - -1. Navigate to **Management** - -1. Navigate to **Advanced Settings** in the Kibana section, below the Elastic search section - -1. Scroll down to the **Discover** section - -1. Change **Highlight results** from *on* to *off* - -1. Click **Save** to save changes - -## AER Kibana Dashboard - -The AER Dashboard displays errors that come from the PCI Express Advanced Error Reporting (AER) driver. These errors -are split up into separate visualizations depending on whether they are fatal or corrected errors. - -### View the AER Kibana Dashboard - -1. Go to the dashboard section. - -1. Select `sat-aer` dashboard. - -1. Choose the time range of interest. - -1. View the Corrected and Fatal Advanced Error Reporting messages from PCI Express devices on each node. View the - matching log messages in the panel(s) on the right, and view the counts of each message per NID in the panel(s) on - the left. If desired, results can be filtered by NID by clicking the icon showing a **+** inside a magnifying glass - next to each NID. - -## ATOM Kibana Dashboard - -The ATOM (Application Task Orchestration and Management) Dashboard displays node failures that occur during health -checks and application test failures. Some test failures are of *possible* interest even though a node is not marked -`admindown` or otherwise fails. They are of *clear* interest if a node is marked `admindown`, and might provide -clues if a node otherwise fails. They might also show application problems. - -### View the ATOM Kibana Dashboard - -HPE Cray EX is installed on the system along with the System Admin Toolkit, which contains the ATOM Kibana Dashboard. - -1. Go to the dashboard section. - -1. Select `sat-atom` dashboard. - -1. Choose the time range of interest. - -1. View any nodes marked `admindown` and any ATOM test failures. These failures occur during health checks and - application test failures. Test failures marked `admindown` are important to note. View the matching log messages - in the panel(s) on the right, and view the counts of each message per NID in the panel(s) on the left. If desired, - results can be filtered by NID by clicking the icon showing a **+** inside a magnifying glass next to each NID. - -## Heartbeat Kibana Dashboard - -The Heartbeat Dashboard displays heartbeat loss messages that are logged by the `hbtd` pods in the system. The `hbtd` -pods are responsible for monitoring nodes in the system for heartbeat loss. - -### View the Heartbeat Kibana Dashboard - -1. Go to the dashboard section. - -1. Select `sat-heartbeat` dashboard. - -1. Choose the time range of interest. - -1. View the heartbeat loss messages that are logged by the `hbtd` pods in the system. The `hbtd` pods are responsible - for monitoring nodes in the system for heartbeat loss. View the matching log messages in the panel. - -## Kernel Kibana Dashboard - -The Kernel Dashboard displays compute node failures such as kernel assertions, kernel panics, and Lustre LBUG messages. -The messages reveal if Lustre has experienced a fatal error on any compute nodes in the system. A CPU stall is a serious -problem that might result in a node failure. Out-of-memory conditions can be due to applications or system problems and -may require expert analysis. They provide useful clues for some node failures and may reveal if an application is using -too much memory. - -### View the Kernel Kibana Dashboard - -1. Go to the dashboard section. - -1. Select `sat-kernel` dashboard. - -1. Choose the time range of interest. - -1. View the compute node failures such as kernel assertions, kernel panics, and Lustre LBUG messages. View the matching - log messages in the panel(s) on the right, and view the counts of each message per NID in the panel(s) on the left. - If desired, results can be filtered by NID by clicking the icon showing a **+** inside a magnifying glass next to - each NID. - -## MCE Kibana Dashboard - -The MCE Dashboard displays CPU detected processor-level hardware errors. - -### View the MCE Kibana Dashboard - -1. Go to the dashboard section. - -1. Select `sat-mce` dashboard. - -1. Choose the time range of interest. - -1. View the Machine Check Exceptions (MCEs) listed including the counts per NID (node). For an MCE, the CPU number and - DIMM number can be found in the message, if applicable. View the matching log messages in the panel(s) on the right, - and view the counts of each message per NID in the panel(s) on the left. If desired, results can be filtered by NID - by clicking the icon showing a **+** inside a magnifying glass next to each NID. - -## RAS Daemon Kibana Dashboard - -The RAS Daemon Dashboard displays errors that come from the Reliability, Availability, and Serviceability (RAS) daemon -service on nodes in the system. This service collects all hardware error events reported by the Linux kernel, including -PCI and MCE errors. As a result there may be some duplication between the messages presented here and the messages -presented in the MCE and AER dashboards. This dashboard splits up the messages into two separate visualizations, one -for only messages of severity `emerg` or `err` and another for all messages from `rasdaemon`. - -### View the RAS Daemon Kibana Dashboard - -1. Go to the dashboard section. - -1. Select `sat-rasdaemon` dashboard. - -1. Choose the time range of interest. - -1. View the errors that come from the Reliability, Availability, and Serviceability (RAS) daemon service on nodes in - the system. View the matching log messages in the panel(s) on the right, and view the counts of each message per NID - in the panel(s) on the left. If desired, results can be filtered by NID by clicking the icon showing a **+** inside - a magnifying glass next to each NID. diff --git a/docs/img/Fabric_PortState_Locations_UI.png b/docs/img/Fabric_PortState_Locations_UI.png deleted file mode 100644 index 704511ebce3d09b05ef60e3c174c516850b1e875..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10312 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 F{{e^I_u2pe diff --git a/docs/img/Grafana_Fabric_Congestion.png b/docs/img/Grafana_Fabric_Congestion.png deleted file mode 100644 index dbf481d94ce7036204bb81960b1e9ecf3b28182d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13882 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 V3c#c@x&KcpDRDWmQjt$z{ug;*Mo0hv diff --git a/docs/img/Grafana_HSN_Errors.png b/docs/img/Grafana_HSN_Errors.png deleted file mode 100644 index f43b7d02a6f59e15f0d4289ae9f98d81f47d1801..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9558 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 diff --git a/docs/img/Grafana_rfc3635.png b/docs/img/Grafana_rfc3635.png deleted file mode 100644 index dff176c82d085701f29a34152934d91f08de1242..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11670 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 KDwfGxh5R3D=9yUl diff --git a/docs/img/SAT_Grafana_Fabric_Vars.png b/docs/img/SAT_Grafana_Fabric_Vars.png deleted file mode 100644 index 194d75b124e8e6289c15cde200bda4ac11006cbe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8031 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 hczpkVy7lw)-0`;Ui@PhQbZ37zt14