Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Admin UI docs #2534

Closed
wants to merge 11 commits into from
Closed

[WIP] Admin UI docs #2534

wants to merge 11 commits into from

Conversation

Amruta-Ranade
Copy link
Contributor

@Amruta-Ranade Amruta-Ranade commented Feb 15, 2018

Closes #2260, #2033, #2466

@cockroach-teamcity
Copy link
Member

This change is Reviewable

@Amruta-Ranade
Copy link
Contributor Author

@vilterp @couchand @josueeee
I have added the draft doc for the Node Map. It's not yet polished, but wanted to check if I am on the right track. Let me know what you think.

(PS: You can ignore the housekeeping and cleanup tasks for other Admin UI docs. For now, a review of the Node Map doc is what I need).

Copy link
Contributor

@vilterp vilterp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gave it a skim; looks good overall! Left a couple of nits.


| Node | Region | Datacenter |
| ------ | ------ | ------ |
| N1 | us-east | us-east-1 |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: maybe just 1 or n1

--host=localhost \
--port=26257 \
--http-port=8080 \
--join=localhost:26257,localhost:26258,localhost:26259
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: only need to specify one other address in join flag. Also, the first node doesn't have anyone to join, so maybe leave it off.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I kept this consistent with other docs.


<img src="{{ 'images/admin-ui-node-map-components.png' | relative_url }}" alt="CockroachDB Admin UI Summary Panel" style="border:1px solid #eee;max-width:90%" />

## Location Co-ordinates for Reference
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: I think coordinates is one word, without a dash

| Asia Pacific (Singapore) | ap-southeast-1 | asia-southeast1 | Southeast Asia | 1.352083 | 103.819836 |
| Asia Pacific (Sydney) | ap-southeast-2 | australia-southeast1 | | -33.86882 | 151.209296 |
| Asia Pacific (Mumbai) | ap-south-1 | asia-south1 | West India | 19.075984 | 72.877656 |
| South America (São Paulo) | sa-east-1 | southamerica-east1 | Brazil South | -23.55052 | -46.633309 |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe include these in SQL insert statement form, i.e.

INSERT INTO system.locations VALUES
  ('region', 'us-east-1', 37.478397, -76.453077),
  ('region', 'us-east-2', 40.417287, -82.907123),
  ...

So people can just paste the entire table into the SQL shell if they want?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@vilterp I tried doing it, but it made the table hideous. Now I am thinking of taking out the AWS, Azure, GCE codes and just having list of geographical regions and coordinates. Thoughts?


Area | Description
--------|----
[Cluster Visualization]() | View and monitor the metrics and geographical configuration of your cluster.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this entry is still relevant does it need a link?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

