Cluster Management
Only Enterprise Edition supports
View node list
SHOW DATANODES
The SHOW DATANODES
command will return a list of all nodes in the cluster as follows:
+---------+-----------+-----------+---------+-----------+------------+---------------------+
| NODE_ID | HOST | ATTRIBUTE | STATUS | DISK_FREE | DISK_TOTAL | LAST_UPDATED_TIME |
+---------+-----------+-----------+---------+-----------+------------+---------------------+
| 1001 | localhost | HOT | HEALTHY | 26.03 GB | 62.67 GB | 2023-12-26 09:15:29 |
+---------+-----------+-----------+---------+-----------+------------+---------------------+
Add node
To add a new node, simply set the meta_service_addr
in the cluster
configuration to point to the meta
endpoint in the target cluster, and ensure that the name
matches the name of the target cluster.Each node_id in the cluster must be kept unique, and the host must ensure that any node in the cluster can be accessed.
[global]
node_id = 888888
host = "localhost"
... ...
[cluster]
name = cluster_xxx
meta_service_addr = [127.0.0.1:8901]
... ...
Remove node
If the node is a storage node (tskv
or query_tskv
), its data will be reasonably migrated to other nodes that can store data. The operation of taking offline a storage node requires two or more storage nodes with the same ATTRIBUTE
.
REMOVENODE nodeid [FORCE]
Example
Remove the node with NODE_ID
as 1001
If there is data in node
1001
, it will be marked as read-only (ReadOnly
) and will no longer write new data until the data in the node disappears completely according to theTTL
setting or the data disappears based on the tiered storage function. The cluster will completely destroy the1001
node, and the removed node cannot rejoin the cluster.
REMOVENODE 1001
Force remove node
REMOVENODE 1001 FORCE
When the FORCE
parameter is attached, the data will be actively migrated to other nodes, and the following rules will be followed during migration:
- Do not migrate to other nodes that are not part of the replica set.
- Choose the node with the largest remaining storage space that can be migrated.
- If there is no appropriate node migration, the data is discarded.
During migration the node will be marked as Migrationn
in the state, stop writing new data, after completion the node will be completely destroyed, the node will not be able to rejoin the cluster.
View Vnode
list
SHOW VNODE
Display a list of all Vnodes
in the current database
+----------+---------+-----------+--------------------+---------------+-------------+---------------------+---------------------+---------+
| VNODE_ID | NODE_ID | BUCKET_ID | REPLICATION_SET_ID | DATABASE_NAME | TENANT_NAME | START_TIME | END_TIME | STATUS |
+----------+---------+-----------+--------------------+---------------+-------------+---------------------+---------------------+---------+
| 3 | 1001 | 1 | 2 | usage_schema | cnosdb | 1671408000000000000 | 1702944000000000000 | Running |
+----------+---------+-----------+--------------------+---------------+-------------+---------------------+---------------------+---------+
CnosDB supports using SQL to perform operations such as MOVE
, COPY
, DROP
, COMPACT
, CHECKSUM GROUP
on Vnode
Example
Move VNODE
with VNODE_ID
of 5
to node 1001
MOVE VNODE 5 TO NODE 1001
Copy the VNODE
with VNODE_ID
of 5
to node 1001
COPY VNODE 5 TO NODE 1001
Remove the VNODE
with 5
DROP VNODE 5
Force compress VNODE
with VNODE_ID
of 5
, 6
, 7
respectively
COMPACT VNODE 5 6 7
Check the data consistency of REPLICATION_SET_ID
for 5
Group
CHECKSUM GROUP 5
Resource Management
CnosDB supports resource management, will monitor some complex and multi-step resources, and will retry when the operation fails until successful.
The currently supported resources include: DropTenant
, DropDatabase
, DropTable
, DropColumn
, AddColumn
, AlterColumn
, RenameTagName
, UpdateTagValue
The corresponding commands are: DROP TENANT
, DROP DATABASE
, DROP TABLE
, DROP COLUMN
, ADD COLUMN
, ALTER COLUMN
, REMOTE COLUMN
The system table information_schema.resource_status
stores the status of resources:
SELECT * FROM information_schema.resource_status;
+---------------------+------------+--------------+-----------+----------+---------+
| time | name | action | try_count | status | comment |
+---------------------+------------+--------------+-----------+----------+---------+
| 2023-10-18 08:15:16 | cnosdb/db1 | DropDatabase | 0 | Schedule | |
+---------------------+------------+--------------+-----------+----------+---------+
The community edition only supports some features:
Command | Enterprise | Community |
---|---|---|
SHOW DATANODES | ✅ | ❌ |
REMOVENODE | ✅ | ❌ |
SHOW VNODE | ✅ | ❌ |
MOVE VNODE | ✅ | ✅ |
COPY VNODE | ✅ | ✅ |
DROP VNODE | ✅ | ✅ |
COMPACT VNODE | ✅ | ✅ |
CHECKSUM GROUP | ✅ | ✅ |
Resource Management | ✅ | ✅ |