This is an error message often shown when Hadoop is incapable of identifying the required native libraries necessary to work at its peak performances. It means perhaps Hadoop has some type of inability in certain aspects and/or works a bit less efficiently and probably less at the expected performances.
Here are steps to address this problem:
1. Set Up Native Libraries
You need the native libraries for Hadoop (like libhadoop.so). These libraries are typically included with the Hadoop binaries, but you may have to build or install them if they’re absent. You can try:
Install the hadoop-native libraries with yum or another package manager available at this time.
yum sudo install hadoop-native
If the native libraries are not available in your package manager, you may build them from source. Refer to Hadoop's native library building guidelines for how to do this.
2. Confirm the Path to Native Libraries
Ensure that the paths specified in hadoop-env.sh correctly point to the location of the native folder that contains libhadoop.so. Normally, the native libraries can be found in the lib/native subdirectory of Hadoop’s installation directory, not merely in the lib folder.
export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=/usr/local/hadoop/lib/native"
Export HADOOP_COMMON_LIB_NATIVE_DIR=\\"/usr/local/hadoop/lib/native"
3. Check the Environment Variables
Verify that Hadoop correctly propagated changes you have made in hadoop-env.sh. You can inspect values for HADOOP_OPTS and HADOOP COMMON LIB NATIVE DIR by running:
echo "$HADOOP_OPTS echo ${HADOOP_COMMON_LIB_NATIVE_DIR}
Start Hadoop with:
start-dfs.sh