From 72e142556a40ddc9ae875a7996bc57d687c8e61a Mon Sep 17 00:00:00 2001 From: Pavel Semyonov Date: Wed, 20 Dec 2023 15:00:31 +0700 Subject: [PATCH 1/6] Add TCM stateboard page --- doc/reference/tooling/tcm/index.rst | 1 + .../tooling/tcm/tcm_cluster_monitoring.rst | 96 +++++++++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 doc/reference/tooling/tcm/tcm_cluster_monitoring.rst diff --git a/doc/reference/tooling/tcm/index.rst b/doc/reference/tooling/tcm/index.rst index 4b52edfffa..c9120a714b 100644 --- a/doc/reference/tooling/tcm/index.rst +++ b/doc/reference/tooling/tcm/index.rst @@ -37,6 +37,7 @@ to read data. LDAP authorization is supported as well. tcm_connect_clusters tcm_cluster_config + tcm_cluster_monitoring tcm_access_control tcm_audit_log tcm_configuration diff --git a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst new file mode 100644 index 0000000000..7ba9be251a --- /dev/null +++ b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst @@ -0,0 +1,96 @@ +.. _tcm_cluster_monitoring: + +Cluster monitoring +================== + +|tcm_full_name| provides means for monitoring various aspects of connected clusters, +such as: + +* topology +* instance state +* memory usage +* data distribution +* Tarantool versions + +Cluster monitoring tools are available on the **Cluster** > **Stateboard** page. + +.. _tcm_cluster_monitoring_topology: + +Cluster topology +---------------- + +The cluster topology is displayed on the **Stateboard** page in one of two forms: +a list or a graph. The list view is used by default. In this view, each row contains +the general information about the instance: its current state, memory usage and limit, +and other parameters. In the graph view, the instance state is shown by its color. +You can move the graph vertexes to arrange them as you like, and zoom in and out, +which is helpful for bigger clusters. To switch between the list +and the graph view, use the buttons on the right of the search bar on the **Stateboard** page. + +By default, the cluster topology is shown hierarchically as it's defined in the configuration: +instances are grouped by their replica set, and replica sets are grouped by +their configuration group. + +For better navigation across the cluster, you can adjust the instance grouping. +For example, you can group instances by their roles or custom tags defined in the configuration. +A typical case for such tags is adding a geographical markers to instances. In this case, +you see if issues happen in a specific data center or server. + +To change the instance grouping, click **Group by** in the **Actions** menu on the **Stateboard** page. +Then add or remove grouping criteria. + +You can filter the instances shown on the **Stateboard** page using the search bar +at the top. It has predefined filters that select: + +* instances with errors or warnings +* leader or read-only instances +* instances with no issues +* stale instances + +To display all instances, delete the filter applied in the search bar. + +To view the detailed information about an instance or connect to it, click its +name in the cluster view. See :ref:`tcm_cluster_monitoring_instance_state` to learn +what exactly you can do with an instance from |tcm|. + + +.. _tcm_cluster_monitoring_instance_state: + +Instance state +-------------- + +stateboard +list of instances +memory: used/limit +sharding: buckets +open instance: +- details +- state +- terminal +- warnings if any + +The general information about the state of cluster instances is shown in the +list view of the cluster topology. Each row contains the information about the instance +status, used and available memory, read-only status, and virtual buckets for sharded +clusters. + +To view the detailed information about a specific instances, click the corresponding +row in the instances list or vertex of the graph. On the instance page, you can +view its configuration overview, current state (with warning and error messages if any), +and the detailed Tarantool information returned by the functions ``box.info``, +``box.stat`` and other. + +Additionally, on the instance details page there is a terminal that enables running +arbitrary Lua code on the instance. + +.. _tcm_cluster_monitoring_versions: + +Tarantool versions +------------------ + +The **Stateboard** page displays common information about Tarantool versions running on +the cluster nodes: the version and the number of instances that run this version. +The versions information + +To view the Tarantool version running on an specific instance, click its name in +the instances list or graph and open the **Details** tab. From 509aede9a16f511fbfe0c2f4d51d4028b9aa6d27 Mon Sep 17 00:00:00 2001 From: Pavel Semyonov Date: Wed, 20 Dec 2023 15:18:02 +0700 Subject: [PATCH 2/6] Add TCM stateboard page --- .../tooling/tcm/tcm_cluster_monitoring.rst | 40 +++++++++---------- 1 file changed, 18 insertions(+), 22 deletions(-) diff --git a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst index 7ba9be251a..b9450072c9 100644 --- a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst +++ b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst @@ -27,6 +27,11 @@ You can move the graph vertexes to arrange them as you like, and zoom in and out which is helpful for bigger clusters. To switch between the list and the graph view, use the buttons on the right of the search bar on the **Stateboard** page. +.. _tcm_cluster_monitoring_topology_group: + +Instance grouping +~~~~~~~~~~~~~~~~~ + By default, the cluster topology is shown hierarchically as it's defined in the configuration: instances are grouped by their replica set, and replica sets are grouped by their configuration group. @@ -39,6 +44,11 @@ you see if issues happen in a specific data center or server. To change the instance grouping, click **Group by** in the **Actions** menu on the **Stateboard** page. Then add or remove grouping criteria. +.. _tcm_cluster_monitoring_topology_filters: + +Filtering +~~~~~~~~~ + You can filter the instances shown on the **Stateboard** page using the search bar at the top. It has predefined filters that select: @@ -49,36 +59,22 @@ at the top. It has predefined filters that select: To display all instances, delete the filter applied in the search bar. -To view the detailed information about an instance or connect to it, click its -name in the cluster view. See :ref:`tcm_cluster_monitoring_instance_state` to learn -what exactly you can do with an instance from |tcm|. +.. _tcm_cluster_monitoring_instance_details: - -.. _tcm_cluster_monitoring_instance_state: - -Instance state --------------- - -stateboard -list of instances -memory: used/limit -sharding: buckets -open instance: -- details -- state -- terminal -- warnings if any +Instance details +---------------- The general information about the state of cluster instances is shown in the list view of the cluster topology. Each row contains the information about the instance status, used and available memory, read-only status, and virtual buckets for sharded clusters. -To view the detailed information about a specific instances, click the corresponding +To view the detailed information about an instance or connect to it, click the corresponding row in the instances list or vertex of the graph. On the instance page, you can -view its configuration overview, current state (with warning and error messages if any), -and the detailed Tarantool information returned by the functions ``box.info``, -``box.stat`` and other. +find its configuration overview, current state (with warning and error messages if any), +and the detailed Tarantool information returned by the instance introspection functions +from :ref:`box_introspection-box_info`, :ref:`box_introspection-box_stat`, and other +built-in modules. Additionally, on the instance details page there is a terminal that enables running arbitrary Lua code on the instance. From 6c2d108cf6e05d10d06fd167d45e2a99aefad9da Mon Sep 17 00:00:00 2001 From: Pavel Semyonov Date: Wed, 20 Dec 2023 17:53:06 +0700 Subject: [PATCH 3/6] Add TCM stateboard page --- .../tooling/tcm/tcm_cluster_monitoring.rst | 45 ++++++++++++++----- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst index b9450072c9..b584809bc9 100644 --- a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst +++ b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst @@ -20,12 +20,33 @@ Cluster topology ---------------- The cluster topology is displayed on the **Stateboard** page in one of two forms: -a list or a graph. The list view is used by default. In this view, each row contains +a list or a graph. + +.. _tcm_cluster_monitoring_topology_list: + +List view +~~~~~~~~~ + +The list view of the cluster topology is used by default. In this view, each row contains the general information about the instance: its current state, memory usage and limit, -and other parameters. In the graph view, the instance state is shown by its color. +and other parameters. + +In the list view, |tcm| additionally displays the Tarantool version information +and instance states on circle diagrams. You can click the sectors of these diagrams +to filter the instances with the selected versions and states. + +To switch to the list view, click the list button on the right of the search bar on the **Stateboard** page. + +.. _tcm_cluster_monitoring_topology_graph: + +Graph view +~~~~~~~~~~ + +In the graph view, the instance state is shown by its color. You can move the graph vertexes to arrange them as you like, and zoom in and out, -which is helpful for bigger clusters. To switch between the list -and the graph view, use the buttons on the right of the search bar on the **Stateboard** page. +which is helpful for bigger clusters. + +To switch to the graph view, click the graph button on the right of the search bar on the **Stateboard** page. .. _tcm_cluster_monitoring_topology_group: @@ -79,14 +100,14 @@ built-in modules. Additionally, on the instance details page there is a terminal that enables running arbitrary Lua code on the instance. -.. _tcm_cluster_monitoring_versions: +.. _tcm_cluster_monitoring_urls: -Tarantool versions ------------------- +Additional monitoring services +------------------------------ -The **Stateboard** page displays common information about Tarantool versions running on -the cluster nodes: the version and the number of instances that run this version. -The versions information +When you :ref:`connect a cluster ` to |tcm|, you can specify +URLs of external services linked to this cluster. For example, this can be a Grafana +server that monitors the cluster metrics. -To view the Tarantool version running on an specific instance, click its name in -the instances list or graph and open the **Details** tab. +All the URLs added for a cluster are available in the **Actions** menu on the +**Stateboard** page. \ No newline at end of file From 3c8ae33a915d3c14057ced8825675e102443503f Mon Sep 17 00:00:00 2001 From: Pavel Semyonov Date: Thu, 21 Dec 2023 13:18:17 +0700 Subject: [PATCH 4/6] Fix --- .../tooling/tcm/tcm_cluster_monitoring.rst | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst index b584809bc9..982286d281 100644 --- a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst +++ b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst @@ -28,7 +28,7 @@ List view ~~~~~~~~~ The list view of the cluster topology is used by default. In this view, each row contains -the general information about the instance: its current state, memory usage and limit, +the general information about an instance: its current state, memory usage and limit, and other parameters. In the list view, |tcm| additionally displays the Tarantool version information @@ -42,7 +42,8 @@ To switch to the list view, click the list button on the right of the search bar Graph view ~~~~~~~~~~ -In the graph view, the instance state is shown by its color. +The graph view of the cluster topology is shown in a tree-like structure where +leafs are the cluster's instance. Each instance's state is shown by its color. You can move the graph vertexes to arrange them as you like, and zoom in and out, which is helpful for bigger clusters. @@ -91,13 +92,16 @@ status, used and available memory, read-only status, and virtual buckets for sha clusters. To view the detailed information about an instance or connect to it, click the corresponding -row in the instances list or vertex of the graph. On the instance page, you can -find its configuration overview, current state (with warning and error messages if any), -and the detailed Tarantool information returned by the instance introspection functions -from :ref:`box_introspection-box_info`, :ref:`box_introspection-box_stat`, and other -built-in modules. +row in the instances list or a vertex of the graph. On the instance page, you can +find: -Additionally, on the instance details page there is a terminal that enables running +* its configuration overview +* current state (with warning and error messages if any) +* the detailed Tarantool information returned by the instance introspection functions + from :ref:`box_introspection-box_info`, :ref:`box_introspection-box_stat`, and other + built-in modules. + +Additionally, on the instance details page there is a terminal in which you can execute arbitrary Lua code on the instance. .. _tcm_cluster_monitoring_urls: @@ -109,5 +113,5 @@ When you :ref:`connect a cluster ` to |tcm|, you can speci URLs of external services linked to this cluster. For example, this can be a Grafana server that monitors the cluster metrics. -All the URLs added for a cluster are available in the **Actions** menu on the -**Stateboard** page. \ No newline at end of file +All the URLs added for a cluster are available for quick access in the **Actions** +menu on the **Stateboard** page. \ No newline at end of file From b665ed02893f9616dba588398b377a399f3dfade Mon Sep 17 00:00:00 2001 From: Pavel Semyonov Date: Thu, 21 Dec 2023 15:38:00 +0700 Subject: [PATCH 5/6] Update doc/reference/tooling/tcm/tcm_cluster_monitoring.rst Co-authored-by: Kseniia Antonova <73473519+xuniq@users.noreply.github.com> --- doc/reference/tooling/tcm/tcm_cluster_monitoring.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst index 982286d281..6088e13397 100644 --- a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst +++ b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst @@ -43,7 +43,7 @@ Graph view ~~~~~~~~~~ The graph view of the cluster topology is shown in a tree-like structure where -leafs are the cluster's instance. Each instance's state is shown by its color. +leafs are the cluster's instances. Each instance's state is shown by its color. You can move the graph vertexes to arrange them as you like, and zoom in and out, which is helpful for bigger clusters. From e88eca56c6429ebe3a292d51177f911dc17005b8 Mon Sep 17 00:00:00 2001 From: Pavel Semyonov Date: Thu, 21 Dec 2023 18:29:14 +0700 Subject: [PATCH 6/6] Fix --- doc/reference/tooling/tcm/tcm_cluster_monitoring.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst index 6088e13397..94f8444c21 100644 --- a/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst +++ b/doc/reference/tooling/tcm/tcm_cluster_monitoring.rst @@ -98,8 +98,8 @@ find: * its configuration overview * current state (with warning and error messages if any) * the detailed Tarantool information returned by the instance introspection functions - from :ref:`box_introspection-box_info`, :ref:`box_introspection-box_stat`, and other - built-in modules. + from :ref:`box.info `, :ref:`box.stat `, + and other built-in modules. Additionally, on the instance details page there is a terminal in which you can execute arbitrary Lua code on the instance.