Title
Create new category
Edit page index title
Edit category
Edit link
Configuring Dynamic Management for HDFS NameNode and DataNode
In some scenarios, it is crucial to mark specific configuration properties as reconfigurable, allowing them to be updated dynamically at runtime without restarting critical Hadoop components like the NameNode or DataNodes. This capability is especially beneficial in large, production-grade HDFS clusters, where restarts can be disruptive—impacting system availability, client throughput, and active data pipeline jobs.
This configuration helps optimize HDFS performance and reliability while ensuring minimal service downtime.
Reconfigurable properties allow administrators to fine-tune system behavior in response to changing workloads, performance bottlenecks, or operational incidents—without compromising high availability SLAs or triggering failovers.
To view the list of properties that can be dynamically reconfigured, run the following command:
DataNode Properties
PropertyName | ConfigName | Description | Related Apache Jira | site.xml | Default Values |
|---|---|---|---|---|---|
|
| Directories where DataNode stores HDFS block data. | hdfs-site.xml | Configured as per cluster | |
|
| Maximum concurrent block moves during rebalancing. | hdfs-site.xml | 100 | |
|
| Interval (ms) for block reports sent to NameNode. | hdfs-site.xml | 21600000 | |
|
| Threshold to split large block reports. | hdfs-site.xml | 1000000 | |
|
| Initial delay (ms) before the first block report after startup. | hdfs-site.xml | 120 (ODP) | |
|
| Maximum threads for receiving block data. | hdfs-site.xml | 16384(ODP) | |
|
| Interval (ms) for cache reports. | hdfs-site.xml | 10000 | |
|
| Enable peer statistics collection. | hdfs-site.xml | false | |
|
| Minimum nodes required for peer outlier detection. | Require | hdfs-site.xml | 10 |
|
| Threshold (ms) to classify a peer as slow. | Require | hdfs-site.xml | 5 |
|
| Minimum samples for peer metrics outlier detection. | Require | hdfs-site.xml | 1000 |
|
| Percentage of file IO operations to profile. | Require | hdfs-site.xml | 0 |
|
| Interval for reporting outlier metrics. | Require | hdfs-site.xml | 30m |
|
| Minimum disks required for disk outlier detection. | Require | hdfs-site.xml | 5 |
|
| Threshold (ms) to classify a disk as slow. | Require | hdfs-site.xml | 20 |
|
| Interval for disk usage calculation. | core-site.xml | 600000 | |
|
| Jitter interval to stagger | core-site.xml | 60000 | |
|
| Custom class for | The following four implementation classes are supported for tracking disk space usage:
| NULL |
NameNode Properties
PropertyName | ConfigurationName | Description | Related Apache Jira | site.xml | Default Values |
|---|---|---|---|---|---|
|
| Interval (s) for DataNode heartbeats to NameNode. | hdfs-site.xml | 3 | |
|
| Interval for NameNode to recheck DataNode heartbeat status. | hdfs-site.xml | 300000 | |
|
| Directories protected from accidental deletion or modification. | core-site.xml | NULL | |
|
| Enable caller context tracking for debugging. | hdfs-site.xml | false | |
|
| Mode for storage policy satisfier (e.g., | hdfs-site.xml | NONE | |
|
| Maximum concurrent replication streams. | hdfs-site.xml | 2 | |
|
| Hard limit for replication streams to prevent overload. | hdfs-site.xml | 4 | |
|
| Multiplier to adjust replication workload per iteration. | hdfs-site.xml | 2 | |
|
| Custom block replicator class. | hdfs-site.xml |
| |
|
| Custom block placement class for erasure coding. | hdfs-site.xml (worked with org.apache.hadoop.hdfs.server.blockmanagement. AvailableSpaceBlockPlacementPolicy, for other properties may require restart of namenode) |
| |
|
| Enable parallel fsimage loading for faster startup. | hdfs-site.xml | false | |
|
| Avoid slow DataNodes during read operations. | hdfs-site.xml | false | |
| dfs.namenode.block-placement-policy.exclude-slow-nodes.enabled | Exclude slow nodes in block placement policy. | hdfs-site.xml | false | |
|
| Maximum slow peers to track for metrics. | hdfs-site.xml | 5 | |
|
| Maximum blocks invalidated per iteration. | hdfs-site.xml | 1000 | |
|
| Enable peer stats collection (NameNode-side). | hdfs-site.xml | default=false |
Configure Runtime Changes
Follow the below steps to configure the runtime changes.
Dynamic Reconfiguration: For Runtime-changeable properties, edit the
hdfs-site.xmlfile located at:/etc/hadoop/conf/.
DataNode exmaple:
NameNode example:
Verify the configuration status.
Permanent Configuration: For the properties that require a restart:
Go to HDFS > Advanced Configurations in Ambari.
Make the necessary changes.
Restart the HDFS service to apply the updates.
Temporary vs. Persistent Configuration
Temporary (Runtime) Changes: Runtime reconfigurable properties take effect immediately but are lost after a service restart.
Persistent Changes: To make changes permanent, update the
hdfs-site.xmlfile and restart the service.
Log Monitoring
After applying changes, monitor the logs for errors: tail -f /var/log/hadoop/hdfs/*.log.
Cluster Impact
Always validate changes in a non-production environment before applying them to a live cluster.