2. Set Directories and Permissions

Create directories and configure ownership + permissions on the appropriate hosts as described below.

If any of these directories already exist, we recommend deleting and recreating them. Use the following instructions to create appropriate directories:

  1. We strongly suggest that you edit and source the files included in scripts.zip file (downloaded in  Download Companion Files).

    Alternatively, you can also copy the contents to your ~/.bash_profile) to set up these environment variables in your environment.

  2. Execute the following commands on all nodes:

    mkdir -p $HBASE_LOG_DIR;
    chown -R $HBASE_USER:$HADOOP_GROUP $HBASE_LOG_DIR;
    chmod -R 755 $HBASE_LOG_DIR;
    mkdir -p $HBASE_PID_DIR;
    chown -R $HBASE_USER:$HADOOP_GROUP  $HBASE_PID_DIR;
    chmod -R 755  $HBASE_PID_DIR;
    mkdir -p $ZOOKEEPER_LOG_DIR;
    chown -R $ZOOKEEPER_USER:$HADOOP_GROUP $ZOOKEEPER_LOG_DIR;
    chmod -R 755 $ZOOKEEPER_LOG_DIR;
    mkdir -p $ZOOKEEPER_PID_DIR;
    chown -R $ZOOKEEPER_USER:$HADOOP_GROUP $ZOOKEEPER_PID_DIR;
    chmod -R 755 $ZOOKEEPER_PID_DIR;
    mkdir -p $ZOOKEEPER_DATA_DIR;
    chmod -R 755 $ZOOKEEPER_DATA_DIR;
    chown -R $ZOOKEEPER_USER:$HADOOP_GROUP $ZOOKEEPER_DATA_DIR

    where:

    • $HBASE_LOG_DIR is the directory to store the HBase logs. For example, /var/log/hbase.

    • $HBASE_PID_DIR is the directory to store the HBase process ID. For example, /var/run/hbase.

    • $HBASE_USER is the user owning the HBase services. For example, hbase.

    • $ZOOKEEPER_USER is the user owning the ZooKeeper services. For example, zookeeper.

    • $ZOOKEEPER_LOG_DIR is the directory to store the ZooKeeper logs. For example, /var/log/zookeeper.

    • $ZOOKEEPER_PID_DIR is the directory to store the ZooKeeper process ID. For example, /var/run/zookeeper.

    • $ZOOKEEPER_DATA_DIR is the directory where ZooKeeper will store data. For example, /grid/hadoop/zookeeper/data.

    • $HADOOP_GROUP is a common group shared by services. For example, hadoop.

  3. Initialize the zookeeper data directories with the 'myid' file. Create one file per Zookeeper server, and put the number of that server in each file.

    vi $ZOOKEEPER_DATA_DIR/myid

    In the myid file on the first server, enter the corresponding number:

    1

    In the myid file on the second server, enter the corresponding number:

    2

    In the myid file on the second server, enter the corresponding number:

    3


loading table of contents...