This is an automated email from the ASF dual-hosted git repository.
critas pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-docs.git
The following commit(s) were added to refs/heads/main by this push:
new 214c1336 add health check in deployment (#872)
214c1336 is described below
commit 214c1336cba1ccaca376149c908396b9e28035cf
Author: leto-b <[email protected]>
AuthorDate: Thu Dec 11 19:58:31 2025 +0800
add health check in deployment (#872)
---
src/.vuepress/sidebar/V2.0.x/en-Table.ts | 2 +
src/.vuepress/sidebar/V2.0.x/zh-Table.ts | 2 +
src/.vuepress/sidebar_timecho/V2.0.x/en-Table.ts | 2 +
src/.vuepress/sidebar_timecho/V2.0.x/zh-Table.ts | 2 +
.../Cluster-Deployment_apache.md | 6 +-
.../Cluster-Deployment_timecho.md | 7 +-
.../Stand-Alone-Deployment_apache.md | 2 +-
.../Stand-Alone-Deployment_timecho.md | 3 +
.../Master/Table/Tools-System/Backup-Tool.md | 135 +++++++++++++
.../Master/Table/Tools-System/Health-Check-Tool.md | 213 ++++++++++++++++++++
.../Cluster-Deployment_apache.md | 5 +-
.../Cluster-Deployment_timecho.md | 3 +
.../Stand-Alone-Deployment_apache.md | 3 +
.../Stand-Alone-Deployment_timecho.md | 2 +
.../Cluster-Deployment_apache.md | 2 +
.../Cluster-Deployment_timecho.md | 2 +
.../Stand-Alone-Deployment_apache.md | 2 +
.../Stand-Alone-Deployment_timecho.md | 2 +
.../Cluster-Deployment_apache.md | 3 +
.../Cluster-Deployment_timecho.md | 3 +
.../Stand-Alone-Deployment_apache.md | 4 +-
.../Stand-Alone-Deployment_timecho.md | 3 +
.../Cluster-Deployment_apache.md | 6 +-
.../Cluster-Deployment_timecho.md | 7 +-
.../Stand-Alone-Deployment_apache.md | 3 +-
.../Stand-Alone-Deployment_timecho.md | 3 +
.../latest-Table/Tools-System/Backup-Tool.md | 135 +++++++++++++
.../latest-Table/Tools-System/Health-Check-Tool.md | 213 ++++++++++++++++++++
.../Cluster-Deployment_apache.md | 3 +
.../Cluster-Deployment_timecho.md | 3 +
.../Stand-Alone-Deployment_apache.md | 3 +
.../Stand-Alone-Deployment_timecho.md | 3 +
.../Cluster-Deployment_apache.md | 2 +-
.../Cluster-Deployment_timecho.md | 3 +
.../Stand-Alone-Deployment_apache.md | 3 +-
.../Stand-Alone-Deployment_timecho.md | 2 +
.../Master/Table/Tools-System/Backup-Tool.md | 126 ++++++++++++
.../Master/Table/Tools-System/Health-Check-Tool.md | 220 +++++++++++++++++++++
.../Cluster-Deployment_apache.md | 2 +
.../Cluster-Deployment_timecho.md | 2 +
.../Stand-Alone-Deployment_apache.md | 4 +-
.../Stand-Alone-Deployment_timecho.md | 2 +
.../Cluster-Deployment_apache.md | 2 +
.../Cluster-Deployment_timecho.md | 2 +
.../Stand-Alone-Deployment_apache.md | 2 +
.../Stand-Alone-Deployment_timecho.md | 2 +
.../Cluster-Deployment_apache.md | 2 +
.../Cluster-Deployment_timecho.md | 2 +
.../Stand-Alone-Deployment_apache.md | 2 +
.../Stand-Alone-Deployment_timecho.md | 2 +
.../Cluster-Deployment_apache.md | 3 +-
.../Cluster-Deployment_timecho.md | 3 +
.../Stand-Alone-Deployment_apache.md | 3 +-
.../Stand-Alone-Deployment_timecho.md | 3 +
.../latest-Table/Tools-System/Backup-Tool.md | 126 ++++++++++++
.../latest-Table/Tools-System/Health-Check-Tool.md | 220 +++++++++++++++++++++
.../Cluster-Deployment_apache.md | 2 +
.../Cluster-Deployment_timecho.md | 2 +
.../Stand-Alone-Deployment_apache.md | 2 +
.../Stand-Alone-Deployment_timecho.md | 2 +
60 files changed, 1516 insertions(+), 19 deletions(-)
diff --git a/src/.vuepress/sidebar/V2.0.x/en-Table.ts
b/src/.vuepress/sidebar/V2.0.x/en-Table.ts
index 2ec5a225..6d519201 100644
--- a/src/.vuepress/sidebar/V2.0.x/en-Table.ts
+++ b/src/.vuepress/sidebar/V2.0.x/en-Table.ts
@@ -145,6 +145,8 @@ export const enSidebar = {
{ text: 'Schema Export', link: 'Schema-Export-Tool_apache' },
],
},
+ { text: 'Full Backup Tool', link: 'Backup-Tool' },
+ { text: 'Health Check Tool', link: 'Health-Check-Tool' },
],
},
{
diff --git a/src/.vuepress/sidebar/V2.0.x/zh-Table.ts
b/src/.vuepress/sidebar/V2.0.x/zh-Table.ts
index 8a04af8a..774a9132 100644
--- a/src/.vuepress/sidebar/V2.0.x/zh-Table.ts
+++ b/src/.vuepress/sidebar/V2.0.x/zh-Table.ts
@@ -135,6 +135,8 @@ export const zhSidebar = {
{ text: '元数据导出', link: 'Schema-Export-Tool_apache' },
],
},
+ { text: '全量备份工具', link: 'Backup-Tool' },
+ { text: '健康检查工具', link: 'Health-Check-Tool' },
],
},
{
diff --git a/src/.vuepress/sidebar_timecho/V2.0.x/en-Table.ts
b/src/.vuepress/sidebar_timecho/V2.0.x/en-Table.ts
index 0d2aaf71..270e19ed 100644
--- a/src/.vuepress/sidebar_timecho/V2.0.x/en-Table.ts
+++ b/src/.vuepress/sidebar_timecho/V2.0.x/en-Table.ts
@@ -150,6 +150,8 @@ export const enSidebar = {
{ text: 'Schema Export', link: 'Schema-Export-Tool_timecho' },
],
},
+ { text: 'Full Backup Tool', link: 'Backup-Tool' },
+ { text: 'Health Check Tool', link: 'Health-Check-Tool' },
],
},
{
diff --git a/src/.vuepress/sidebar_timecho/V2.0.x/zh-Table.ts
b/src/.vuepress/sidebar_timecho/V2.0.x/zh-Table.ts
index b6f51c93..f5880f13 100644
--- a/src/.vuepress/sidebar_timecho/V2.0.x/zh-Table.ts
+++ b/src/.vuepress/sidebar_timecho/V2.0.x/zh-Table.ts
@@ -139,6 +139,8 @@ export const zhSidebar = {
{ text: '元数据导出', link: 'Schema-Export-Tool_timecho' },
],
},
+ { text: '全量备份工具', link: 'Backup-Tool' },
+ { text: '健康检查工具', link: 'Health-Check-Tool' },
],
},
{
diff --git
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index bcd32ffe..355ba791 100644
---
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -42,14 +42,14 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
3. **Unmodifiable Parameters**: Some parameters cannot be changed after the
first startup. Refer to the [Parameter
Configuration](#22-parameters-configuration) section.
-1. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
-2. **User Permissions**: Choose one of the following permissions during
installation and deployment:
+4. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
+5. **User Permissions**: Choose one of the following permissions during
installation and deployment:
- **Root User (Recommended)**: This avoids permission-related issues.
- **Non-Root User**:
- Use the same user for all operations, including starting, activating,
and stopping services.
- Avoid using `sudo`, which can cause permission conflicts.
-6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+6. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
## 2. Preparation
diff --git
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 54c7ec5f..47ed13ad 100644
---
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -42,8 +42,8 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
3. **Unmodifiable Parameters**: Some parameters cannot be changed after the
first startup. Refer to the [Parameter
Configuration](#22-parameters-configuration) section.
-1. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
-2. **User Permissions**: Choose one of the following permissions during
installation and deployment:
+4. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
+5. **User Permissions**: Choose one of the following permissions during
installation and deployment:
- **Root User (Recommended)**: This avoids permission-related issues.
- **Non-Root User**:
- Use the same user for all operations, including starting, activating,
and stopping services.
@@ -51,6 +51,9 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Preparation
1. Obtain the TimechoDB installation package: `timechodb-{version}-bin.zip`
following
[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 3067c4c8..d54a8027 100644
---
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -44,7 +44,7 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
- Use the same user for all operations, including starting, activating,
and stopping services.
- Avoid using `sudo`, which can cause permission conflicts.
-6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+6. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
## 2. Installation Steps
diff --git
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index ac933a94..431d13ff 100644
---
a/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -46,6 +46,9 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Installation Steps
### 2.1 Pre-installation Check
diff --git a/src/UserGuide/Master/Table/Tools-System/Backup-Tool.md
b/src/UserGuide/Master/Table/Tools-System/Backup-Tool.md
new file mode 100644
index 00000000..5759f2a2
--- /dev/null
+++ b/src/UserGuide/Master/Table/Tools-System/Backup-Tool.md
@@ -0,0 +1,135 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# Backup Tool
+
+## 1. Overview
+
+The IoTDB Full Backup Tool is designed to create a full backup of a single
IoTDB node’s data via hard links to a specified local directory. The backup can
then be directly started and joined to the original cluster. The tool offers
two modes: **Quick Mirror Mode** and **Manual Backup Path Mode**.
+
+> **Notes**:
+>
+> * **Stop the IoTDB service before starting the backup**.
+> * The script runs in the background by default, and logs are saved to log
files during execution.
+
+
+## 2. Backup Modes
+
+### 2.1 Mode 1: Quick Mirror Mode
+
+#### Usage
+
+```bash
+backup.sh/backup.bat -quick -node xxx
+# Optional values for xxx are shown in the following examples
+
+backup.sh/backup.bat -quick -node
+# Back up all nodes to the default path
+
+backup.sh/backup.bat -quick -node all
+# Back up all nodes to the default path
+
+backup.sh/backup.bat -quick -node confignode
+# Back up only the ConfigNode to the default path
+
+backup.sh/backup.bat -quick -node datanode
+# Back up only the DataNode to the default path
+```
+
+#### Parameter Descriptions
+
+| **Parameter** | **Description**
| **Required** |
+| -----------------------
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
---------------------- |
+| `-quick` | Enables Quick Mirror Mode.
| No |
+| `-node` | Specifies the node type to back up. Options: `all`,
`datanode`, or `confignode`. Default: `all`. <br>`all`: Back up both DataNode
and ConfigNode. <br>`datanode`: Back up only the DataNode. <br>`confignode`:
Back up only the ConfigNode. | No |
+
+**Process Details**:
+
+1. Check if the `_backup` folder already exists in the current IoTDB directory
or paths specified in the configuration file. If it exists, the tool exits with
the error: `The backup folder already exists`.
+> When the backup folder already exists, you can try the following solutions:
+> * Delete the existing _backup folder and retry the backup.
+> * Modify the backup path to avoid conflicts.
+
+2. Create hard links from the original `dn_data_dirs` paths to the
corresponding `_backup` paths.
+ * Example: If `dn_data_dirs=/data/iotdb/data/datanode/data`, the backup
data will be stored in `/data/iotdb/data/datanode/data_backup`.
+3. Copy other files from the IoTDB directory (e.g., `/data/iotdb`) to the
`_backup` path (e.g., `/data/iotdb_backup`).
+
+
+### 2.2 Mode 2: Manual Backup Path Mode
+
+#### Usage
+
+```bash
+backup.sh -node xxx -targetdir xxx -targetdatadir xxx -targetwaldir xxx
+```
+
+#### Parameter Descriptions
+
+| **Parameter** | **Description**
| **Required** |
+| ----------------------- |
--------------------------------------------------------------------------------------------
| ---------------------- |
+| `-node` | Node type to back up (`all`, `datanode`, or
`confignode`). Default: `all`. | No |
+| `-targetdir` | Target directory for backing up the IoTDB folder.
| **Yes** |
+| `-targetdatadir` | Target path for `dn_data_dirs` files. Default:
`targetdir/data/datanode/data`. | No |
+| `-targetwaldir` | Target path for `dn_wal_dirs` files. Default:
`targetdir/data/datanode/wal`. | No |
+
+**Process Details**:
+
+1. The `-targetdir` parameter is mandatory. If missing, the tool exits with
the error: `-targetdir cannot be empty. The backup folder must be specified`.
+2. Validate consistency between configuration paths (`dn_data_dirs`,
`dn_wal_dirs`) and parameters (`-targetdatadir`, `-targetwaldir`):
+
+ * If `-targetdatadir` or `-targetwaldir` is a single path, it is
considered consistent.
+ * If the number of source paths (from configuration) does not match the
target paths, the tool exits with the error: `-targetdatadir parameter
exception: the number of original paths does not match the specified paths`.
+3. Check if `-targetdatadir` paths are on the same disk as the original paths:
+
+ * **Same disk**: Attempt to create hard links. If hard links fail, copy
files instead.
+ * **Different disk**: Copy files directly.
+4. Path Matching Rules
+
+* **Many-to-One**: Multiple source paths can be backed up to a single target
path.
+* **One-to-One**: A single source path can be backed up to a single target
path.
+* **Many-to-Many**: Multiple source paths can be backed up to multiple target
paths, but the pattern must match.
+
+#### Examples
+
+| **Configuration Paths**
| **`-targetdatadir` Paths**
| **Result** |
+|
-------------------------------------------------------------------------------------------------------
|
---------------------------------------------------------------------------------------------------------------------------------------------------------------
| -------------------------- |
+| `/data/iotdb/data/datanode/data`
| `/data/iotdb_backup/data/datanode/data`
|**Consistent** |
+| `/data/iotdb/data/datanode/data`
|
`/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data2`
|
**Inconsistent** |
+| `/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2`
| `/data/iotdb_backup/data/datanode/data`
| **Consistent** |
+| `/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2`
|
`/data/iotdb_backup/data/datanode/data3,/data/iotdb_backup/data/datanode/data4`
|
**Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
| `/data/iotdb_backup/data/datanode/data`
|
**Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
|
`/data/iotdb_backup/data/datanode/data1;/data/iotdb_backup/data/datanode/data1`
|
**Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
|
`/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data3;/data/iotdb_backup/data/datanode/data`
| **Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
|
`/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data3;/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data4`
| **Inconsistent** |
+
+#### Path Matching Rules Summary
+
+* **Paths separated by `;` only**:
+ * `-targetdatadir` can be a single path (no `;` or `,`).
+ * `-targetdatadir` can also use `;` to split paths, but the count must
match the source paths.
+* **Paths separated by `,` only**:
+ * `-targetdatadir` can be a single path (no `;` or `,`).
+ * `-targetdatadir` can also use `,` to split paths, but the count must
match the source paths.
+* **Paths with both `;` and `,`**:
+ * `-targetdatadir` can be a single path (no `;` or `,`).
+ * Split paths first by `;`, then by `,`. The number of paths at each level
must match.
+
+> **Note**: The `dn_wal_dirs` parameter (for WAL paths) follows the same rules
as `dn_data_dirs`.
diff --git a/src/UserGuide/Master/Table/Tools-System/Health-Check-Tool.md
b/src/UserGuide/Master/Table/Tools-System/Health-Check-Tool.md
new file mode 100644
index 00000000..312664b1
--- /dev/null
+++ b/src/UserGuide/Master/Table/Tools-System/Health-Check-Tool.md
@@ -0,0 +1,213 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# Health Check Tool
+
+## 1. Overview
+The IoTDB Health Check Tool is designed to inspect the runtime environment of
IoTDB nodes. It assists users in verifying the node's environment both before
deployment and during operation, providing detailed inspection reports.
+
+
+## 2. Prerequisites
+
+Linux Systems
+
+* `nc` (netcat) tool: Installed by default; user must have execution
permissions.
+* `lsof` or `netstat`: At least one must be installed; user must have
execution permissions.
+
+> To verify tool installation:
+>
+>Check `nc`: `nc -h`
+>
+>Check `lsof`: `lsof -v`
+
+Windows Systems
+
+* PowerShell: Enabled by default.
+
+## 3. Inspection Items
+* Check port occupancy on the node's server (Windows/Linux).
+* Verify port connectivity between the current node and other cluster nodes
(Windows/Linux).
+* Check JDK installation (JAVA_HOME) (Windows/Linux).
+* Inspect system memory allocation and IoTDB memory configuration
(Windows/Linux).
+* Validate directory access permissions (Windows/Linux).
+* Ensure the system's maximum number of open files meets requirements (≥
65535) (Linux only).
+* Confirm swap is disabled (Windows/Linux).
+
+## 4. Usage Instructions
+### 4.1 Command Format
+```bash
+health_check.sh/health_check.bat -ips <Remote_IP+Ports> -o
<all(default)/remote/local>
+```
+### 4.2 Parameter Descriptions
+
+|**Parameter** |**Description**
| **Required** |
+| --------------------- |
---------------------------------------------------------------------------------------------------------------------
| ---------------------- |
+| `-ips` | Remote server IPs and ports. Supports multiple servers.
Format: `ip port1 port2, ip2 port2-1 port2-2` | Optional |
+| `-o` | Scope of check: `local` (local machine), `remote` (remote
server ports), `all` (both). Default: `all` | Optional |
+
+
+## 5. Usage Examples
+### 5.1 Example 1: Check All
+```bash
+ health_check.sh/health_check.bat -ips 172.20.31.19 6667 18080,10.0.6.230
10311
+```
+
+Output:
+
+```bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs write permissions for data/datanode/data,
data/datanode/consensus, data/datanode/system, data/datanode/wal,
data/confignode/system, data/confignode/consensus, ext/pipe, ext/udf,
ext/trigger.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Ports 16668, 10730, 11742, 10750, 10760, 10710, 10720 must be
unoccupied
+Result:
+Ports 16668, 10730, 11742, 10750, 10760, 10710, 10720 are free
+
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667, 18080 and 10.0.6.230:10311 must be accessible
+Result:
+Inaccessible server ports:
+IP: 10.0.6.230, Ports: 10311
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: Disabled
+Result: Disabled.
+```
+
+### 5.2 Example 2: Local Check
+
+```bash
+health_check.sh/health_check.bat -o local
+```
+
+Output:
+
+```bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs
data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger
write permission.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Port 16668 10730 11742 10750 10760 10710 10720 is not occupied
+Result:
+Port 16668 10730 11742 10750 10760 10710 10720 is free
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: disabled
+Result: disabled.
+```
+
+### 5.3 Example 3: Remote Check
+```bash
+health_check.sh/health_check.bat -o remote -ips 172.20.31.19 6667
18080,10.0.6.230 10311
+```
+
+Output:
+
+```bash
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667, 18080 and 10.0.6.230:10311 must be accessible
+Result:
+Inaccessible server ports:
+IP: 10.0.6.230, Ports: 10311
+```
+
+## 6. FAQs
+### 6.1 How to Adjust Memory Allocation
+
+* Modify MEMORY\_SIZE in `confignode-env.sh`.
+* Modify MEMORY\_SIZE in `datanode-env.sh`.
+
+### 6.2 How to Modify Max Open Files Limit
+
+* To avoid "too many open files" errors:
+
+```bash
+# Check current limit
+ulimit -n
+# Temporarily set
+ulimit -n 65535
+# Permanently set
+echo "* soft nofile 65535" >> /etc/security/limits.conf
+echo "* hard nofile 65535" >> /etc/security/limits.conf
+# Verify after re-login
+ulimit -n # Should return 65535
+```
+
+### 6.3 How to Disable Swap and Why
+* Why Disable:
+IoTDB performance degrades when using swap.
+
+* Steps:
+
+```bash
+# Disable swap
+echo "vm.swappiness = 0" >> /etc/sysctl.conf
+# Clear swap data and reload
+swapoff -a && swapon -a
+# Apply settings without reboot
+sysctl -p
+# Verify swap is 0
+free -m
+```
\ No newline at end of file
diff --git
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index a8dcf127..126f2bff 100644
---
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -45,7 +45,10 @@ This section will take the IoTDB classic cluster deployment
architecture 3C3D (3
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
-
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Preparation Steps
1. Prepare the IoTDB database installation
package::apache-iotdb-{version}-all-bin.zip(Please refer to the installation
package for
details:[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_apache.md))
diff --git
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 8ed0e63f..67cd66dd 100644
---
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -53,6 +53,9 @@ This guide describes how to manually deploy a cluster
instance consisting of 3 C
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the "[Monitoring
Panel Deployment](./Monitoring-panel-deployment.md)" guide.
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Preparation
1. Obtain the TimechoDB installation package: `timechodb-{version}-bin.zip`
following
[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index ed52a6a9..1f482b8c 100644
---
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -39,6 +39,9 @@
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
## 2. Installation Steps
diff --git
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 96a171ae..8276edd9 100644
---
a/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -46,6 +46,8 @@ This guide introduces how to set up a standalone TimechoDB
instance, which inclu
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the "[Monitoring
Board Install and Deploy](./Monitoring-panel-deployment.md)" guide.
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
## 2. Installation Steps
### 2.1 Pre-installation Check
diff --git
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 2f31ca03..cfb08b44 100644
---
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -45,6 +45,8 @@ This section will take the IoTDB classic cluster deployment
architecture 3C3D (3
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
## Preparation Steps
diff --git
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 516e8df5..1baf4581 100644
---
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -47,6 +47,8 @@ This section describes how to manually deploy an instance
that includes 3 Config
6. It is recommended to deploy a monitoring panel, which can monitor important
operational indicators and keep track of database operation status at any time.
The monitoring panel can be obtained by contacting the business department,The
steps for deploying a monitoring panel can refer to:[Monitoring Panel
Deployment](./Monitoring-panel-deployment.md)
+7. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
## Preparation Steps
1. Prepare the IoTDB database installation package: iotdb enterprise-
{version}-bin.zip(The installation package can be obtained
from:[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index b04b0d9d..bf0e2325 100644
---
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -39,6 +39,8 @@
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
## Installation Steps
diff --git
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 9a2195be..d3a10013 100644
---
a/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -44,6 +44,8 @@ This chapter will introduce how to start an IoTDB standalone
instance, which inc
6. It is recommended to deploy a monitoring panel, which can monitor important
operational indicators and keep track of database operation status at any time.
The monitoring panel can be obtained by contacting the business department, and
the steps for deploying the monitoring panel can be referred to:[Monitoring
Board Install and Deploy](./Monitoring-panel-deployment.md).
+7. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
## Installation Steps
### 1. Pre-installation Check
diff --git
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index f3d576dc..54d3b6b1 100644
---
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -45,6 +45,9 @@ This section will take the IoTDB classic cluster deployment
architecture 3C3D (3
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
## Preparation Steps
diff --git
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 516e8df5..aad70186 100644
---
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -47,6 +47,9 @@ This section describes how to manually deploy an instance
that includes 3 Config
6. It is recommended to deploy a monitoring panel, which can monitor important
operational indicators and keep track of database operation status at any time.
The monitoring panel can be obtained by contacting the business department,The
steps for deploying a monitoring panel can refer to:[Monitoring Panel
Deployment](./Monitoring-panel-deployment.md)
+7. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
+
## Preparation Steps
1. Prepare the IoTDB database installation package: iotdb enterprise-
{version}-bin.zip(The installation package can be obtained
from:[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index e7e3ce5f..2123e363 100644
---
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -40,7 +40,9 @@
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
-
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
+
## Installation Steps
diff --git
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index d44ed9be..6e0525ac 100644
---
a/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -44,6 +44,9 @@ This chapter will introduce how to start an IoTDB standalone
instance, which inc
6. It is recommended to deploy a monitoring panel, which can monitor important
operational indicators and keep track of database operation status at any time.
The monitoring panel can be obtained by contacting the business department, and
the steps for deploying the monitoring panel can be referred to:[Monitoring
Board Install and Deploy](./Monitoring-panel-deployment.md).
+7. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
+
## Installation Steps
### 1. Pre-installation Check
diff --git
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 4cf6947a..20eb9dfc 100644
---
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -42,14 +42,14 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
3. **Unmodifiable Parameters**: Some parameters cannot be changed after the
first startup. Refer to the [Parameter
Configuration](#22-parameters-configuration) section.
-1. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
-2. **User Permissions**: Choose one of the following permissions during
installation and deployment:
+4. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
+5. **User Permissions**: Choose one of the following permissions during
installation and deployment:
- **Root User (Recommended)**: This avoids permission-related issues.
- **Non-Root User**:
- Use the same user for all operations, including starting, activating,
and stopping services.
- Avoid using `sudo`, which can cause permission conflicts.
-6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+6. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
## 2. Preparation
diff --git
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 54c7ec5f..47ed13ad 100644
---
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -42,8 +42,8 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
3. **Unmodifiable Parameters**: Some parameters cannot be changed after the
first startup. Refer to the [Parameter
Configuration](#22-parameters-configuration) section.
-1. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
-2. **User Permissions**: Choose one of the following permissions during
installation and deployment:
+4. **Installation Path**: Ensure the installation path contains no spaces or
non-ASCII characters to prevent runtime issues.
+5. **User Permissions**: Choose one of the following permissions during
installation and deployment:
- **Root User (Recommended)**: This avoids permission-related issues.
- **Non-Root User**:
- Use the same user for all operations, including starting, activating,
and stopping services.
@@ -51,6 +51,9 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Preparation
1. Obtain the TimechoDB installation package: `timechodb-{version}-bin.zip`
following
[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 35b8a0a7..56d130cb 100644
---
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -44,7 +44,8 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
- Use the same user for all operations, including starting, activating,
and stopping services.
- Avoid using `sudo`, which can cause permission conflicts.
-6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+6. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
## 2. Installation Steps
diff --git
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index ac933a94..431d13ff 100644
---
a/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -46,6 +46,9 @@ Use the hostname for `cn_internal_address` and
`dn_internal_address` in IoTDB co
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the [Monitoring Board
Install and
Deploy](../Deployment-and-Maintenance/Monitoring-panel-deployment.md).
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Installation Steps
### 2.1 Pre-installation Check
diff --git a/src/UserGuide/latest-Table/Tools-System/Backup-Tool.md
b/src/UserGuide/latest-Table/Tools-System/Backup-Tool.md
new file mode 100644
index 00000000..5759f2a2
--- /dev/null
+++ b/src/UserGuide/latest-Table/Tools-System/Backup-Tool.md
@@ -0,0 +1,135 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# Backup Tool
+
+## 1. Overview
+
+The IoTDB Full Backup Tool is designed to create a full backup of a single
IoTDB node’s data via hard links to a specified local directory. The backup can
then be directly started and joined to the original cluster. The tool offers
two modes: **Quick Mirror Mode** and **Manual Backup Path Mode**.
+
+> **Notes**:
+>
+> * **Stop the IoTDB service before starting the backup**.
+> * The script runs in the background by default, and logs are saved to log
files during execution.
+
+
+## 2. Backup Modes
+
+### 2.1 Mode 1: Quick Mirror Mode
+
+#### Usage
+
+```bash
+backup.sh/backup.bat -quick -node xxx
+# Optional values for xxx are shown in the following examples
+
+backup.sh/backup.bat -quick -node
+# Back up all nodes to the default path
+
+backup.sh/backup.bat -quick -node all
+# Back up all nodes to the default path
+
+backup.sh/backup.bat -quick -node confignode
+# Back up only the ConfigNode to the default path
+
+backup.sh/backup.bat -quick -node datanode
+# Back up only the DataNode to the default path
+```
+
+#### Parameter Descriptions
+
+| **Parameter** | **Description**
| **Required** |
+| -----------------------
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
---------------------- |
+| `-quick` | Enables Quick Mirror Mode.
| No |
+| `-node` | Specifies the node type to back up. Options: `all`,
`datanode`, or `confignode`. Default: `all`. <br>`all`: Back up both DataNode
and ConfigNode. <br>`datanode`: Back up only the DataNode. <br>`confignode`:
Back up only the ConfigNode. | No |
+
+**Process Details**:
+
+1. Check if the `_backup` folder already exists in the current IoTDB directory
or paths specified in the configuration file. If it exists, the tool exits with
the error: `The backup folder already exists`.
+> When the backup folder already exists, you can try the following solutions:
+> * Delete the existing _backup folder and retry the backup.
+> * Modify the backup path to avoid conflicts.
+
+2. Create hard links from the original `dn_data_dirs` paths to the
corresponding `_backup` paths.
+ * Example: If `dn_data_dirs=/data/iotdb/data/datanode/data`, the backup
data will be stored in `/data/iotdb/data/datanode/data_backup`.
+3. Copy other files from the IoTDB directory (e.g., `/data/iotdb`) to the
`_backup` path (e.g., `/data/iotdb_backup`).
+
+
+### 2.2 Mode 2: Manual Backup Path Mode
+
+#### Usage
+
+```bash
+backup.sh -node xxx -targetdir xxx -targetdatadir xxx -targetwaldir xxx
+```
+
+#### Parameter Descriptions
+
+| **Parameter** | **Description**
| **Required** |
+| ----------------------- |
--------------------------------------------------------------------------------------------
| ---------------------- |
+| `-node` | Node type to back up (`all`, `datanode`, or
`confignode`). Default: `all`. | No |
+| `-targetdir` | Target directory for backing up the IoTDB folder.
| **Yes** |
+| `-targetdatadir` | Target path for `dn_data_dirs` files. Default:
`targetdir/data/datanode/data`. | No |
+| `-targetwaldir` | Target path for `dn_wal_dirs` files. Default:
`targetdir/data/datanode/wal`. | No |
+
+**Process Details**:
+
+1. The `-targetdir` parameter is mandatory. If missing, the tool exits with
the error: `-targetdir cannot be empty. The backup folder must be specified`.
+2. Validate consistency between configuration paths (`dn_data_dirs`,
`dn_wal_dirs`) and parameters (`-targetdatadir`, `-targetwaldir`):
+
+ * If `-targetdatadir` or `-targetwaldir` is a single path, it is
considered consistent.
+ * If the number of source paths (from configuration) does not match the
target paths, the tool exits with the error: `-targetdatadir parameter
exception: the number of original paths does not match the specified paths`.
+3. Check if `-targetdatadir` paths are on the same disk as the original paths:
+
+ * **Same disk**: Attempt to create hard links. If hard links fail, copy
files instead.
+ * **Different disk**: Copy files directly.
+4. Path Matching Rules
+
+* **Many-to-One**: Multiple source paths can be backed up to a single target
path.
+* **One-to-One**: A single source path can be backed up to a single target
path.
+* **Many-to-Many**: Multiple source paths can be backed up to multiple target
paths, but the pattern must match.
+
+#### Examples
+
+| **Configuration Paths**
| **`-targetdatadir` Paths**
| **Result** |
+|
-------------------------------------------------------------------------------------------------------
|
---------------------------------------------------------------------------------------------------------------------------------------------------------------
| -------------------------- |
+| `/data/iotdb/data/datanode/data`
| `/data/iotdb_backup/data/datanode/data`
|**Consistent** |
+| `/data/iotdb/data/datanode/data`
|
`/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data2`
|
**Inconsistent** |
+| `/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2`
| `/data/iotdb_backup/data/datanode/data`
| **Consistent** |
+| `/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2`
|
`/data/iotdb_backup/data/datanode/data3,/data/iotdb_backup/data/datanode/data4`
|
**Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
| `/data/iotdb_backup/data/datanode/data`
|
**Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
|
`/data/iotdb_backup/data/datanode/data1;/data/iotdb_backup/data/datanode/data1`
|
**Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
|
`/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data3;/data/iotdb_backup/data/datanode/data`
| **Consistent** |
+|
`/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3`
|
`/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data3;/data/iotdb_backup/data/datanode/data1,/data/iotdb_backup/data/datanode/data4`
| **Inconsistent** |
+
+#### Path Matching Rules Summary
+
+* **Paths separated by `;` only**:
+ * `-targetdatadir` can be a single path (no `;` or `,`).
+ * `-targetdatadir` can also use `;` to split paths, but the count must
match the source paths.
+* **Paths separated by `,` only**:
+ * `-targetdatadir` can be a single path (no `;` or `,`).
+ * `-targetdatadir` can also use `,` to split paths, but the count must
match the source paths.
+* **Paths with both `;` and `,`**:
+ * `-targetdatadir` can be a single path (no `;` or `,`).
+ * Split paths first by `;`, then by `,`. The number of paths at each level
must match.
+
+> **Note**: The `dn_wal_dirs` parameter (for WAL paths) follows the same rules
as `dn_data_dirs`.
diff --git a/src/UserGuide/latest-Table/Tools-System/Health-Check-Tool.md
b/src/UserGuide/latest-Table/Tools-System/Health-Check-Tool.md
new file mode 100644
index 00000000..312664b1
--- /dev/null
+++ b/src/UserGuide/latest-Table/Tools-System/Health-Check-Tool.md
@@ -0,0 +1,213 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# Health Check Tool
+
+## 1. Overview
+The IoTDB Health Check Tool is designed to inspect the runtime environment of
IoTDB nodes. It assists users in verifying the node's environment both before
deployment and during operation, providing detailed inspection reports.
+
+
+## 2. Prerequisites
+
+Linux Systems
+
+* `nc` (netcat) tool: Installed by default; user must have execution
permissions.
+* `lsof` or `netstat`: At least one must be installed; user must have
execution permissions.
+
+> To verify tool installation:
+>
+>Check `nc`: `nc -h`
+>
+>Check `lsof`: `lsof -v`
+
+Windows Systems
+
+* PowerShell: Enabled by default.
+
+## 3. Inspection Items
+* Check port occupancy on the node's server (Windows/Linux).
+* Verify port connectivity between the current node and other cluster nodes
(Windows/Linux).
+* Check JDK installation (JAVA_HOME) (Windows/Linux).
+* Inspect system memory allocation and IoTDB memory configuration
(Windows/Linux).
+* Validate directory access permissions (Windows/Linux).
+* Ensure the system's maximum number of open files meets requirements (≥
65535) (Linux only).
+* Confirm swap is disabled (Windows/Linux).
+
+## 4. Usage Instructions
+### 4.1 Command Format
+```bash
+health_check.sh/health_check.bat -ips <Remote_IP+Ports> -o
<all(default)/remote/local>
+```
+### 4.2 Parameter Descriptions
+
+|**Parameter** |**Description**
| **Required** |
+| --------------------- |
---------------------------------------------------------------------------------------------------------------------
| ---------------------- |
+| `-ips` | Remote server IPs and ports. Supports multiple servers.
Format: `ip port1 port2, ip2 port2-1 port2-2` | Optional |
+| `-o` | Scope of check: `local` (local machine), `remote` (remote
server ports), `all` (both). Default: `all` | Optional |
+
+
+## 5. Usage Examples
+### 5.1 Example 1: Check All
+```bash
+ health_check.sh/health_check.bat -ips 172.20.31.19 6667 18080,10.0.6.230
10311
+```
+
+Output:
+
+```bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs write permissions for data/datanode/data,
data/datanode/consensus, data/datanode/system, data/datanode/wal,
data/confignode/system, data/confignode/consensus, ext/pipe, ext/udf,
ext/trigger.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Ports 16668, 10730, 11742, 10750, 10760, 10710, 10720 must be
unoccupied
+Result:
+Ports 16668, 10730, 11742, 10750, 10760, 10710, 10720 are free
+
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667, 18080 and 10.0.6.230:10311 must be accessible
+Result:
+Inaccessible server ports:
+IP: 10.0.6.230, Ports: 10311
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: Disabled
+Result: Disabled.
+```
+
+### 5.2 Example 2: Local Check
+
+```bash
+health_check.sh/health_check.bat -o local
+```
+
+Output:
+
+```bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs
data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger
write permission.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Port 16668 10730 11742 10750 10760 10710 10720 is not occupied
+Result:
+Port 16668 10730 11742 10750 10760 10710 10720 is free
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: disabled
+Result: disabled.
+```
+
+### 5.3 Example 3: Remote Check
+```bash
+health_check.sh/health_check.bat -o remote -ips 172.20.31.19 6667
18080,10.0.6.230 10311
+```
+
+Output:
+
+```bash
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667, 18080 and 10.0.6.230:10311 must be accessible
+Result:
+Inaccessible server ports:
+IP: 10.0.6.230, Ports: 10311
+```
+
+## 6. FAQs
+### 6.1 How to Adjust Memory Allocation
+
+* Modify MEMORY\_SIZE in `confignode-env.sh`.
+* Modify MEMORY\_SIZE in `datanode-env.sh`.
+
+### 6.2 How to Modify Max Open Files Limit
+
+* To avoid "too many open files" errors:
+
+```bash
+# Check current limit
+ulimit -n
+# Temporarily set
+ulimit -n 65535
+# Permanently set
+echo "* soft nofile 65535" >> /etc/security/limits.conf
+echo "* hard nofile 65535" >> /etc/security/limits.conf
+# Verify after re-login
+ulimit -n # Should return 65535
+```
+
+### 6.3 How to Disable Swap and Why
+* Why Disable:
+IoTDB performance degrades when using swap.
+
+* Steps:
+
+```bash
+# Disable swap
+echo "vm.swappiness = 0" >> /etc/sysctl.conf
+# Clear swap data and reload
+swapoff -a && swapon -a
+# Apply settings without reboot
+sysctl -p
+# Verify swap is 0
+free -m
+```
\ No newline at end of file
diff --git
a/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index e4487438..96d52a48 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -45,6 +45,9 @@ This section will take the IoTDB classic cluster deployment
architecture 3C3D (3
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
## 2. Preparation Steps
diff --git
a/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 8ed0e63f..67cd66dd 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -53,6 +53,9 @@ This guide describes how to manually deploy a cluster
instance consisting of 3 C
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the "[Monitoring
Panel Deployment](./Monitoring-panel-deployment.md)" guide.
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Preparation
1. Obtain the TimechoDB installation package: `timechodb-{version}-bin.zip`
following
[IoTDB-Package](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index f513b125..43e35e31 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -39,6 +39,9 @@
- Using a fixed non root user:
- Using the same user operation: Ensure that the same user is used for
start, stop and other operations, and do not switch users.
- Avoid using sudo: Try to avoid using sudo commands as they execute
commands with root privileges, which may cause confusion or security issues.
+
+6. Before installation, the health check tool can help inspect the operating
environment of IoTDB nodes and obtain detailed inspection results. The usage
method of the IoTDB health check tool can be found in:[Health Check
Tool](../Tools-System/Health-Check-Tool.md).
+
## 2. Installation Steps
diff --git
a/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 967f8603..8e43388f 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -46,6 +46,9 @@ This guide introduces how to set up a standalone TimechoDB
instance, which inclu
6. **Monitoring Panel**: Deploy a monitoring panel to track key performance
metrics. Contact the Timecho team for access and refer to the "[Monitoring
Board Install and Deploy](./Monitoring-panel-deployment.md)" guide.
+7. **Health Check Tool**: Before installation, the health check tool can help
inspect the operating environment of IoTDB nodes and obtain detailed inspection
results. The usage method of the IoTDB health check tool can be found
in:[Health Check Tool](../Tools-System/Health-Check-Tool.md).
+
+
## 2. Installation Steps
### 2.1 Pre-installation Check
diff --git
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 10074359..329263c0 100644
---
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -50,7 +50,7 @@
- 避免使用 sudo:使用 sudo 命令会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
-6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
## 2. 准备步骤
diff --git
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 47283b82..b5a8e028 100644
---
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -52,6 +52,9 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
+
## 2. 准备步骤
1. 准备IoTDB数据库安装包
:timechodb-{version}-bin.zip(安装包获取见:[链接](./IoTDB-Package_timecho.md))
diff --git
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 0f08bfd1..76f71f82 100644
---
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -38,7 +38,8 @@
- 使用固定的非 root 用户:
- 使用同一用户操作:确保在启动、激活、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:使用 sudo 命令会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
-6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系工作人员获取,部署监控面板步骤可以参考:[监控面板部署](../Deployment-and-Maintenance/Monitoring-panel-deployment.md)
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 安装步骤
diff --git
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index f1877ce8..c337ec16 100644
---
a/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/Master/Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -39,6 +39,8 @@
- 使用同一用户操作:确保在启动、激活、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:使用 sudo 命令会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系工作人员获取,部署监控面板步骤可以参考:[监控面板部署](../Deployment-and-Maintenance/Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 安装步骤
diff --git a/src/zh/UserGuide/Master/Table/Tools-System/Backup-Tool.md
b/src/zh/UserGuide/Master/Table/Tools-System/Backup-Tool.md
new file mode 100644
index 00000000..29a209f2
--- /dev/null
+++ b/src/zh/UserGuide/Master/Table/Tools-System/Backup-Tool.md
@@ -0,0 +1,126 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# 全量备份工具
+
+## 1. 概述
+
+IoTDB 全量备份工具,用于将 IoTDB
单个节点的数据通过硬链接的方式备份到本地指定地址,并可以直接启动加入原集群。备份工具提供了两种模式:快速镜像模式和手动指定备份路径模式。
+
+> 注意:
+>
+> * 备份前请停止IoTDB服务。
+> * 脚本默认后台执行,执行过程中打印的相关信息会输出到日志文件中。
+
+## 2. 备份模式
+
+### 2.1 模式一:快速镜像模式
+
+#### 使用方法
+
+```Bash
+backup.sh/backup.bat -quick -node xxx
+ # xxx可选值见如下示例
+
+backup.sh/backup.bat -quick -node
+# 备份所有节点到默认路径
+
+backup.sh/backup.bat -quick -node all
+# 备份所有节点到默认路径
+
+backup.sh/backup.bat -quick -node confignode
+# 仅备份confignode节点到默认路径
+
+backup.sh/backup.bat -quick -node datanode
+# 仅备份datanode节点到默认路径
+```
+
+#### 参数说明
+
+| **参数** | **说明**
| **是否必填** |
+| ----------------
|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
-------------------- |
+| `-quick` | 快速镜像
| 非必填 |
+| `-node` | 备份节点类型,可选项包括`all`/`datanode`/`confignode`,空值默认为`all`。 <br>
`all`:备份`datanode`和`confignode`节点 <br>`datanode`:只备份`datanode`节点 <br>
`confignode`:只备份`confignode`节点 | 非必填 |
+
+说明:
+
+1. 校验当前 `IoTDB` 文件夹及根据配置文件列出所有配置路径是否已经存在`_backup`文件夹,如果存在则退出,信息为 `The backup
folder already exists`(备份文件夹已经存在)。
+> 当备份文件夹已存在时,可以尝试通过如下方式解决:
+> * 删除已有的 _backup 文件夹后重新执行备份。
+> * 修改备份路径避免冲突。
+
+2. 给原 `dn_data_dirs` 配置路径新建硬连接到对应的 `_backup` 路径
例如:`dn_data_dirs=/data/iotdb/data/datanode/data` 则备份完后数据在
`/data/iotdb/data/datanode/data_backup`
+3. 拷贝出`dn_data_dirs` 其他文件到原 `IoTDB`文件夹到对应的 `_backup` 路径中 例如:`/data/iotdb `备份后
`/data/iotdb_backup`
+
+### 2.2 模式二:手动指定模式
+
+#### 使用方法
+
+```Bash
+backup.sh -node xxx -targetdir xxx -targetdatadir xxx -targetwaldir xxx
+```
+
+#### 参数说明
+| **参数** | **说明**
| **是否必填** |
+| ---------------------- |
------------------------------------------------------------------------------------------
| -------------------- |
+| `-node` | 备份节点类型`all`/`datanode`/`confignode`默认值`all`
| 非必填 |
+| `-targetdir` | `IoTDB`要备份到的文件夹
| 必填 |
+| `-targetdatadir` |
配置项`dn_data_dirs`路径下文件要备份到的路径,默认`targetdir/data/datanode/data` | 非必填
|
+| `-targetwaldir` |
配置项`dn_wal_dirs`路径下文件要备份到的路径,默认`targetdir/data/datanode/wal` | 非必填
|
+
+
+说明:
+
+1. 校验参数 `-targetdir` 为必填项 ,如果参数不存在,则输出 `-targetdir cannot be empty, The backup
folder must be specified`(`-targetdir` 参数不能为空,必须指定备份文件夹路径)。
+2. 对比配置文件中`dn_data_dirs`,`dn_wal_dirs` 配置路径模式和参数
`-targetdatadir`,`-targetwaldir`是否一致,如果`-targetdatadir`,
`-targetwaldir`参数为单一路径则认为一致,如果不一致,输出` -targetdatadir parameter exception, the
number of original paths does not match the number of specified
paths`(`-targetdatadir` 参数异常,原本路径个数跟现在指定路径个数不一致)。
+3. 校验 `-targetdatadir` 配置的路径是否和原配置路径在同一块盘,如果不是同一块盘,则拷贝 `dn_data_dirs` 配置的文件到参数
`-targetdatadir` 对应目录。如果是同一块盘,则优先打硬连接 `dn_data_dirs` 配置的文件到参数 `-targetdatadir`
对应目录,如果打硬连接失败就拷贝文件到`-targetdatadir` 对应目录
+4. 配置文件路径与目标路径匹配规则
+
+* **多对一**:多个源路径可以备份到一个目标路径。
+* **一对一**:一个源路径可以备份到一个目标路径。
+* **多对多**:多个源路径可以备份到多个目标路径,但需要模式匹配。
+
+#### 示例
+
+| **配置文件路径** | **参数 `-targetdatadir` 路径**
| **校验结果** |
+|--------------------------------|-----------------------------------------------------------|---------------------|
+| /data/iotdb/data/datanode/data |
/data/iotdb\_backup/data/datanode/data
| 一致 |
+| /data/iotdb/data/datanode/data
|
/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data2
| 不一致 |
+| /data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2
| /data/iotdb\_backup/data/datanode/data
| 一致 |
+| /data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2
|
/data/iotdb\_backup/data/datanode/data3,/data/iotdb\_backup/data/datanode/data4
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
| /data/iotdb\_backup/data/datanode/data
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
|
/data/iotdb\_backup/data/datanode/data1;/data/iotdb\_backup/data/datanode/data1
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
|
/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data3;/data/iotdb\_backup/data/datanode/data
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
|
/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data3;/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data4
| 不一致 |
+
+#### 匹配规则总结
+
+* 当 `dn_data_dirs` 仅有 `;` 分割时:
+ **规则**:* `-targetdatadir` 可以只输入一个路径(路径中没有 `;` 和 `,`)。
+ * `-targetdatadir` 也可以按照 `;` 分割多个路径,但数量必须和 `dn_data_dirs` 中的路径数量相等,且路径中不能有
`,`。
+* 当 `dn_data_dirs` 仅有 `,` 分割时:
+ **规则**:* `-targetdatadir` 可以只输入一个路径(路径中没有 `;` 和 `,`)。
+ * `-targetdatadir` 也可以按照 `,` 分割多个路径,但数量必须和 `dn_data_dirs` 中的路径数量相等,且路径中不能有
`;`。
+* 当 `dn_data_dirs` 同时有 `;` 和 `,` 分割时:
+ **规则**:* `-targetdatadir` 可以只输入一个路径(路径中没有 `;` 和 `,`)。
+ * `-targetdatadir` 也可以优先按照 `;` 分割多个路径,数量必须和 `dn_data_dirs` 中的路径数量相等。每个 `;`
分割的路径中可以只输入一个路径,也可以按照 `,` 分割多个路径,但`,`分割的路径数量必须相等。
+
+> `wal` 路径通常通过 `dn_wal_dirs` 参数指定,规则同上
diff --git a/src/zh/UserGuide/Master/Table/Tools-System/Health-Check-Tool.md
b/src/zh/UserGuide/Master/Table/Tools-System/Health-Check-Tool.md
new file mode 100644
index 00000000..cebcd1d9
--- /dev/null
+++ b/src/zh/UserGuide/Master/Table/Tools-System/Health-Check-Tool.md
@@ -0,0 +1,220 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# 健康检查工具
+
+## 1. 概述
+
+IoTDB 健康检查工具是一个用于检测 IoTDB 节点运行环境的工具。它可以帮助用户在安装部署数据库前或运行期间检查节点的运行环境,并获取详细的检查结果。
+
+
+## 2. 前置要求
+
+Linux 系统
+
+* `nc`(netcat)工具:默认已安装,用户需要有权限执行。
+* `lsof` 或 `netstat`:至少安装其中一个,用户需要有权限执行。
+
+> 检查相应工具是否已安装:
+>
+> 检查 `nc` 是否安装:`nc -h`
+>
+> 检查 `lsof` 是否安装:`lsof -v`
+
+Windows 系统
+
+* PowerShell:默认已启动。
+
+## 3. 检查项
+
+* 检查节点所在服务器的端口占用情况(windows/linux)
+* 检查当前节点与集群中其他节点的端口连通性(windows/linux)
+* 检查系统中是否安装了 JDK(java\_home)(windows/linux)
+* 检查系统内存分配情况,检查 IoTDB 内存分配情况(windows/linux)
+* 检查目录访问权限(windows/linux)
+* 检查系统最大打开文件数是否满足要求(>= 65535)(仅 linux)
+* 检查系统是否禁用了 swap(windows/linux)
+
+## 4. 使用方法
+
+### 4.1 命令格式
+
+```Bash
+health_check.sh/health_check.bat -ips<远程服务器IP+端口> , -o
<all(default)/remote/local>
+```
+
+### 4.2 参数说明
+
+| **参数** | **说明**
|
**是否必填** |
+| ---------------- |
---------------------------------------------------------------------------------------------------------------------------------------------------
| -------------------- |
+| `-ips` | 远程服务器 IP 和端口,支持检查多个服务器,格式如下:`ip port1 port2,ip2 port2-1
port2-2` | 非必填 |
+| `-o` |
检查参数,可选值为`local`(本机检查)、`remote`(远程服务器端口连接性检查)、`all`(本机和远程服务器端口一起检查),默认值为`all` |
非必填 |
+
+## 5. 使用方法
+
+### 5.1 示例 1:检查全部
+
+```Bash
+health_check.sh/health_check.bat -ips 172.20.31.19 6667 18080,10.0.6.230 10311
+```
+
+输出结果:
+
+```Bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs
data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger
write permission.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Port 16668 10730 11742 10750 10760 10710 10720 is not occupied
+Result:
+Port 16668 10730 11742 10750 10760 10710 10720 is free
+
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667 18080 ,10.0.6.230:10311 need to be accessible
+Result:
+The following server ports are inaccessible:
+IP: 10.0.6.230, Ports: 10311
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: disabled
+Result: disabled.
+```
+
+### 5.2 示例 2:检查本机
+
+```Bash
+health_check.sh/health_check.bat -o local
+```
+
+输出结果:
+
+```Bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs
data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger
write permission.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Port 16668 10730 11742 10750 10760 10710 10720 is not occupied
+Result:
+Port 16668 10730 11742 10750 10760 10710 10720 is free
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: disabled
+Result: disabled.
+```
+
+### 5.3 示例 3:检查远程
+
+```Bash
+health_check.sh/health_check.bat -o remote -ips 172.20.31.19 6667
18080,10.0.6.230 10311
+```
+
+输出结果:
+
+```Bash
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667 18080 ,10.0.6.230:10311 need to be accessible
+Result:
+The following server ports are inaccessible:
+IP: 10.0.6.230, Ports: 10311
+```
+
+## 6. 常见问题
+
+### 6.1 如何调整内存分配
+
+* 修改`confignode-env.sh`中的MEMORY\_SIZE
+* 修改`datanode-env.sh`中的MEMORY\_SIZE
+
+### 6.2 如何修改最大打开数文件
+
+* 设置系统最大打开文件数为 65535,以避免出现 "太多的打开文件 "的错误。
+
+```Bash
+#查看当前限制
+ulimit -n
+# 临时修改
+ulimit -n 65535
+# 永久修改
+echo "* soft nofile 65535" >> /etc/security/limits.conf
+echo "* hard nofile 65535" >> /etc/security/limits.conf
+#退出当前终端会话后查看,预期显示65535
+ulimit -n
+```
+
+### 6.3 如何禁用 Swap 及禁用原因
+
+* 禁用原因:IoTDB 使用 Swap 会导致性能下降,建议禁用。
+* 禁用方式:
+
+```Bash
+echo "vm.swappiness = 0">> /etc/sysctl.conf
+# 一起执行 swapoff -a 和 swapon -a 命令是为了将 swap 里的数据转储回内存,并清空 swap 里的数据。
+# 不可省略 swappiness 设置而只执行 swapoff -a;否则,重启后 swap 会再次自动打开,使得操作失效。
+swapoff -a && swapon -a
+# 在不重启的情况下使配置生效。
+sysctl -p
+# 检查内存分配,预期 swap 为 0
+free -m
+```
diff --git
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 12ebff10..d8d57171 100644
---
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -46,6 +46,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 准备步骤
1. 准备IoTDB数据库安装包
:apache-iotdb-{version}-all-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_apache.md))
diff --git
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 75406f73..d361b001 100644
---
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -48,6 +48,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 准备步骤
1. 准备IoTDB数据库安装包
:iotdb-enterprise-{version}-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 82685bea..fa3632dd 100644
---
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -38,7 +38,9 @@
- 使用 root 用户(推荐):使用 root 用户可以避免权限等问题。
- 使用固定的非 root 用户:
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- - 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+ - 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
## 2. 安装步骤
diff --git
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 1574c0fa..02bcc90a 100644
---
a/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/Master/Tree/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -44,6 +44,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)。
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 安装步骤
### 2.1 前置检查
diff --git
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 0a71d5f7..0ba4a667 100644
---
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -46,6 +46,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 准备步骤
1. 准备IoTDB数据库安装包
:apache-iotdb-{version}-all-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_apache.md))
diff --git
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index f2a3c994..2548bbca 100644
---
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -48,6 +48,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 准备步骤
1. 准备IoTDB数据库安装包
:iotdb-enterprise-{version}-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index d1759a5f..7c6d9745 100644
---
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -40,6 +40,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 安装步骤
### 前置检查
diff --git
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index e8823a81..feceb00c 100644
---
a/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/V1.3.x/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -44,6 +44,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)。
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 安装步骤
### 前置检查
diff --git
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index fcded765..b2f4e518 100644
---
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -46,6 +46,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 准备步骤
1. 准备IoTDB数据库安装包
:apache-iotdb-{version}-all-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_apache.md))
diff --git
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index f2a3c994..2548bbca 100644
---
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -48,6 +48,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 准备步骤
1. 准备IoTDB数据库安装包
:iotdb-enterprise-{version}-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index dfb8e6e4..8fb87e0c 100644
---
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -40,6 +40,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 安装步骤
diff --git
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 24281485..89606d37 100644
---
a/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/dev-1.3/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -44,6 +44,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)。
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 安装步骤
### 前置检查
diff --git
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 9fd949c1..62ced3bb 100644
---
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -50,7 +50,8 @@
- 避免使用 sudo:使用 sudo 命令会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
-6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 准备步骤
diff --git
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 47283b82..b5a8e028 100644
---
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -52,6 +52,9 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
+
## 2. 准备步骤
1. 准备IoTDB数据库安装包
:timechodb-{version}-bin.zip(安装包获取见:[链接](./IoTDB-Package_timecho.md))
diff --git
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 555e9baa..4f153d9e 100644
---
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -38,7 +38,8 @@
- 使用固定的非 root 用户:
- 使用同一用户操作:确保在启动、激活、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:使用 sudo 命令会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
-6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系工作人员获取,部署监控面板步骤可以参考:[监控面板部署](../Deployment-and-Maintenance/Monitoring-panel-deployment.md)
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 安装步骤
diff --git
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index be094528..6c83b5ff 100644
---
a/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/latest-Table/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -40,6 +40,9 @@
- 避免使用 sudo:使用 sudo 命令会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系工作人员获取,部署监控面板步骤可以参考:[监控面板部署](../Deployment-and-Maintenance/Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
+
## 2. 安装步骤
### 2.1 前置检查
diff --git a/src/zh/UserGuide/latest-Table/Tools-System/Backup-Tool.md
b/src/zh/UserGuide/latest-Table/Tools-System/Backup-Tool.md
new file mode 100644
index 00000000..29a209f2
--- /dev/null
+++ b/src/zh/UserGuide/latest-Table/Tools-System/Backup-Tool.md
@@ -0,0 +1,126 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# 全量备份工具
+
+## 1. 概述
+
+IoTDB 全量备份工具,用于将 IoTDB
单个节点的数据通过硬链接的方式备份到本地指定地址,并可以直接启动加入原集群。备份工具提供了两种模式:快速镜像模式和手动指定备份路径模式。
+
+> 注意:
+>
+> * 备份前请停止IoTDB服务。
+> * 脚本默认后台执行,执行过程中打印的相关信息会输出到日志文件中。
+
+## 2. 备份模式
+
+### 2.1 模式一:快速镜像模式
+
+#### 使用方法
+
+```Bash
+backup.sh/backup.bat -quick -node xxx
+ # xxx可选值见如下示例
+
+backup.sh/backup.bat -quick -node
+# 备份所有节点到默认路径
+
+backup.sh/backup.bat -quick -node all
+# 备份所有节点到默认路径
+
+backup.sh/backup.bat -quick -node confignode
+# 仅备份confignode节点到默认路径
+
+backup.sh/backup.bat -quick -node datanode
+# 仅备份datanode节点到默认路径
+```
+
+#### 参数说明
+
+| **参数** | **说明**
| **是否必填** |
+| ----------------
|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
-------------------- |
+| `-quick` | 快速镜像
| 非必填 |
+| `-node` | 备份节点类型,可选项包括`all`/`datanode`/`confignode`,空值默认为`all`。 <br>
`all`:备份`datanode`和`confignode`节点 <br>`datanode`:只备份`datanode`节点 <br>
`confignode`:只备份`confignode`节点 | 非必填 |
+
+说明:
+
+1. 校验当前 `IoTDB` 文件夹及根据配置文件列出所有配置路径是否已经存在`_backup`文件夹,如果存在则退出,信息为 `The backup
folder already exists`(备份文件夹已经存在)。
+> 当备份文件夹已存在时,可以尝试通过如下方式解决:
+> * 删除已有的 _backup 文件夹后重新执行备份。
+> * 修改备份路径避免冲突。
+
+2. 给原 `dn_data_dirs` 配置路径新建硬连接到对应的 `_backup` 路径
例如:`dn_data_dirs=/data/iotdb/data/datanode/data` 则备份完后数据在
`/data/iotdb/data/datanode/data_backup`
+3. 拷贝出`dn_data_dirs` 其他文件到原 `IoTDB`文件夹到对应的 `_backup` 路径中 例如:`/data/iotdb `备份后
`/data/iotdb_backup`
+
+### 2.2 模式二:手动指定模式
+
+#### 使用方法
+
+```Bash
+backup.sh -node xxx -targetdir xxx -targetdatadir xxx -targetwaldir xxx
+```
+
+#### 参数说明
+| **参数** | **说明**
| **是否必填** |
+| ---------------------- |
------------------------------------------------------------------------------------------
| -------------------- |
+| `-node` | 备份节点类型`all`/`datanode`/`confignode`默认值`all`
| 非必填 |
+| `-targetdir` | `IoTDB`要备份到的文件夹
| 必填 |
+| `-targetdatadir` |
配置项`dn_data_dirs`路径下文件要备份到的路径,默认`targetdir/data/datanode/data` | 非必填
|
+| `-targetwaldir` |
配置项`dn_wal_dirs`路径下文件要备份到的路径,默认`targetdir/data/datanode/wal` | 非必填
|
+
+
+说明:
+
+1. 校验参数 `-targetdir` 为必填项 ,如果参数不存在,则输出 `-targetdir cannot be empty, The backup
folder must be specified`(`-targetdir` 参数不能为空,必须指定备份文件夹路径)。
+2. 对比配置文件中`dn_data_dirs`,`dn_wal_dirs` 配置路径模式和参数
`-targetdatadir`,`-targetwaldir`是否一致,如果`-targetdatadir`,
`-targetwaldir`参数为单一路径则认为一致,如果不一致,输出` -targetdatadir parameter exception, the
number of original paths does not match the number of specified
paths`(`-targetdatadir` 参数异常,原本路径个数跟现在指定路径个数不一致)。
+3. 校验 `-targetdatadir` 配置的路径是否和原配置路径在同一块盘,如果不是同一块盘,则拷贝 `dn_data_dirs` 配置的文件到参数
`-targetdatadir` 对应目录。如果是同一块盘,则优先打硬连接 `dn_data_dirs` 配置的文件到参数 `-targetdatadir`
对应目录,如果打硬连接失败就拷贝文件到`-targetdatadir` 对应目录
+4. 配置文件路径与目标路径匹配规则
+
+* **多对一**:多个源路径可以备份到一个目标路径。
+* **一对一**:一个源路径可以备份到一个目标路径。
+* **多对多**:多个源路径可以备份到多个目标路径,但需要模式匹配。
+
+#### 示例
+
+| **配置文件路径** | **参数 `-targetdatadir` 路径**
| **校验结果** |
+|--------------------------------|-----------------------------------------------------------|---------------------|
+| /data/iotdb/data/datanode/data |
/data/iotdb\_backup/data/datanode/data
| 一致 |
+| /data/iotdb/data/datanode/data
|
/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data2
| 不一致 |
+| /data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2
| /data/iotdb\_backup/data/datanode/data
| 一致 |
+| /data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2
|
/data/iotdb\_backup/data/datanode/data3,/data/iotdb\_backup/data/datanode/data4
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
| /data/iotdb\_backup/data/datanode/data
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
|
/data/iotdb\_backup/data/datanode/data1;/data/iotdb\_backup/data/datanode/data1
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
|
/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data3;/data/iotdb\_backup/data/datanode/data
| 一致 |
+|
/data/iotdb/data/datanode/data1,/data/iotdb/data/datanode/data2;/data/iotdb/data/datanode/data3
|
/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data3;/data/iotdb\_backup/data/datanode/data1,/data/iotdb\_backup/data/datanode/data4
| 不一致 |
+
+#### 匹配规则总结
+
+* 当 `dn_data_dirs` 仅有 `;` 分割时:
+ **规则**:* `-targetdatadir` 可以只输入一个路径(路径中没有 `;` 和 `,`)。
+ * `-targetdatadir` 也可以按照 `;` 分割多个路径,但数量必须和 `dn_data_dirs` 中的路径数量相等,且路径中不能有
`,`。
+* 当 `dn_data_dirs` 仅有 `,` 分割时:
+ **规则**:* `-targetdatadir` 可以只输入一个路径(路径中没有 `;` 和 `,`)。
+ * `-targetdatadir` 也可以按照 `,` 分割多个路径,但数量必须和 `dn_data_dirs` 中的路径数量相等,且路径中不能有
`;`。
+* 当 `dn_data_dirs` 同时有 `;` 和 `,` 分割时:
+ **规则**:* `-targetdatadir` 可以只输入一个路径(路径中没有 `;` 和 `,`)。
+ * `-targetdatadir` 也可以优先按照 `;` 分割多个路径,数量必须和 `dn_data_dirs` 中的路径数量相等。每个 `;`
分割的路径中可以只输入一个路径,也可以按照 `,` 分割多个路径,但`,`分割的路径数量必须相等。
+
+> `wal` 路径通常通过 `dn_wal_dirs` 参数指定,规则同上
diff --git a/src/zh/UserGuide/latest-Table/Tools-System/Health-Check-Tool.md
b/src/zh/UserGuide/latest-Table/Tools-System/Health-Check-Tool.md
new file mode 100644
index 00000000..cebcd1d9
--- /dev/null
+++ b/src/zh/UserGuide/latest-Table/Tools-System/Health-Check-Tool.md
@@ -0,0 +1,220 @@
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+-->
+
+# 健康检查工具
+
+## 1. 概述
+
+IoTDB 健康检查工具是一个用于检测 IoTDB 节点运行环境的工具。它可以帮助用户在安装部署数据库前或运行期间检查节点的运行环境,并获取详细的检查结果。
+
+
+## 2. 前置要求
+
+Linux 系统
+
+* `nc`(netcat)工具:默认已安装,用户需要有权限执行。
+* `lsof` 或 `netstat`:至少安装其中一个,用户需要有权限执行。
+
+> 检查相应工具是否已安装:
+>
+> 检查 `nc` 是否安装:`nc -h`
+>
+> 检查 `lsof` 是否安装:`lsof -v`
+
+Windows 系统
+
+* PowerShell:默认已启动。
+
+## 3. 检查项
+
+* 检查节点所在服务器的端口占用情况(windows/linux)
+* 检查当前节点与集群中其他节点的端口连通性(windows/linux)
+* 检查系统中是否安装了 JDK(java\_home)(windows/linux)
+* 检查系统内存分配情况,检查 IoTDB 内存分配情况(windows/linux)
+* 检查目录访问权限(windows/linux)
+* 检查系统最大打开文件数是否满足要求(>= 65535)(仅 linux)
+* 检查系统是否禁用了 swap(windows/linux)
+
+## 4. 使用方法
+
+### 4.1 命令格式
+
+```Bash
+health_check.sh/health_check.bat -ips<远程服务器IP+端口> , -o
<all(default)/remote/local>
+```
+
+### 4.2 参数说明
+
+| **参数** | **说明**
|
**是否必填** |
+| ---------------- |
---------------------------------------------------------------------------------------------------------------------------------------------------
| -------------------- |
+| `-ips` | 远程服务器 IP 和端口,支持检查多个服务器,格式如下:`ip port1 port2,ip2 port2-1
port2-2` | 非必填 |
+| `-o` |
检查参数,可选值为`local`(本机检查)、`remote`(远程服务器端口连接性检查)、`all`(本机和远程服务器端口一起检查),默认值为`all` |
非必填 |
+
+## 5. 使用方法
+
+### 5.1 示例 1:检查全部
+
+```Bash
+health_check.sh/health_check.bat -ips 172.20.31.19 6667 18080,10.0.6.230 10311
+```
+
+输出结果:
+
+```Bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs
data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger
write permission.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Port 16668 10730 11742 10750 10760 10710 10720 is not occupied
+Result:
+Port 16668 10730 11742 10750 10760 10710 10720 is free
+
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667 18080 ,10.0.6.230:10311 need to be accessible
+Result:
+The following server ports are inaccessible:
+IP: 10.0.6.230, Ports: 10311
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: disabled
+Result: disabled.
+```
+
+### 5.2 示例 2:检查本机
+
+```Bash
+health_check.sh/health_check.bat -o local
+```
+
+输出结果:
+
+```Bash
+Check: Installation Environment(JDK)
+Requirement: JDK Version >=1.8
+Result: JDK Version 11.0.21
+
+Check: Installation Environment(Memory)
+Requirement: Allocate sufficient memory for IoTDB
+Result: Total Memory 7.8Gi, 2.33 G allocated to IoTDB ConfigNode, 3.88 G
allocated to IoTDB DataNode
+
+Check: Installation Environment(Directory Access)
+Requirement: IoTDB needs
data/datanode/data,data/datanode/consensus,data/datanode/system,data/datanode/wal,data/confignode/system,data/confignode/consensus,ext/pipe,ext/udf,ext/trigger
write permission.
+Result:
+data/datanode/data has write permission
+data/datanode/consensus has write permission
+data/datanode/system has write permission
+data/datanode/wal has write permission
+data/confignode/system has write permission
+data/confignode/consensus has write permission
+ext/pipe has write permission
+ext/udf has write permission
+ext/trigger has write permission
+
+Check: Network(Local Port)
+Requirement: Port 16668 10730 11742 10750 10760 10710 10720 is not occupied
+Result:
+Port 16668 10730 11742 10750 10760 10710 10720 is free
+
+Check: System Settings(Maximum Open Files Number)
+Requirement: >= 65535
+Result: 65535
+
+Check: System Settings(Swap)
+Requirement: disabled
+Result: disabled.
+```
+
+### 5.3 示例 3:检查远程
+
+```Bash
+health_check.sh/health_check.bat -o remote -ips 172.20.31.19 6667
18080,10.0.6.230 10311
+```
+
+输出结果:
+
+```Bash
+Check: Network(Remote Port Connectivity)
+Requirement: 172.20.31.19:6667 18080 ,10.0.6.230:10311 need to be accessible
+Result:
+The following server ports are inaccessible:
+IP: 10.0.6.230, Ports: 10311
+```
+
+## 6. 常见问题
+
+### 6.1 如何调整内存分配
+
+* 修改`confignode-env.sh`中的MEMORY\_SIZE
+* 修改`datanode-env.sh`中的MEMORY\_SIZE
+
+### 6.2 如何修改最大打开数文件
+
+* 设置系统最大打开文件数为 65535,以避免出现 "太多的打开文件 "的错误。
+
+```Bash
+#查看当前限制
+ulimit -n
+# 临时修改
+ulimit -n 65535
+# 永久修改
+echo "* soft nofile 65535" >> /etc/security/limits.conf
+echo "* hard nofile 65535" >> /etc/security/limits.conf
+#退出当前终端会话后查看,预期显示65535
+ulimit -n
+```
+
+### 6.3 如何禁用 Swap 及禁用原因
+
+* 禁用原因:IoTDB 使用 Swap 会导致性能下降,建议禁用。
+* 禁用方式:
+
+```Bash
+echo "vm.swappiness = 0">> /etc/sysctl.conf
+# 一起执行 swapoff -a 和 swapon -a 命令是为了将 swap 里的数据转储回内存,并清空 swap 里的数据。
+# 不可省略 swappiness 设置而只执行 swapoff -a;否则,重启后 swap 会再次自动打开,使得操作失效。
+swapoff -a && swapon -a
+# 在不重启的情况下使配置生效。
+sysctl -p
+# 检查内存分配,预期 swap 为 0
+free -m
+```
diff --git
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 81fef373..c252a240 100644
---
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -46,6 +46,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 准备步骤
1. 准备IoTDB数据库安装包
:apache-iotdb-{version}-all-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_apache.md))
diff --git
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index fc5df72c..357cf048 100644
---
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -48,6 +48,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 准备步骤
1. 准备IoTDB数据库安装包
:iotdb-enterprise-{version}-bin.zip(安装包获取见:[链接](../Deployment-and-Maintenance/IoTDB-Package_timecho.md))
diff --git
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 32573366..e882dde4 100644
---
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -40,6 +40,8 @@
- 使用同一用户操作:确保在启动、停止等操作均保持使用同一用户,不要切换用户。
- 避免使用 sudo:尽量避免使用 sudo 命令,因为它会以 root 用户权限执行命令,可能会引起权限混淆或安全问题。
+6. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 安装步骤
### 2.1 前置检查
diff --git
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 1574c0fa..02bcc90a 100644
---
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -44,6 +44,8 @@
6.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](./Monitoring-panel-deployment.md)。
+7. 在安装部署数据库前,可以使用健康检查工具检测 IoTDB 节点运行环境,并获取详细的检查结果。 IoTDB
健康检查工具使用方法可以参考:[健康检查工具](../Tools-System/Health-Check-Tool.md)。
+
## 2. 安装步骤
### 2.1 前置检查