Uploaded image for project: 'CDH (READ-ONLY)'
  1. CDH (READ-ONLY)
  2. DISTRO-895

HDFS CLI doesn't get environment variables from defaults file

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: CDH 6.0.0
    • Fix Version/s: None
    • Component/s: HDFS
    • Environment:
      CentOS 7, Vagrant image "centos/7", VirtualBox, java-1.8.0-openjdk-headless

      Description

      After basic OS installation with Java I install the hadoop-hdfs-namenode RPM.

      [vagrant@masternode ~]$ sudo -u hdfs hdfs namenode -format
      WARNING: /usr/lib/hadoop/logs does not exist. Creating.
      mkdir: cannot create directory '/usr/lib/hadoop/logs': Permission denied
      ERROR: Unable to create /usr/lib/hadoop/logs. Aborting.
      

      HADOOP_LOG_DIR is set in /etc/default/hadoop-hdfs-namenode:

      ...
      export HADOOP_PID_DIR=/var/run/hadoop-hdfs
      export HADOOP_LOG_DIR=/var/log/hadoop-hdfs
      export HADOOP_NAMENODE_USER=hdfs
      ...
      

      If I explicitly set the environment variable before running the command it works:

      sudo -u hdfs HADOOP_LOG_DIR=/var/log/hadoop-hdfs hdfs namenode -format
      

      It seems the defaults files is not sourced when running

      My workaround is to source /etc/default/hadoop-hdfs-namenode or /etc/default/hadoop-hdfs-datanode in /usr/bin/hdfs.

       

       

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              marviio Markus Hänvi
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated: