This is an automated email from the ASF dual-hosted git repository.
caogaofei 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 be8ad00 Deployment document modification
be8ad00 is described below
commit be8ad00b6d9a5cb16f016809f6d06453d411b500
Author: 石林松 <[email protected]>
AuthorDate: Thu Aug 22 16:23:47 2024 +0800
Deployment document modification
---
src/.vuepress/sidebar/V1.3.x/en.ts | 2 +-
src/.vuepress/sidebar/V1.3.x/zh.ts | 2 +-
src/.vuepress/sidebar_timecho/V1.3.x/en.ts | 2 +-
src/.vuepress/sidebar_timecho/V1.3.x/zh.ts | 2 +-
.../Cluster-Deployment_apache.md | 8 +-
.../Cluster-Deployment_timecho.md | 10 +-
.../Database-Resources.md | 6 +
.../Environment-Requirements.md | 200 +++++++++++++++------
.../Stand-Alone-Deployment_apache.md | 8 +-
.../Stand-Alone-Deployment_timecho.md | 10 +-
.../Cluster-Deployment_apache.md | 8 +-
.../Cluster-Deployment_timecho.md | 11 +-
.../Database-Resources.md | 6 +
.../Environment-Requirements.md | 200 +++++++++++++++------
.../Stand-Alone-Deployment_apache.md | 8 +-
.../Stand-Alone-Deployment_timecho.md | 10 +-
.../Cluster-Deployment_apache.md | 8 +-
.../Cluster-Deployment_timecho.md | 11 +-
.../Database-Resources.md | 6 +
.../Environment-Requirements.md | 196 ++++++++++++++------
.../Stand-Alone-Deployment_apache.md | 8 +-
.../Stand-Alone-Deployment_timecho.md | 10 +-
.../Cluster-Deployment_apache.md | 8 +-
.../Cluster-Deployment_timecho.md | 11 +-
.../Database-Resources.md | 6 +
.../Environment-Requirements.md | 194 +++++++++++++++-----
.../Stand-Alone-Deployment_apache.md | 8 +-
.../Stand-Alone-Deployment_timecho.md | 10 +-
28 files changed, 708 insertions(+), 261 deletions(-)
diff --git a/src/.vuepress/sidebar/V1.3.x/en.ts
b/src/.vuepress/sidebar/V1.3.x/en.ts
index e9297ea..fa7742f 100644
--- a/src/.vuepress/sidebar/V1.3.x/en.ts
+++ b/src/.vuepress/sidebar/V1.3.x/en.ts
@@ -69,7 +69,7 @@ export const enSidebar = {
children: [
{ text: 'Package Acquisition', link: 'IoTDB-Package_apache' },
{ text: 'Database Resources', link: 'Database-Resources' },
- { text: 'Environment Requirements', link: 'Environment-Requirements' },
+ { text: 'System Requirements', link: 'Environment-Requirements' },
{ text: 'Stand-Alone Deployment', link:
'Stand-Alone-Deployment_apache' },
{ text: 'Cluster Deployment', link: 'Cluster-Deployment_apache' },
{ text: 'Docker Deployment', link: 'Docker-Deployment_apache' },
diff --git a/src/.vuepress/sidebar/V1.3.x/zh.ts
b/src/.vuepress/sidebar/V1.3.x/zh.ts
index f8ec219..d54dee2 100644
--- a/src/.vuepress/sidebar/V1.3.x/zh.ts
+++ b/src/.vuepress/sidebar/V1.3.x/zh.ts
@@ -69,7 +69,7 @@ export const zhSidebar = {
children: [
{ text: '安装包获取', link: 'IoTDB-Package_apache' },
{ text: '资源规划', link: 'Database-Resources' },
- { text: '环境要求', link: 'Environment-Requirements' },
+ { text: '系统配置', link: 'Environment-Requirements' },
{ text: '单机版部署', link: 'Stand-Alone-Deployment_apache' },
{ text: '集群版部署', link: 'Cluster-Deployment_apache' },
{ text: 'Docker部署', link: 'Docker-Deployment_apache' },
diff --git a/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
b/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
index 5bfe7bc..7c0fa75 100644
--- a/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
+++ b/src/.vuepress/sidebar_timecho/V1.3.x/en.ts
@@ -69,7 +69,7 @@ export const enSidebar = {
children: [
{ text: 'Package Acquisition', link: 'IoTDB-Package_timecho' },
{ text: 'Database Resources', link: 'Database-Resources' },
- { text: 'Environment Requirements', link: 'Environment-Requirements' },
+ { text: 'System Requirements', link: 'Environment-Requirements' },
{ text: 'Stand-Alone Deployment', link:
'Stand-Alone-Deployment_timecho' },
{ text: 'Cluster Deployment', link: 'Cluster-Deployment_timecho' },
{ text: 'Dual Active Deployment', link:
'Dual-Active-Deployment_timecho' },
diff --git a/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
b/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
index 55c89b4..29e764f 100644
--- a/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
+++ b/src/.vuepress/sidebar_timecho/V1.3.x/zh.ts
@@ -69,7 +69,7 @@ export const zhSidebar = {
children: [
{ text: '安装包获取', link: 'IoTDB-Package_timecho' },
{ text: '资源规划', link: 'Database-Resources' },
- { text: '环境要求', link: 'Environment-Requirements' },
+ { text: '系统配置', link: 'Environment-Requirements' },
{ text: '单机版部署', link: 'Stand-Alone-Deployment_timecho' },
{ text: '集群版部署', link: 'Cluster-Deployment_timecho' },
{ text: '双活版部署', link: 'Dual-Active-Deployment_timecho' },
diff --git
a/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index e5796c3..d727843 100644
---
a/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -28,13 +28,17 @@ This section will take the IoTDB classic cluster deployment
architecture 3C3D (3
## Note
-1. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md)
+
+2. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
## Preparation Steps
diff --git
a/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index d29341b..4a08161 100644
---
a/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -28,14 +28,18 @@ This section describes how to manually deploy an instance
that includes 3 Config
## Note
-1. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md)
+2. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
-3. 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](https://timecho.com/docs/UserGuide/latest/Deployment-and-Maintenance/Monitoring-panel-deployment.html)
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
+
+5. 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)
## Preparation Steps
diff --git
a/src/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
b/src/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
index 96d59fa..59a380d 100644
--- a/src/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
+++ b/src/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
@@ -184,5 +184,11 @@ Example: 1000 devices, each with 100 measurement points, a
total of 100000 seque
- Simplified calculation formula: 1000 * 100 * 12 * 86400 * 365 * 3/10=11T
### Storage Configuration
If the number of nodes is over 10000000 or the query load is high, it is
recommended to configure SSD
+## Network (Network card)
+If the write throughput does not exceed 10 million points/second, configure
1Gbps network card. When the write throughput exceeds 10 million points per
second, a 10Gbps network card needs to be configured.
+| **Write throughput (data points per second)** | **NIC rate** |
+| ------------------- | ------------- |
+| <10 million | 1Gbps |
+| >=10 million | 10Gbps |
## Other instructions
IoTDB has the ability to scale up clusters in seconds, and expanding node data
does not require migration. Therefore, you do not need to worry about the
limited cluster capacity estimated based on existing data. In the future, you
can add new nodes to the cluster when you need to scale up.
\ No newline at end of file
diff --git
a/src/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
b/src/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
index 86eb0e4..539d03b 100644
---
a/src/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
+++
b/src/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
@@ -18,92 +18,174 @@
under the License.
-->
-# Environment Requirements
+# System Requirements
-## Operating System Requirements
+## Disk Array
-IoTDB supports operating systems such as Linux, Windows, and MacOS, while the
enterprise version supports domestic CPUs such as Loongson, Phytium, and
Kunpeng. It also supports domestic server operating systems such as Neokylin,
KylinOS, UOS, and Linx.
+### Configuration Suggestions
+
+IoTDB has no strict operation requirements on disk array configuration. It is
recommended to use multiple disk arrays to store IoTDB data to achieve the goal
of concurrent writing to multiple disk arrays. For configuration, refer to the
following suggestions:
+1. Physical environment
+ System disk: You are advised to use two disks as Raid1, considering only
the space occupied by the operating system itself, and do not reserve system
disk space for the IoTDB
+ Data disk:
+ Raid is recommended to protect data on disks
+ It is recommended to provide multiple disks (1-6 disks) or disk groups for
the IoTDB. (It is not recommended to create a disk array for all disks, as this
will affect the maximum performance of the IoTDB.)
+2. Virtual environment
+ You are advised to mount multiple hard disks (1-6 disks).
+### Configuration Example
-## System Environment Preparation
+- Example 1: Four 3.5-inch hard disks
-### Important Reminder
+Only a few hard disks are installed on the server. Configure Raid5 directly.
+The recommended configurations are as follows:
+| **Use classification** | **Raid type** | **Disk number** | **Redundancy** |
**Available capacity** |
+| ----------- | -------- | -------- | --------- | -------- |
+| system/data disk | RAID5 | 4 | 1 | 3 | is allowed to fail|
-Whether in Linux or Windows, please ensure that the installation path of IoTDB
does not contain spaces or Chinese characters to avoid software running
abnormally.
+- Example 2: Twelve 3.5-inch hard disks
+The server is configured with twelve 3.5-inch disks.
+Two disks are recommended as Raid1 system disks. The two data disks can be
divided into two Raid5 groups. Each group of five disks can be used as four
disks.
+The recommended configurations are as follows:
+| **Use classification** | **Raid type** | **Disk number** | **Redundancy** |
**Available capacity** |
+| -------- | -------- | -------- | --------- | -------- |
+| system disk | RAID1 | 2 | 1 | 1 |
+| data disk | RAID5 | 5 | 1 | 4 |
+| data disk | RAID5 | 5 | 1 | 4 |
+- Example 3:24 2.5-inch disks
+The server is configured with 24 2.5-inch disks.
+Two disks are recommended as Raid1 system disks. The last two disks can be
divided into three Raid5 groups. Each group of seven disks can be used as six
disks. The remaining block can be idle or used to store pre-write logs.
+The recommended configurations are as follows:
+| **Use classification** | **Raid type** | **Disk number** | **Redundancy** |
**Available capacity** |
+| -------- | -------- | -------- | --------- | -------- |
+| system disk | RAID1 | 2 | 1 | 1 |
+| data disk | RAID5 | 7 | 1 | 6 |
+| data disk | RAID5 | 7 | 1 | 6 |
+| data disk | RAID5 | 7 | 1 | 6 |
+| data disk | NoRaid | 1 | 0 | 1 |
-### Environmental Preparation
+## Operating System
-To use IoTDB, the system environment needs to meet the following conditions
(using the centos7 command as an example):
+### Version Requirements
-1. Install Java runtime environment, Java version>=1.8, please ensure that the
jdk environment variable is set. V1.3.2.2 and above versions are recommended
to deploy JDK17 directly. In some scenarios, older versions of JDK may have
performance issues, and the datanode may not stop.
+IoTDB supports operating systems such as Linux, Windows, and MacOS, while the
enterprise version supports domestic CPUs such as Loongson, Phytium, and
Kunpeng. It also supports domestic server operating systems such as Neokylin,
KylinOS, UOS, and Linx.
-```shell
- # Taking JDK-17 installation in Centos7 as an example:
- tar -zxvf jdk-17_linux-x64_bin.tar # Unzip JDK file
- Vim ~/.bashrc # Configure JDK environment
- { export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
- export PATH=$JAVA_HOME/bin:$PATH
- } # Add JDK environment variables
- source ~/.bashrc # Configuration environment takes
effect
- java -version # Check JDK environment
+### Disk Partition
+
+- The default standard partition mode is recommended. LVM extension and hard
disk encryption are not recommended.
+- The system disk needs only the space used by the operating system, and does
not need to reserve space for the IoTDB.
+- Each disk group corresponds to only one partition. Data disks (with multiple
disk groups, corresponding to raid) do not need additional partitions. All
space is used by the IoTDB.
+The following table lists the recommended disk partitioning methods.
+<table>
+ <tr>
+ <th>Disk classification</th>
+ <th>Disk set</th>
+ <th>Drive</th>
+ <th>Capacity</th>
+ <th>File system type</th>
+ </tr>
+ <tr>
+ <td rowspan="2">System disk</td>
+ <td rowspan="2">Disk group0</td>
+ <td>/boot</td>
+ <td>1GB</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td>/</td>
+ <td>Remaining space of the disk group</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td rowspan="3">Data disk</td>
+ <td>Disk set1</td>
+ <td>/data1</td>
+ <td>Full space of disk group1</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td>Disk set2</td>
+ <td>/data2</td>
+ <td>Full space of disk group2</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td colspan="4">......</td>
+ </tr>
+</table>
+### Network Configuration
+
+1. Disable the firewall
+
+```Bash
+# View firewall
+systemctl status firewalld
+# Disable firewall
+systemctl stop firewalld
+# Disable firewall permanently
+systemctl disable firewalld
```
+2. Ensure that the required port is not occupied
+
+(1) Check the ports occupied by the cluster: In the default cluster
configuration, ConfigNode occupies ports 10710 and 10720, and DataNode occupies
ports 6667, 10730, 10740, 10750, 10760, 9090, 9190, and 3000. Ensure that these
ports are not occupied. Check methods are as follows:
+
+```Bash
+lsof -i:6667 or netstat -tunp | grep 6667
+lsof -i:10710 or netstat -tunp | grep 10710
+lsof -i:10720 or netstat -tunp | grep 10720
+# If the command outputs, the port is occupied.
+```
+
+(2) Checking the port occupied by the cluster deployment tool: When using the
cluster management tool opskit to install and deploy the cluster, enable the
SSH remote connection service configuration and open port 22.
+
+```Bash
+yum install openssh-server # Install the ssh service
+systemctl start sshd # Enable port 22
+```
+
+3. Ensure that servers are connected to each other
+
+### Other Configuration
-2. Turn off system swap memory
+1. Disable the system swap memory
-```shell
+```Bash
echo "vm.swappiness = 0">> /etc/sysctl.conf
-# Executing the swapoff - a and swapon - a commands together is to dump the
data in swap back into memory and clear the data in swap.
-# Do not omit the swap business setting and only execute swap off - a;
Otherwise, after restarting, swap will automatically open again, causing the
operation to fail.
+# The swapoff -a and swapon -a commands are executed together to dump the data
in swap back to memory and to empty the data in swap.
+# Do not omit the swappiness setting and just execute swapoff -a; Otherwise,
swap automatically opens again after the restart, making the operation invalid.
swapoff -a && swapon -a
-# Enable configuration to take effect without restarting.
+# Make the configuration take effect without restarting.
sysctl -p
-# Check memory allocation, expected swap to be 0
+# Check memory allocation, expecting swap to be 0
free -m
```
+2. Set the maximum number of open files to 65535 to avoid the error of "too
many open files".
-3. Set the maximum number of open files in the system to 65535 to avoid the
error of "too many open files".
-
-```shell
+```Bash
# View current restrictions
ulimit -n
-# Temporary modifications
+# Temporary changes
ulimit -n 65535
# Permanent modification
echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf
-# After exiting the current terminal session, the expected display is 65535
+# View after exiting the current terminal session, expect to display 65535
ulimit -n
```
-
-4. Turn off firewall
-
-```shell
-# View firewall
-systemctl status firewalld
-# Turn off firewall
-systemctl stop firewalld
-# Permanently disable firewall
-systemctl disable firewalld
-```
-
-5. Ensure that the required ports are not occupied
-
- - Check for cluster occupied ports: In the default configuration of the
cluster, ConfigNode will occupy ports 10710 and 10720, while DataNode will
occupy ports 6667, 10730, 10740, 10750, 1076090919091903000. Please ensure that
these ports are not occupied. The inspection method is as follows:
-
- ```Bash
- lsof -i:6667 or netstat -tunp | grep 6667
- lsof -i:10710 or netstat -tunp | grep 10710
- lsof -i:10720 or netstat -tunp | grep 10720
- # If the command has output, it indicates that the port is already
occupied.
- ```
-
-- Check for port occupancy by cluster deployment tool: When installing and
deploying a cluster using the cluster management tool opskit, it is necessary
to open the SSH remote connection service configuration and open port 22.
-
- ```Bash
- yum install openssh-server # Install SSH service
- systemctl start sshd # Enable Port 22
- ```
-
+## Software Dependence
+
+Install the Java runtime environment (Java version >= 1.8). Ensure that jdk
environment variables are set. (It is recommended to deploy JDK17 for V1.3.2.2
or later. In some scenarios, the performance of JDK of earlier versions is
compromised, and Datanodes cannot be stopped.)
+
+```Bash
+# The following is an example of installing in centos7 using JDK-17:
+tar -zxvf JDk-17_linux-x64_bin.tar # Decompress the JDK file
+Vim ~/.bashrc # Configure the JDK environment
+{ export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
+ export PATH=$JAVA_HOME/bin:$PATH
+} # Add JDK environment variables
+source ~/.bashrc # The configuration takes effect
+java -version # Check the JDK environment
+```
\ No newline at end of file
diff --git
a/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 2d2395a..3a02ede 100644
---
a/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -22,13 +22,17 @@
## Matters Needing Attention
-1. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md).
+
+2. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
``` Shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
## Installation Steps
diff --git
a/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 2af0ca4..11d0d70 100644
---
a/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -24,15 +24,19 @@ This chapter will introduce how to start an IoTDB
standalone instance, which inc
## Matters Needing Attention
-1. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md).
+
+2. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
```shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
-3. 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](https://timecho.com/docs/UserGuide/latest/Deployment-and-Maintenance/Monitoring-Board-Install-and-Deploy.html)。
+5. 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).
## Installation Steps
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 0753247..5be6601 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -28,13 +28,17 @@ This section will take the IoTDB classic cluster deployment
architecture 3C3D (3
## Note
-1. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md)
+
+2. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
## 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 554f366..e2b7147 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -28,14 +28,19 @@ This section describes how to manually deploy an instance
that includes 3 Config
## Note
-1. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md)
+
+2. It is recommended to prioritize using `hostname` for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure /etc/hosts on the target server. For example, if the
local IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure the `cn_internal_address`
and `dn_internal_address` of I [...]
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
-3. 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](https://timecho.com/docs/UserGuide/latest/Deployment-and-Maintenance/Monitoring-panel-deployment.html)
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
+
+5. 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)
## Preparation Steps
diff --git
a/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
b/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
index 96d59fa..59a380d 100644
--- a/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
+++ b/src/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
@@ -184,5 +184,11 @@ Example: 1000 devices, each with 100 measurement points, a
total of 100000 seque
- Simplified calculation formula: 1000 * 100 * 12 * 86400 * 365 * 3/10=11T
### Storage Configuration
If the number of nodes is over 10000000 or the query load is high, it is
recommended to configure SSD
+## Network (Network card)
+If the write throughput does not exceed 10 million points/second, configure
1Gbps network card. When the write throughput exceeds 10 million points per
second, a 10Gbps network card needs to be configured.
+| **Write throughput (data points per second)** | **NIC rate** |
+| ------------------- | ------------- |
+| <10 million | 1Gbps |
+| >=10 million | 10Gbps |
## Other instructions
IoTDB has the ability to scale up clusters in seconds, and expanding node data
does not require migration. Therefore, you do not need to worry about the
limited cluster capacity estimated based on existing data. In the future, you
can add new nodes to the cluster when you need to scale up.
\ No newline at end of file
diff --git
a/src/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
b/src/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
index 86eb0e4..539d03b 100644
---
a/src/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
+++
b/src/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
@@ -18,92 +18,174 @@
under the License.
-->
-# Environment Requirements
+# System Requirements
-## Operating System Requirements
+## Disk Array
-IoTDB supports operating systems such as Linux, Windows, and MacOS, while the
enterprise version supports domestic CPUs such as Loongson, Phytium, and
Kunpeng. It also supports domestic server operating systems such as Neokylin,
KylinOS, UOS, and Linx.
+### Configuration Suggestions
+
+IoTDB has no strict operation requirements on disk array configuration. It is
recommended to use multiple disk arrays to store IoTDB data to achieve the goal
of concurrent writing to multiple disk arrays. For configuration, refer to the
following suggestions:
+1. Physical environment
+ System disk: You are advised to use two disks as Raid1, considering only
the space occupied by the operating system itself, and do not reserve system
disk space for the IoTDB
+ Data disk:
+ Raid is recommended to protect data on disks
+ It is recommended to provide multiple disks (1-6 disks) or disk groups for
the IoTDB. (It is not recommended to create a disk array for all disks, as this
will affect the maximum performance of the IoTDB.)
+2. Virtual environment
+ You are advised to mount multiple hard disks (1-6 disks).
+### Configuration Example
-## System Environment Preparation
+- Example 1: Four 3.5-inch hard disks
-### Important Reminder
+Only a few hard disks are installed on the server. Configure Raid5 directly.
+The recommended configurations are as follows:
+| **Use classification** | **Raid type** | **Disk number** | **Redundancy** |
**Available capacity** |
+| ----------- | -------- | -------- | --------- | -------- |
+| system/data disk | RAID5 | 4 | 1 | 3 | is allowed to fail|
-Whether in Linux or Windows, please ensure that the installation path of IoTDB
does not contain spaces or Chinese characters to avoid software running
abnormally.
+- Example 2: Twelve 3.5-inch hard disks
+The server is configured with twelve 3.5-inch disks.
+Two disks are recommended as Raid1 system disks. The two data disks can be
divided into two Raid5 groups. Each group of five disks can be used as four
disks.
+The recommended configurations are as follows:
+| **Use classification** | **Raid type** | **Disk number** | **Redundancy** |
**Available capacity** |
+| -------- | -------- | -------- | --------- | -------- |
+| system disk | RAID1 | 2 | 1 | 1 |
+| data disk | RAID5 | 5 | 1 | 4 |
+| data disk | RAID5 | 5 | 1 | 4 |
+- Example 3:24 2.5-inch disks
+The server is configured with 24 2.5-inch disks.
+Two disks are recommended as Raid1 system disks. The last two disks can be
divided into three Raid5 groups. Each group of seven disks can be used as six
disks. The remaining block can be idle or used to store pre-write logs.
+The recommended configurations are as follows:
+| **Use classification** | **Raid type** | **Disk number** | **Redundancy** |
**Available capacity** |
+| -------- | -------- | -------- | --------- | -------- |
+| system disk | RAID1 | 2 | 1 | 1 |
+| data disk | RAID5 | 7 | 1 | 6 |
+| data disk | RAID5 | 7 | 1 | 6 |
+| data disk | RAID5 | 7 | 1 | 6 |
+| data disk | NoRaid | 1 | 0 | 1 |
-### Environmental Preparation
+## Operating System
-To use IoTDB, the system environment needs to meet the following conditions
(using the centos7 command as an example):
+### Version Requirements
-1. Install Java runtime environment, Java version>=1.8, please ensure that the
jdk environment variable is set. V1.3.2.2 and above versions are recommended
to deploy JDK17 directly. In some scenarios, older versions of JDK may have
performance issues, and the datanode may not stop.
+IoTDB supports operating systems such as Linux, Windows, and MacOS, while the
enterprise version supports domestic CPUs such as Loongson, Phytium, and
Kunpeng. It also supports domestic server operating systems such as Neokylin,
KylinOS, UOS, and Linx.
-```shell
- # Taking JDK-17 installation in Centos7 as an example:
- tar -zxvf jdk-17_linux-x64_bin.tar # Unzip JDK file
- Vim ~/.bashrc # Configure JDK environment
- { export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
- export PATH=$JAVA_HOME/bin:$PATH
- } # Add JDK environment variables
- source ~/.bashrc # Configuration environment takes
effect
- java -version # Check JDK environment
+### Disk Partition
+
+- The default standard partition mode is recommended. LVM extension and hard
disk encryption are not recommended.
+- The system disk needs only the space used by the operating system, and does
not need to reserve space for the IoTDB.
+- Each disk group corresponds to only one partition. Data disks (with multiple
disk groups, corresponding to raid) do not need additional partitions. All
space is used by the IoTDB.
+The following table lists the recommended disk partitioning methods.
+<table>
+ <tr>
+ <th>Disk classification</th>
+ <th>Disk set</th>
+ <th>Drive</th>
+ <th>Capacity</th>
+ <th>File system type</th>
+ </tr>
+ <tr>
+ <td rowspan="2">System disk</td>
+ <td rowspan="2">Disk group0</td>
+ <td>/boot</td>
+ <td>1GB</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td>/</td>
+ <td>Remaining space of the disk group</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td rowspan="3">Data disk</td>
+ <td>Disk set1</td>
+ <td>/data1</td>
+ <td>Full space of disk group1</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td>Disk set2</td>
+ <td>/data2</td>
+ <td>Full space of disk group2</td>
+ <td>Acquiesce</td>
+ </tr>
+ <tr>
+ <td colspan="4">......</td>
+ </tr>
+</table>
+### Network Configuration
+
+1. Disable the firewall
+
+```Bash
+# View firewall
+systemctl status firewalld
+# Disable firewall
+systemctl stop firewalld
+# Disable firewall permanently
+systemctl disable firewalld
```
+2. Ensure that the required port is not occupied
+
+(1) Check the ports occupied by the cluster: In the default cluster
configuration, ConfigNode occupies ports 10710 and 10720, and DataNode occupies
ports 6667, 10730, 10740, 10750, 10760, 9090, 9190, and 3000. Ensure that these
ports are not occupied. Check methods are as follows:
+
+```Bash
+lsof -i:6667 or netstat -tunp | grep 6667
+lsof -i:10710 or netstat -tunp | grep 10710
+lsof -i:10720 or netstat -tunp | grep 10720
+# If the command outputs, the port is occupied.
+```
+
+(2) Checking the port occupied by the cluster deployment tool: When using the
cluster management tool opskit to install and deploy the cluster, enable the
SSH remote connection service configuration and open port 22.
+
+```Bash
+yum install openssh-server # Install the ssh service
+systemctl start sshd # Enable port 22
+```
+
+3. Ensure that servers are connected to each other
+
+### Other Configuration
-2. Turn off system swap memory
+1. Disable the system swap memory
-```shell
+```Bash
echo "vm.swappiness = 0">> /etc/sysctl.conf
-# Executing the swapoff - a and swapon - a commands together is to dump the
data in swap back into memory and clear the data in swap.
-# Do not omit the swap business setting and only execute swap off - a;
Otherwise, after restarting, swap will automatically open again, causing the
operation to fail.
+# The swapoff -a and swapon -a commands are executed together to dump the data
in swap back to memory and to empty the data in swap.
+# Do not omit the swappiness setting and just execute swapoff -a; Otherwise,
swap automatically opens again after the restart, making the operation invalid.
swapoff -a && swapon -a
-# Enable configuration to take effect without restarting.
+# Make the configuration take effect without restarting.
sysctl -p
-# Check memory allocation, expected swap to be 0
+# Check memory allocation, expecting swap to be 0
free -m
```
+2. Set the maximum number of open files to 65535 to avoid the error of "too
many open files".
-3. Set the maximum number of open files in the system to 65535 to avoid the
error of "too many open files".
-
-```shell
+```Bash
# View current restrictions
ulimit -n
-# Temporary modifications
+# Temporary changes
ulimit -n 65535
# Permanent modification
echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf
-# After exiting the current terminal session, the expected display is 65535
+# View after exiting the current terminal session, expect to display 65535
ulimit -n
```
-
-4. Turn off firewall
-
-```shell
-# View firewall
-systemctl status firewalld
-# Turn off firewall
-systemctl stop firewalld
-# Permanently disable firewall
-systemctl disable firewalld
-```
-
-5. Ensure that the required ports are not occupied
-
- - Check for cluster occupied ports: In the default configuration of the
cluster, ConfigNode will occupy ports 10710 and 10720, while DataNode will
occupy ports 6667, 10730, 10740, 10750, 1076090919091903000. Please ensure that
these ports are not occupied. The inspection method is as follows:
-
- ```Bash
- lsof -i:6667 or netstat -tunp | grep 6667
- lsof -i:10710 or netstat -tunp | grep 10710
- lsof -i:10720 or netstat -tunp | grep 10720
- # If the command has output, it indicates that the port is already
occupied.
- ```
-
-- Check for port occupancy by cluster deployment tool: When installing and
deploying a cluster using the cluster management tool opskit, it is necessary
to open the SSH remote connection service configuration and open port 22.
-
- ```Bash
- yum install openssh-server # Install SSH service
- systemctl start sshd # Enable Port 22
- ```
-
+## Software Dependence
+
+Install the Java runtime environment (Java version >= 1.8). Ensure that jdk
environment variables are set. (It is recommended to deploy JDK17 for V1.3.2.2
or later. In some scenarios, the performance of JDK of earlier versions is
compromised, and Datanodes cannot be stopped.)
+
+```Bash
+# The following is an example of installing in centos7 using JDK-17:
+tar -zxvf JDk-17_linux-x64_bin.tar # Decompress the JDK file
+Vim ~/.bashrc # Configure the JDK environment
+{ export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
+ export PATH=$JAVA_HOME/bin:$PATH
+} # Add JDK environment variables
+source ~/.bashrc # The configuration takes effect
+java -version # Check the JDK environment
+```
\ No newline at end of file
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 ba7fd0a..96e587f 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
@@ -22,13 +22,17 @@
## Matters Needing Attention
-1. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md).
+
+2. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
``` Shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings.
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
## 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 fe26055..3646abc 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
@@ -24,15 +24,19 @@ This chapter will introduce how to start an IoTDB
standalone instance, which inc
## Matters Needing Attention
-1. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
+1. Before installation, ensure that the system is complete by referring to
[System configuration](.\Environment-Requirements.md).
+
+2. It is recommended to prioritize using 'hostname' for IP configuration
during deployment, which can avoid the problem of modifying the host IP in the
later stage and causing the database to fail to start. To set the host name,
you need to configure/etc/hosts on the target server. For example, if the local
IP is 192.168.1.3 and the host name is iotdb-1, you can use the following
command to set the server's host name and configure IoTDB's'
cn_internal-address' using the host name dn_inte [...]
```shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings
+3. Some parameters cannot be modified after the first startup. Please refer to
the "Parameter Configuration" section below for settings
+
+4. Whether in linux or windows, ensure that the IoTDB installation path does
not contain Spaces and Chinese characters to avoid software exceptions.
-3. 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](https://timecho.com/docs/UserGuide/latest/Deployment-and-Maintenance/Monitoring-Board-Install-and-Deploy.html)。
+5. 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).
## Installation Steps
diff --git
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
index 252aa68..f2d24a9 100644
---
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
+++
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_apache.md
@@ -28,13 +28,17 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
+3. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
+
+4. 无论是在linux还是windows中,请确保IoTDB的安装路径中不含空格和中文,避免软件运行异常。
## 准备步骤
diff --git
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
index 734b739..5998aee 100644
---
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
+++
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Cluster-Deployment_timecho.md
@@ -28,14 +28,19 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。`dn_internal_address`。
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
-3.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](https://timecho.com/docs/zh/UserGuide/latest/Deployment-and-Maintenance/Monitoring-panel-deployment.html)
+3. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
+
+4. 无论是在linux还是windows中,请确保IoTDB的安装路径中不含空格和中文,避免软件运行异常。
+
+5.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](.\Monitoring-panel-deployment.md)
## 准备步骤
diff --git
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
index 2c850bf..17e09aa 100644
--- a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
+++ b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Database-Resources.md
@@ -183,5 +183,11 @@
- 简版计算公式:1000 * 100 * 12 * 86400 * 365 * 3 / 10 = 11T
### 存储配置
1000w 点位以上或查询负载较大,推荐配置 SSD。
+## 网络(网卡)
+在写入吞吐不超过1000万点/秒时,需配置千兆网卡;当写入吞吐超过 1000万点/秒时,需配置万兆网卡。
+| **写入吞吐(数据点/秒)** | **网卡速率** |
+| ------------------- | ------------- |
+| <1000万 | 1Gbps(千兆) |
+| >=1000万 | 10Gbps(万兆) |
## 其他说明
IoTDB 具有集群秒级扩容能力,扩容节点数据可不迁移,因此您无需担心按现有数据情况估算的集群能力有限,未来您可在需要扩容时为集群加入新的节点。
\ No newline at end of file
diff --git
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
index 122d8ac..99c5b14 100644
---
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
+++
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Environment-Requirements.md
@@ -18,42 +18,153 @@
under the License.
-->
-# 环境要求
+# 系统配置
-## 操作系统要求
+## 磁盘阵列
+
+### 配置建议
+
+IoTDB对磁盘阵列配置没有严格运行要求,推荐使用多个磁盘阵列存储IoTDB的数据,以达到多个磁盘阵列并发写入的目标,配置可参考以下建议:
+
+1. 物理环境
+ 系统盘:建议使用2块磁盘做Raid1,仅考虑操作系统自身所占空间即可,可以不为IoTDB预留系统盘空间
+ 数据盘
+ 建议做Raid,在磁盘维度进行数据保护
+ 建议为IoTDB提供多块磁盘(1-6块左右)或磁盘组(不建议将所有磁盘做成一个磁盘阵列,会影响 IoTDB的性能上限)
+2. 虚拟环境
+ 建议挂载多块硬盘(1-6块左右)
-IoTDB 支持 Linux、Windows、MacOS 等操作系统,同时企业版支持龙芯、飞腾、鲲鹏等国产
CPU,支持中标麒麟、银河麒麟、统信、凝思等国产服务器操作系统。
+### 配置示例
+- 示例1,4块3.5英寸硬盘
+因服务器安装的硬盘较少,直接做Raid5即可,无需其他配置。
-## 系统环境准备
+推荐配置如下:
-### 重要提示
+| **使用分类** | **Raid类型** | **硬盘数量** | **冗余** | **可用容量** |
+| ----------- | -------- | -------- | --------- | -------- |
+| 系统/数据盘 | RAID5 | 4 | 允许坏1块 | 3 |
-无论是在 linux 还是 windows 中,请确保 IoTDB 的安装路径中不含空格和中文,避免软件运行异常。
+- 示例2,12块3.5英寸硬盘
+服务器配置12块3.5英寸盘。
+前2块盘推荐Raid1作系统盘,2组数据盘可分为2组Raid5,每组5块盘实际可用4块。
-### 环境准备
+推荐配置如下:
-要使用 IoTDB,需要系统环境具备以下条件(以 centos7 命令为例):
+| **使用分类** | **Raid类型** | **硬盘数量** | **冗余** | **可用容量** |
+| -------- | -------- | -------- | --------- | -------- |
+| 系统盘 | RAID1 | 2 | 允许坏1块 | 1 |
+| 数据盘 | RAID5 | 5 | 允许坏1块 | 4 |
+| 数据盘 | RAID5 | 5 | 允许坏1块 | 4 |
-1. 安装 Java 运行环境 ,Java 版本 >= 1.8,请确保已设置 jdk 环境变量。 V1.3.2.2
及之上版本推荐直接部署JDK17,老版本JDK部分场景下性能有问题,且datanode会出现stop不掉的问题。
+- 示例3,24块2.5英寸盘
-```shell
- #下面以在centos7,使用JDK-17安装为例:
- tar -zxvf jdk-17_linux-x64_bin.tar #解压JDK文件
- Vim ~/.bashrc #配置JDK环境
- { export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
- export PATH=$JAVA_HOME/bin:$PATH
- } #添加JDK环境变量
- source ~/.bashrc #配置环境生效
- java -version #检查JDK环境
+服务器配置24块2.5英寸盘。
+
+前2块盘推荐Raid1作系统盘,后面可分为3组Raid5,每组7块盘实际可用6块。剩余一块可闲置或存储写前日志使用。
+
+推荐配置如下:
+
+| **使用分类** | **Raid类型** | **硬盘数量** | **冗余** | **可用容量** |
+| -------- | -------- | -------- | --------- | -------- |
+| 系统盘 | RAID1 | 2 | 允许坏1块 | 1 |
+| 数据盘 | RAID5 | 7 | 允许坏1块 | 6 |
+| 数据盘 | RAID5 | 7 | 允许坏1块 | 6 |
+| 数据盘 | RAID5 | 7 | 允许坏1块 | 6 |
+| 数据盘 | NoRaid | 1 | 损坏丢失 | 1 |
+
+## 操作系统
+
+### 版本要求
+
+IoTDB支持Linux、Windows、MacOS等操作系统,同时企业版支持龙芯、飞腾、鲲鹏等国产
CPU,支持中标麒麟、银河麒麟、统信、凝思等国产服务器操作系统。
+
+### 硬盘分区
+
+- 建议使用默认的标准分区方式,不推荐LVM扩展和硬盘加密。
+- 系统盘只需满足操作系统的使用空间即可,不需要为IoTDB预留空间。
+- 每个硬盘组只对应一个分区即可,数据盘(里面有多个磁盘组,对应raid)不用再额外分区,所有空间给IoTDB使用。
+
+建议的磁盘分区方式如下表所示。
+<table>
+ <tr>
+ <th>硬盘分类</th>
+ <th>磁盘组</th>
+ <th>对应盘符</th>
+ <th>大小</th>
+ <th>文件系统类型</th>
+ </tr>
+ <tr>
+ <td rowspan="2">系统盘</td>
+ <td rowspan="2">磁盘组0</td>
+ <td>/boot</td>
+ <td>1GB</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td>/</td>
+ <td>磁盘组剩余全部空间</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td rowspan="3">数据盘</td>
+ <td>磁盘组1</td>
+ <td>/data1</td>
+ <td>磁盘组1全部空间</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td>磁盘组2</td>
+ <td>/data2</td>
+ <td>磁盘组2全部空间</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td colspan="4">......</td>
+ </tr>
+</table>
+
+### 网络配置
+
+1. 关闭防火墙
+
+```Bash
+# 查看防火墙
+systemctl status firewalld
+# 关闭防火墙
+systemctl stop firewalld
+# 永久关闭防火墙
+systemctl disable firewalld
+```
+
+2. 保证所需端口不被占用
+
+(1)集群占用端口的检查:在集群默认配置中,ConfigNode 会占用端口 10710 和 10720,DataNode 会占用端口
6667、10730、10740、10750 、10760、9090、9190、3000请确保这些端口未被占用。检查方式如下:
+
+```Bash
+lsof -i:6667 或 netstat -tunp | grep 6667
+lsof -i:10710 或 netstat -tunp | grep 10710
+lsof -i:10720 或 netstat -tunp | grep 10720
+#如果命令有输出,则表示该端口已被占用。
```
-2. 关闭系统 swap 内存
+(2)集群部署工具占用端口的检查:使用集群管理工具opskit安装部署集群时,需打开SSH远程连接服务配置,并开放22号端口。
-```shell
+```Bash
+yum install openssh-server #安装ssh服务
+systemctl start sshd #启用22号端口
+```
+
+3. 保证服务器之间的网络相互连通
+
+### 其他配置
+
+1. 关闭系统 swap 内存
+
+```Bash
echo "vm.swappiness = 0">> /etc/sysctl.conf
# 一起执行 swapoff -a 和 swapon -a 命令是为了将 swap 里的数据转储回内存,并清空 swap 里的数据。
# 不可省略 swappiness 设置而只执行 swapoff -a;否则,重启后 swap 会再次自动打开,使得操作失效。
@@ -64,9 +175,9 @@ sysctl -p
free -m
```
-3. 设置系统最大打开文件数为 65535,以避免出现 "太多的打开文件 "的错误。
-
-```shell
+2. 设置系统最大打开文件数为 65535,以避免出现 "太多的打开文件 "的错误。
+
+```Bash
#查看当前限制
ulimit -n
# 临时修改
@@ -78,32 +189,17 @@ echo "* hard nofile 65535" >> /etc/security/limits.conf
ulimit -n
```
-4. 关闭防火墙
-
-```shell
-# 查看防火墙
-systemctl status firewalld
-# 关闭防火墙
-systemctl stop firewalld
-# 永久关闭防火墙
-systemctl disable firewalld
-```
-
-5. 保证所需端口不被占用
-
-- 集群占用端口的检查:在集群默认配置中,ConfigNode 会占用端口 10710 和 10720,DataNode 会占用端口
6667、10730、10740、10750 、10760,9090, 9190, 3000 请确保这些端口未被占用。检查方式如下:
-
- ```Bash
- lsof -i:6667 或 netstat -tunp | grep 6667
- lsof -i:10710 或 netstat -tunp | grep 10710
- lsof -i:10720 或 netstat -tunp | grep 10720
- #如果命令有输出,则表示该端口已被占用。
- ```
+## 软件依赖
-- 集群部署工具占用端口的检查:使用集群管理工具 opskit 安装部署集群时,需打开 SSH 远程连接服务配置,并开放 22 号端口。
-
- ```Bash
- yum install openssh-server #安装ssh服务
- systemctl start sshd #启用22号端口
- ```
+安装 Java 运行环境 ,Java 版本 >= 1.8,请确保已设置 jdk 环境变量。(V1.3.2.2
及之上版本推荐直接部署JDK17,老版本JDK部分场景下性能有问题,且datanode会出现stop不掉的问题)
+```Bash
+ #下面以在centos7,使用JDK-17安装为例:
+ tar -zxvf jdk-17_linux-x64_bin.tar #解压JDK文件
+ Vim ~/.bashrc #配置JDK环境
+ { export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
+ export PATH=$JAVA_HOME/bin:$PATH
+ } #添加JDK环境变量
+ source ~/.bashrc #配置环境生效
+ java -version #检查JDK环境
+```
\ No newline at end of file
diff --git
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
index 404be1d..f55918a 100644
---
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
+++
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_apache.md
@@ -22,13 +22,17 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
```shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置。
+3. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置。
+
+4. 无论是在linux还是windows中,请确保IoTDB的安装路径中不含空格和中文,避免软件运行异常。
## 安装步骤
diff --git
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
index 7a1deb8..8baa373 100644
---
a/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
+++
b/src/zh/UserGuide/Master/Deployment-and-Maintenance/Stand-Alone-Deployment_timecho.md
@@ -24,15 +24,19 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
+1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、1.
安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
```shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置
+3. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置
+
+4. 无论是在linux还是windows中,请确保IoTDB的安装路径中不含空格和中文,避免软件运行异常。
-3.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](../Deployment-and-Maintenance/Monitoring-panel-deployment.md)。
+5.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](.\Monitoring-panel-deployment.md)。
## 安装步骤
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 913ba75..a0a9a4e 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
@@ -28,13 +28,17 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
+3. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
+
+4. 无论是在linux还是windows中,请确保IoTDB的安装路径中不含空格和中文,避免软件运行异常。
## 准备步骤
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 ecb4a33..5ae32b4 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
@@ -27,14 +27,19 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、`dn_internal_address`。`dn_internal_address`。
``` shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
-3.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](https://timecho.com/docs/zh/UserGuide/latest/Deployment-and-Maintenance/Monitoring-panel-deployment.html)
+3. 有些参数首次启动后不能修改,请参考下方的"参数配置"章节来进行设置。
+
+4. 无论是在linux还是windows中,请确保IoTDB的安装路径中不含空格和中文,避免软件运行异常。
+
+5.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](.\Monitoring-panel-deployment.md)
## 准备步骤
diff --git
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
index 09d6aa9..8393602 100644
--- a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
+++ b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Database-Resources.md
@@ -184,5 +184,11 @@
- 简版计算公式:1000 * 100 * 12 * 86400 * 365 * 3 / 10 = 11T
### 存储配置
1000w 点位以上或查询负载较大,推荐配置 SSD。
+## 网络(网卡)
+在写入吞吐不超过1000万点/秒时,需配置千兆网卡;当写入吞吐超过 1000万点/秒时,需配置万兆网卡。
+| **写入吞吐(数据点/秒)** | **网卡速率** |
+| ------------------- | ------------- |
+| <1000万 | 1Gbps(千兆) |
+| >=1000万 | 10Gbps(万兆) |
## 其他说明
IoTDB 具有集群秒级扩容能力,扩容节点数据可不迁移,因此您无需担心按现有数据情况估算的集群能力有限,未来您可在需要扩容时为集群加入新的节点。
\ No newline at end of file
diff --git
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
index 94c1a35..99c5b14 100644
---
a/src/zh/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
+++
b/src/zh/UserGuide/latest/Deployment-and-Maintenance/Environment-Requirements.md
@@ -18,42 +18,153 @@
under the License.
-->
-# 环境要求
+# 系统配置
-## 操作系统要求
+## 磁盘阵列
+
+### 配置建议
+
+IoTDB对磁盘阵列配置没有严格运行要求,推荐使用多个磁盘阵列存储IoTDB的数据,以达到多个磁盘阵列并发写入的目标,配置可参考以下建议:
+
+1. 物理环境
+ 系统盘:建议使用2块磁盘做Raid1,仅考虑操作系统自身所占空间即可,可以不为IoTDB预留系统盘空间
+ 数据盘
+ 建议做Raid,在磁盘维度进行数据保护
+ 建议为IoTDB提供多块磁盘(1-6块左右)或磁盘组(不建议将所有磁盘做成一个磁盘阵列,会影响 IoTDB的性能上限)
+2. 虚拟环境
+ 建议挂载多块硬盘(1-6块左右)
-IoTDB 支持 Linux、Windows、MacOS 等操作系统,同时企业版支持龙芯、飞腾、鲲鹏等国产
CPU,支持中标麒麟、银河麒麟、统信、凝思等国产服务器操作系统。
+### 配置示例
+- 示例1,4块3.5英寸硬盘
+因服务器安装的硬盘较少,直接做Raid5即可,无需其他配置。
-## 系统环境准备
+推荐配置如下:
-### 重要提示
+| **使用分类** | **Raid类型** | **硬盘数量** | **冗余** | **可用容量** |
+| ----------- | -------- | -------- | --------- | -------- |
+| 系统/数据盘 | RAID5 | 4 | 允许坏1块 | 3 |
-无论是在 linux 还是 windows 中,请确保 IoTDB 的安装路径中不含空格和中文,避免软件运行异常。
+- 示例2,12块3.5英寸硬盘
+服务器配置12块3.5英寸盘。
+前2块盘推荐Raid1作系统盘,2组数据盘可分为2组Raid5,每组5块盘实际可用4块。
-### 环境准备
+推荐配置如下:
-要使用 IoTDB,需要系统环境具备以下条件(以 centos7 命令为例):
+| **使用分类** | **Raid类型** | **硬盘数量** | **冗余** | **可用容量** |
+| -------- | -------- | -------- | --------- | -------- |
+| 系统盘 | RAID1 | 2 | 允许坏1块 | 1 |
+| 数据盘 | RAID5 | 5 | 允许坏1块 | 4 |
+| 数据盘 | RAID5 | 5 | 允许坏1块 | 4 |
-1. 安装 Java 运行环境 ,Java 版本 >= 1.8,请确保已设置 jdk 环境变量。 V1.3.2.2
及之上版本推荐直接部署JDK17,老版本JDK部分场景下性能有问题,且datanode会出现stop不掉的问题。
+- 示例3,24块2.5英寸盘
-```shell
- #下面以在centos7,使用JDK-17安装为例:
- tar -zxvf jdk-17_linux-x64_bin.tar #解压JDK文件
- Vim ~/.bashrc #配置JDK环境
- { export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
- export PATH=$JAVA_HOME/bin:$PATH
- } #添加JDK环境变量
- source ~/.bashrc #配置环境生效
- java -version #检查JDK环境
+服务器配置24块2.5英寸盘。
+
+前2块盘推荐Raid1作系统盘,后面可分为3组Raid5,每组7块盘实际可用6块。剩余一块可闲置或存储写前日志使用。
+
+推荐配置如下:
+
+| **使用分类** | **Raid类型** | **硬盘数量** | **冗余** | **可用容量** |
+| -------- | -------- | -------- | --------- | -------- |
+| 系统盘 | RAID1 | 2 | 允许坏1块 | 1 |
+| 数据盘 | RAID5 | 7 | 允许坏1块 | 6 |
+| 数据盘 | RAID5 | 7 | 允许坏1块 | 6 |
+| 数据盘 | RAID5 | 7 | 允许坏1块 | 6 |
+| 数据盘 | NoRaid | 1 | 损坏丢失 | 1 |
+
+## 操作系统
+
+### 版本要求
+
+IoTDB支持Linux、Windows、MacOS等操作系统,同时企业版支持龙芯、飞腾、鲲鹏等国产
CPU,支持中标麒麟、银河麒麟、统信、凝思等国产服务器操作系统。
+
+### 硬盘分区
+
+- 建议使用默认的标准分区方式,不推荐LVM扩展和硬盘加密。
+- 系统盘只需满足操作系统的使用空间即可,不需要为IoTDB预留空间。
+- 每个硬盘组只对应一个分区即可,数据盘(里面有多个磁盘组,对应raid)不用再额外分区,所有空间给IoTDB使用。
+
+建议的磁盘分区方式如下表所示。
+<table>
+ <tr>
+ <th>硬盘分类</th>
+ <th>磁盘组</th>
+ <th>对应盘符</th>
+ <th>大小</th>
+ <th>文件系统类型</th>
+ </tr>
+ <tr>
+ <td rowspan="2">系统盘</td>
+ <td rowspan="2">磁盘组0</td>
+ <td>/boot</td>
+ <td>1GB</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td>/</td>
+ <td>磁盘组剩余全部空间</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td rowspan="3">数据盘</td>
+ <td>磁盘组1</td>
+ <td>/data1</td>
+ <td>磁盘组1全部空间</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td>磁盘组2</td>
+ <td>/data2</td>
+ <td>磁盘组2全部空间</td>
+ <td>默认</td>
+ </tr>
+ <tr>
+ <td colspan="4">......</td>
+ </tr>
+</table>
+
+### 网络配置
+
+1. 关闭防火墙
+
+```Bash
+# 查看防火墙
+systemctl status firewalld
+# 关闭防火墙
+systemctl stop firewalld
+# 永久关闭防火墙
+systemctl disable firewalld
+```
+
+2. 保证所需端口不被占用
+
+(1)集群占用端口的检查:在集群默认配置中,ConfigNode 会占用端口 10710 和 10720,DataNode 会占用端口
6667、10730、10740、10750 、10760、9090、9190、3000请确保这些端口未被占用。检查方式如下:
+
+```Bash
+lsof -i:6667 或 netstat -tunp | grep 6667
+lsof -i:10710 或 netstat -tunp | grep 10710
+lsof -i:10720 或 netstat -tunp | grep 10720
+#如果命令有输出,则表示该端口已被占用。
+```
+
+(2)集群部署工具占用端口的检查:使用集群管理工具opskit安装部署集群时,需打开SSH远程连接服务配置,并开放22号端口。
+
+```Bash
+yum install openssh-server #安装ssh服务
+systemctl start sshd #启用22号端口
```
-2. 关闭系统 swap 内存
+3. 保证服务器之间的网络相互连通
-```shell
+### 其他配置
+
+1. 关闭系统 swap 内存
+
+```Bash
echo "vm.swappiness = 0">> /etc/sysctl.conf
# 一起执行 swapoff -a 和 swapon -a 命令是为了将 swap 里的数据转储回内存,并清空 swap 里的数据。
# 不可省略 swappiness 设置而只执行 swapoff -a;否则,重启后 swap 会再次自动打开,使得操作失效。
@@ -64,9 +175,9 @@ sysctl -p
free -m
```
-3. 设置系统最大打开文件数为 65535,以避免出现 "太多的打开文件 "的错误。
+2. 设置系统最大打开文件数为 65535,以避免出现 "太多的打开文件 "的错误。
-```shell
+```Bash
#查看当前限制
ulimit -n
# 临时修改
@@ -78,32 +189,17 @@ echo "* hard nofile 65535" >> /etc/security/limits.conf
ulimit -n
```
-4. 关闭防火墙
-
-```shell
-# 查看防火墙
-systemctl status firewalld
-# 关闭防火墙
-systemctl stop firewalld
-# 永久关闭防火墙
-systemctl disable firewalld
-```
-
-5. 保证所需端口不被占用
-
-- 集群占用端口的检查:在集群默认配置中,ConfigNode 会占用端口 10710 和 10720,DataNode 会占用端口
6667、10730、10740、10750 、10760,9090, 9190, 3000 请确保这些端口未被占用。检查方式如下:
-
- ```Bash
- lsof -i:6667 或 netstat -tunp | grep 6667
- lsof -i:10710 或 netstat -tunp | grep 10710
- lsof -i:10720 或 netstat -tunp | grep 10720
- #如果命令有输出,则表示该端口已被占用。
- ```
+## 软件依赖
-- 集群部署工具占用端口的检查:使用集群管理工具 opskit 安装部署集群时,需打开 SSH 远程连接服务配置,并开放 22 号端口。
-
- ```Bash
- yum install openssh-server #安装ssh服务
- systemctl start sshd #启用22号端口
- ```
+安装 Java 运行环境 ,Java 版本 >= 1.8,请确保已设置 jdk 环境变量。(V1.3.2.2
及之上版本推荐直接部署JDK17,老版本JDK部分场景下性能有问题,且datanode会出现stop不掉的问题)
+```Bash
+ #下面以在centos7,使用JDK-17安装为例:
+ tar -zxvf jdk-17_linux-x64_bin.tar #解压JDK文件
+ Vim ~/.bashrc #配置JDK环境
+ { export JAVA_HOME=/usr/lib/jvm/jdk-17.0.9
+ export PATH=$JAVA_HOME/bin:$PATH
+ } #添加JDK环境变量
+ source ~/.bashrc #配置环境生效
+ java -version #检查JDK环境
+```
\ No newline at end of file
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 cc4c477..444e145 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
@@ -22,13 +22,17 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
```shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置。
+3. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置。
+
+4. 无论是在 linux 还是 windows 中,请确保 IoTDB 的安装路径中不含空格和中文,避免软件运行异常。
## 安装步骤
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 7a1deb8..11070b5 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
@@ -24,15 +24,19 @@
## 注意事项
-1.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
+1. 安装前请确认系统已参照[系统配置](.\Environment-Requirements.md)准备完成。
+
+2.
部署时推荐优先使用`hostname`进行IP配置,可避免后期修改主机ip导致数据库无法启动的问题。设置hostname需要在目标服务器上配置/etc/hosts,如本机ip是192.168.1.3,hostname是iotdb-1,则可以使用以下命令设置服务器的
hostname,并使用hostname配置IoTDB的`cn_internal_address`、dn_internal_address、dn_rpc_address。
```shell
echo "192.168.1.3 iotdb-1" >> /etc/hosts
```
-2. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置
+3. 部分参数首次启动后不能修改,请参考下方的【参数配置】章节进行设置
+
+4. 无论是在 linux 还是 windows 中,请确保 IoTDB 的安装路径中不含空格和中文,避免软件运行异常。
-3.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](../Deployment-and-Maintenance/Monitoring-panel-deployment.md)。
+5.
推荐部署监控面板,可以对重要运行指标进行监控,随时掌握数据库运行状态,监控面板可以联系商务获取,部署监控面板步骤可以参考:[监控面板部署](.\Monitoring-panel-deployment.md)。
## 安装步骤