Workaround for Yarn directory does not exist error
When you configure ECS as the default file system with a Kerberized HDP cluster, you can get an error like
/ats/done does not exist. In addition to this, Resource Manager does not start.
This procedure provides a workaround for these issues.
-
Check if your Hadoop nodes can resolve ECS nodes.
-
Install the
nslookup tool in the Hadoop nodes.
yum install -y bind-utils
-
Check if it can resolve the ECS node.
nslookup <address of ECS node>
-
If it does not resolve to the correct hostname, add the ECS DNS to the
/etc/resolv.conf on the Hadoop nodes.
You can check that the DNS entries are there by running:
cat /etc/resolv.conf
-
Now the Hadoop node resolves the ECS nodes.
Run
nslookup again to check it resolves.
nslookup <address of ECS node>
-
Check the system time in the Hadoop node, ECS nodes, and KDC.
If the time of the systems is not consolidated, they should be synced to the same NTP server.
Information on enabling NTP on the cluster and on the browser host is described
Ambari Security Guide.
-
If the previous steps do not work, you can try to manually create folder
done or
active under
/ats.
# sudo -u hdfs hdfs dfs -mkdir /ats/done
# sudo -u hdfs hdfs dfs -mkdir /ats/active
and check that the directories exist.
$ hdfs dfs -ls /ats
Found 2 items
drwxrwxrwt - yarn hadoop 0 2016-07-12 09:00 /ats/active
drwx------ - yarn hadoop 0 2016-07-12 09:00 /ats/done