"urls": [
"/${VERSION}/admin-ui-overview-dashboard.html"
"/${VERSION}/admin-ui-metrics-dashboard.html"
]
},
{
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

commenting here since I can't comment on the images themselves:

node-map-components:

  • it might be useful to have a locality example as well to highlight the (subtle) differences
  • I believe the capacity value on the right is the total capacity, not available capacity.
  • I would quibble with "real-time", since these figures are really short-term averages... perhaps "current"?

node-map

  • it looks like this is a mockup, not a screenshot, which is mostly fine except that there are some inconsistencies.

ID | The ID of the node.
Address | The address of the node. You can click on the address to view further details about the node.
Down Since | How long the node has been down.
The main panel display changes for each page:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this reads oddly

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

umm..it has a minor grammatical error. But other than that, I don't see why this reads oddly? :|

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess it's the doubling of "panel" and "display" that's throwing me off, plus the fact that "display" could be a noun or a verb? I'm not sure exactly what I meant originally.

#### Decommissioned Nodes
Page | Main Panel Component
-----------|------------
Cluster Overview | <ul><li>[Cluster Overview panel](admin-ui-access-and-navigate.html#cluster-overview-panel)</li><li>Either the [Node List](admin-ui-access-and-navigate.html#nodes-list) (for OSS users) or [Cluster Visualization]() (for enterprise users)</li></ul>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

perhaps "for core users" rather than "for OSS users", to harmonize with the way we refer to it elsewhere?

@@ -0,0 +1,64 @@
---
title: Admin UI Time Series Graphs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For my part, I would prefer if we used the word "Chart" everywhere, rather than "Graph" (see cockroachdb/cockroach#23419)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@couchand We are renaming all graphs to charts?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we actually used the term "graph" in any user-facing capacity until the "custom graph" page was created. Please correct me if I missed it somewhere.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed, punting till after 2.0


<img src="{{ 'images/admin-ui-node-map-components.png' | relative_url }}" alt="CockroachDB Admin UI Summary Panel" style="border:1px solid #eee;max-width:90%" />

## Location Coordinates for Reference
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like it's just making more work for future us to keep it up, but I guess it's helpful...


#### Step 6. View the Node Map

[Navigate to the **Overview page**](admin-ui-cluster-overview.html) and switch to the **Node Map** view from the drop-down box.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If they've followed everything correctly to this point, the node map should be the default.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@couchand Umm..not sure about that.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I think it's an unresolved question in the implementation, but that is the goal: if a user has an enterprise license, and all their nodes have localities and locations, the map should be the default view.


1. Click on map component marked as **region=us-east** on the Node Map. The datacenter view is displayed.
2. Click on the datacenter component marked as **datacenter=us-east-1**. The individual node components are displayed.
3. To navigate back to the cluster view, either click on **Cluster** in the bread-crumb trail at the top of the Node Map, or click **Up to Cluster** in the lower left-hand side of the Node Map.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If they're two levels deep, the up button will say "Up to region=us-east".

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes..but if they follow our tutorial, they will have the levels described here.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The "up" button only goes up one level. If they are down two levels (one from step 1, and a second on step 2), the button will only go up one level, to region=us-east.


<img src="{{ 'images/admin_ui_hovering.gif' | relative_url }}" alt="CockroachDB Admin UI" style="border:1px solid #eee;max-width:100%" />

{{site.data.alerts.callout_info}}By default, CockroachDB stores timeseries metrics for the last 30 days, but you can reduce the interval for timeseries storage. Alternately, if you are exclusively using a third-party tool such as <a href="monitor-cockroachdb-with-prometheus.html">Prometheus</a> for timeseries monitoring, you can disable timeseries storage entirely. For more details, see this <a href="operational-faqs.html#can-i-reduce-or-disable-the-storage-of-timeseries-data-new-in-v2-0">FAQ</a>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it might be clear already, but it might be useful to be explicit here that doing disabling storage will make time series charts not work (including the sparklines on the clusterviz)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we need to spell that out.

You can change the time range by clicking on the time window.
<img src="{{ 'images/admin_ui_time_range.gif' | relative_url }}" alt="CockroachDB Admin UI" style="border:1px solid #eee;max-width:100%" />

{{site.data.alerts.callout_info}}The Admin UI shows time in UTC, even if you set a different time zone for your cluster. {{site.data.alerts.end}}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh that's unfortunate

"urls": [
"/${VERSION}/admin-ui-overview-dashboard.html"
"/${VERSION}/admin-ui-metrics-dashboard.html"
]
},
{
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@couchand Yes, I think you were on vacation when we discussed this. I am going to wait till the last week before the release to update all screenshots, so we have more time to make the visual tweaks if needed. So all screenshots as of now are placeholders.


Area | Description
--------|----
[Cluster Visualization]() | View and monitor the metrics and geographical configuration of your cluster.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

ID | The ID of the node.
Address | The address of the node. You can click on the address to view further details about the node.
Down Since | How long the node has been down.
The main panel display changes for each page:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

umm..it has a minor grammatical error. But other than that, I don't see why this reads oddly? :|

Cluster Overview | <ul><li>[Cluster Overview panel](admin-ui-access-and-navigate.html#cluster-overview-panel)</li><li>Either the [Node List](admin-ui-access-and-navigate.html#nodes-list) (for OSS users) or [Cluster Visualization]() (for enterprise users)</li></ul>
Cluster Metrics | <ul><li>[Time Series graphs](admin-ui-access-and-navigate.html#time-series-graphs)</li><li>[Events List](admin-ui-time-series.html#events-panel)</li></ul>
Databases | Information about the Tables or Grants in your databases.
Jobs | Information about all currently active schema changes and backup/restore jobs.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.


Metric | Description
--------|----
Capacity Usage | <ul><li>The storage capacity used as a percentage of total storage capacity allocated across all nodes.<br><br>**Note:** If you are running multiple nodes on a single machine (not recommended), this value may be incorrect. This is because when multiple nodes are running on a single machine, the machine's hard disk is treated as separate stores for each node, while in reality, only one hard disk is used for all nodes. The Capacity Used is then displayed as the hard disk capacity used multiplied by the number of nodes on the machine.</li><li>The current capacity usage.</li></ul>
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

toc: false
---

On [accessing the CockroachDB Admin UI](admin-ui-access-and-navigate.html#access-the-admin-ui), the **Overview** is shown by default. This dashboard lets you monitor important SQL performance, replication, and storage metrics.
On [accessing the CockroachDB Admin UI](admin-ui-access-and-navigate.html#access-the-admin-ui), the **Metrics Overview** is shown by default. This dashboard lets you monitor important SQL performance, replication, and storage metrics.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent catch! Fixed all instances.


#### Dead Nodes

Nodes are considered dead once they have not responded for a certain amount of time (5 minutes by default). At this point, the automated repair process starts, wherein CockroachDB automatically rebalances replicas from the dead node, using the unaffected replicas as sources. See [Stop a Node](stop-a-node.html#how-it-works) for more information.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent point. Added the link.


The **Node Map** view helps you:

- Confirm that the database is balanced and you are utilizing the resource effectively. This helps you provision hardware and plan ahead for scale.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tweaked it.

The **Node Map** view helps you:

- Confirm that the database is balanced and you are utilizing the resource effectively. This helps you provision hardware and plan ahead for scale.
- Ensure that storage capacity is balanced across the disks available to the extent that they match the zone configs.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@couchand But indirectly, they can, right?

- Monitor disk utilization to know if you need to add more storage capacity.
- Identify dead nodes in the cluster.
- Be informed about unavailable or under-replicated ranges.
- Confirm that configuration changes were persisted to the cluster.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@couchand Which part? Should I just drop the "Confirm that configuration changes were persisted to the cluster" part?

Copy link
Contributor

@vilterp vilterp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

noticed a couple occurrences of the wrong flag


## Configure and Navigate the Node Map

To configure the **Node Map**, you need to start the cluster with the correct `--localities` flags and assign the latitudes and longitudes for each region.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the flag is --locality, not --localities

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch.


If not, [upgrade to CockroachDB v2.0](upgrade-cockroach-version.html).

#### Step 2. Start the nodes with the correct `--localities` flags
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same


The Localities debug page displays the following:

- Localities configuration that you set up while starting the nodes with the `--localities` options.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same (also probably better to always say "flag" rather than "option")

1 similar comment
@Amruta-Ranade
Copy link
Contributor Author

@jseldess The Admin UI docs are ready for your review.

Note to self: After Jesse's review, fix broken links in other docs.

@Amruta-Ranade Amruta-Ranade requested review from jseldess and removed request for jseldess March 22, 2018 00:26
@Amruta-Ranade
Copy link
Contributor Author

@jseldess I am going to rework this PR based on today's discussion, and probably break it out into smaller (manageable) pieces. This PR has become overstuffed over the quarter. Will add you as reviewer once I reorganize things.

@jseldess
Copy link
Contributor

Sounds good, @Amruta-Ranade. Thanks!

The Localities debug page displays the following:

- Localities configuration that you set up while starting the nodes with the `--locality` flags.
- Nodes corrsponding to each locality.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: "corresponding"

@jseldess jseldess closed this Apr 4, 2018
@jseldess jseldess deleted the admin_ui_docs branch April 4, 2018 15:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants