Skip to content

Latest commit

 

History

History
548 lines (412 loc) · 27.8 KB

File metadata and controls

548 lines (412 loc) · 27.8 KB

DataNode Config Manual

We use the same configuration files for IoTDB DataNode and Standalone version, all under the conf.

  • datanode-env.sh/bat:Environment configurations, in which we could set the memory allocation of DataNode and Standalone.

  • iotdb-system.properties:IoTDB system configurations.

1. ot Modification Configuration

For the convenience of users, IoTDB provides users with hot modification function, that is, modifying some configuration parameters in iotdb-system.properties during the system operation and applying them to the system immediately. In the parameters described below, these parameters whose way of Effective is hot-load support hot modification.

Trigger way: The client sends the command(sql) load configuration or set configuration to the IoTDB server.

2. Environment Configuration File(datanode-env.sh/bat)

The environment configuration file is mainly used to configure the Java environment related parameters when DataNode is running, such as JVM related configuration. This part of the configuration is passed to the JVM when the DataNode starts.

The details of each parameter are as follows:

  • MEMORY_SIZE
Name MEMORY_SIZE
Description The minimum heap memory size that IoTDB DataNode will use when startup
Type String
Default The default is a half of the memory.
Effective After restarting system
  • ON_HEAP_MEMORY
Name ON_HEAP_MEMORY
Description The heap memory size that IoTDB DataNode can use, Former Name: MAX_HEAP_SIZE
Type String
Default Calculate based on MEMORY_SIZE.
Effective After restarting system
  • OFF_HEAP_MEMORY
Name OFF_HEAP_MEMORY
Description The direct memory that IoTDB DataNode can use, Former Name: MAX_DIRECT_MEMORY_SIZE
Type String
Default Calculate based on MEMORY_SIZE.
Effective After restarting system
  • JMX_LOCAL
Name JMX_LOCAL
Description JMX monitoring mode, configured as yes to allow only local monitoring, no to allow remote monitoring
Type Enum String: "true", "false"
Default true
Effective After restarting system
  • JMX_PORT
Name JMX_PORT
Description JMX listening port. Please confirm that the port is not a system reserved port and is not occupied
Type Short Int: [0,65535]
Default 31999
Effective After restarting system
  • JMX_IP
Name JMX_IP
Description JMX listening address. Only take effect if JMX_LOCAL=false. 0.0.0.0 is never allowed
Type String
Default 127.0.0.1
Effective After restarting system

3. JMX Authorization

We STRONGLY RECOMMENDED you CHANGE the PASSWORD for the JMX remote connection.

The user and passwords are in ${IOTDB_CONF}/conf/jmx.password.

The permission definitions are in ${IOTDB_CONF}/conf/jmx.access.

4. DataNode/Standalone Configuration File (iotdb-system.properties)

4.1 Data Node RPC Configuration

  • dn_rpc_address
Name dn_rpc_address
Description The client rpc service listens on the address.
Type String
Default 127.0.0.1
Effective After restarting system
  • dn_rpc_port
Name dn_rpc_port
Description The client rpc service listens on the port.
Type Short Int : [0,65535]
Default 6667
Effective After restarting system
  • dn_internal_address
Name dn_internal_address
Description DataNode internal service host/IP
Type string
Default 127.0.0.1
Effective Only allowed to be modified in first start up
  • dn_internal_port
Name dn_internal_port
Description DataNode internal service port
Type int
Default 10730
Effective Only allowed to be modified in first start up
  • dn_mpp_data_exchange_port
Name mpp_data_exchange_port
Description MPP data exchange port
Type int
Default 10740
Effective Only allowed to be modified in first start up
  • dn_schema_region_consensus_port
Name dn_schema_region_consensus_port
Description DataNode Schema replica communication port for consensus
Type int
Default 10750
Effective Only allowed to be modified in first start up
  • dn_data_region_consensus_port
Name dn_data_region_consensus_port
Description DataNode Data replica communication port for consensus
Type int
Default 10760
Effective Only allowed to be modified in first start up
  • dn_join_cluster_retry_interval_ms
Name dn_join_cluster_retry_interval_ms
Description The time of data node waiting for the next retry to join into the cluster
Type long
Default 5000
Effective After restarting system

4.2 SSL Configuration

  • enable_thrift_ssl
Name enable_thrift_ssl
Description When enable_thrift_ssl is configured as true, SSL encryption will be used for communication through dn_rpc_port
Type Boolean
Default false
Effective After restarting system
  • enable_https
Name enable_https
Description REST Service Specifies whether to enable SSL configuration
Type Boolean
Default false
Effective After restarting system
  • key_store_path
Name key_store_path
Description SSL certificate path
Type String
Default ""
Effective After restarting system
  • key_store_pwd
Name key_store_pwd
Description SSL certificate password
Type String
Default ""
Effective After restarting system

4.3 SeedConfigNode

  • dn_seed_config_node
Name dn_seed_config_node
Description ConfigNode Address for DataNode to join cluster. This parameter is corresponding to dn_target_config_node_list before V1.2.2
Type String
Default 127.0.0.1:10710
Effective Only allowed to be modified in first start up

4.4 Connection Configuration

  • dn_rpc_thrift_compression_enable
Name dn_rpc_thrift_compression_enable
Description Whether enable thrift's compression (using GZIP).
Type Boolean
Default false
Effective After restarting system
  • dn_rpc_advanced_compression_enable
Name dn_rpc_advanced_compression_enable
Description Whether enable thrift's advanced compression.
Type Boolean
Default false
Effective After restarting system
  • dn_rpc_selector_thread_count
Name dn_rpc_selector_thread_count
Description The number of rpc selector thread.
Type int
Default false
Effective After restarting system
  • dn_rpc_min_concurrent_client_num
Name dn_rpc_min_concurrent_client_num
Description Minimum concurrent rpc connections
Type Short Int : [0,65535]
Description 1
Effective After restarting system
  • dn_rpc_max_concurrent_client_num
Name dn_rpc_max_concurrent_client_num
Description Max concurrent rpc connections
Type Short Int : [0,65535]
Description 1000
Effective After restarting system
  • dn_thrift_max_frame_size
Name dn_thrift_max_frame_size
Description Max size of bytes of each thrift RPC request/response
Type int
Default Defaults to 0, which means the value is automatically calculated based on the DN JVM configuration parameters at startup:
a. min(64MB, dn_alloc_memory/64)
b. If the user manually configures dn_thrift_max_frame_size, the user-specified value will be used instead.
Effective After restarting system
  • dn_thrift_init_buffer_size
Name dn_thrift_init_buffer_size
Description Initial size of bytes of buffer that thrift used
Type long
Default 1024
Effective After restarting system
  • dn_connection_timeout_ms
Name dn_connection_timeout_ms
Description Thrift socket and connection timeout between nodes
Type int
Default 60000
Effective After restarting system
  • dn_core_client_count_for_each_node_in_client_manager
Name dn_core_client_count_for_each_node_in_client_manager
Description Number of core clients routed to each node in a ClientManager
Type int
Default 200
Effective After restarting system
  • dn_max_client_count_for_each_node_in_client_manager
Name dn_max_client_count_for_each_node_in_client_manager
Description Number of max clients routed to each node in a ClientManager
Type int
Default 300
Effective After restarting system

4.5 Dictionary Configuration

  • dn_system_dir
Name dn_system_dir
Description The directories of system files. It is recommended to use an absolute path.
Type String
Default data/datanode/system (Windows: data\datanode\system)
Effective After restarting system
  • dn_data_dirs
Name dn_data_dirs
Description The directories of data files. Multiple directories are separated by comma. The starting directory of the relative path is related to the operating system. It is recommended to use an absolute path. If the path does not exist, the system will automatically create it.
Type String[]
Default data/datanode/data (Windows: data\datanode\data)
Effective After restarting system
  • dn_multi_dir_strategy
Name dn_multi_dir_strategy
Description IoTDB's strategy for selecting directories for TsFile in tsfile_dir. You can use a simple class name or a full name of the class. The system provides the following three strategies:
1. SequenceStrategy: IoTDB selects the directory from tsfile_dir in order, traverses all the directories in tsfile_dir in turn, and keeps counting;
2. MaxDiskUsableSpaceFirstStrategy: IoTDB first selects the directory with the largest free disk space in tsfile_dir;
You can complete a user-defined policy in the following ways:
1. Inherit the org.apache.iotdb.db.storageengine.rescon.disk.strategy.DirectoryStrategy class and implement its own Strategy method;
2. Fill in the configuration class with the full class name of the implemented class (package name plus class name, UserDfineStrategyPackage);
3. Add the jar file to the project.
Type String
Default SequenceStrategy
Effective hot-load
  • dn_consensus_dir
Name dn_consensus_dir
Description The directories of consensus files. It is recommended to use an absolute path.
Type String
Default data/datanode/consensus
Effective After restarting system
  • dn_wal_dirs
Name dn_wal_dirs
Description Write Ahead Log storage path. It is recommended to use an absolute path.
Type String
Default data/datanode/wal
Effective After restarting system
  • dn_tracing_dir
Name dn_tracing_dir
Description The tracing root directory path. It is recommended to use an absolute path.
Type String
Default datanode/tracing
Effective After restarting system
  • dn_sync_dir
Name dn_sync_dir
Description The directories of sync files. It is recommended to use an absolute path.
Type String
Default data/datanode/sync
Effective After restarting system

4.6 Metric Configuration

  • dn_metric_reporter_list
Name dn_metric_reporter_list
Description Systems for reporting DataNode metrics.
Type String
Default None
Effective After restarting system
  • dn_metric_level
Name dn_metric_level
Description Level of detail for DataNode metrics.
Type String
Default IMPORTANT
Effective After restarting system
  • dn_metric_async_collect_period
Name dn_metric_async_collect_period
Description Period for asynchronous metric collection in DataNode (in seconds).
Type int
Default 5
Effective After restarting system
  • dn_metric_prometheus_reporter_port
Name dn_metric_prometheus_reporter_port
Description Port for Prometheus metric reporting in DataNode.
Type int
Default 9092
Effective After restarting system
  • dn_metric_internal_reporter_type
Name dn_metric_internal_reporter_type
Description Internal reporter types for DataNode metrics. For internal monitoring and checking that the data has been successfully written and refreshed.
Type String
Default IOTDB
Effective After restarting system

5. Enable GC log

GC log is off by default. For performance tuning, you may want to collect the GC info.

To enable GC log, just add a parameter "printgc" when you start the DataNode.

nohup sbin/start-datanode.sh printgc >/dev/null 2>&1 &

Or

# Before version V2.0.4.x
sbin\start-datanode.bat printgc

# V2.0.4.x and later versions
sbin\windows\start-datanode.bat printgc

GC log is stored at IOTDB_HOME/logs/gc.log. There will be at most 10 gc.log.* files and each one can reach to 10MB.

5.1 REST Service Configuration

  • enable_rest_service
Name enable_rest_service
Description Whether to enable the Rest service
Type Boolean
Default false
Effective After restarting system
  • rest_service_port
Name rest_service_port
Description The Rest service listens to the port number
Type int32
Default 18080
Effective After restarting system
  • enable_swagger
Name enable_swagger
Description Whether to enable swagger to display rest interface information
Type Boolean
Default false
Effective After restarting system
  • rest_query_default_row_size_limit
Name rest_query_default_row_size_limit
Description The maximum number of rows in a result set that can be returned by a query
Type int32
Default 10000
Effective After restarting system
  • cache_expire
Name cache_expire
Description Expiration time for caching customer login information. This parameter will be deprecated after V2.0.8.
Type int32
Default 28800
Effective After restarting system
  • cache_max_num
Name cache_max_num
Description The maximum number of users stored in the cache. This parameter will be deprecated after V2.0.8.
Type int32
Default 100
Effective After restarting system
  • cache_init_num
Name cache_init_num
Description Initial cache capacity. This parameter will be deprecated after V2.0.8.
Type int32
Default 10
Effective After restarting system
  • trust_store_path
Name trust_store_path
Description keyStore Password (optional)
Type String
Default ""
Effective After restarting system
  • trust_store_pwd
Name trust_store_pwd
Description trustStore Password (Optional)
Type String
Default ""
Effective After restarting system
  • idle_timeout
Name idle_timeout
Description SSL timeout duration, expressed in seconds
Type int32
Default 5000
Effective After restarting system