Command Line Upgrade
Also available as:
PDF
loading table of contents...

Configure and Start Apache WebHCat

[Note]Note

The su commands in this section use "hdfs" to represent the HDFS Service user and webhcat to represent the WebHCat Service user. If you are using another name for these Service users, you need to substitute your Service user name for "hdfs" or "webhcat" in each of the su commands.

  1. You must replace your configuration after upgrading. Copy /etc/hive-webhcat/conf from the template to the conf directory in webhcat hosts.

  2. Modify the Apache WebHCat configuration files.

    1. Upload Pig, Hive and Sqoop tarballs to HDFS as the $HDFS_User (in this example, hdfs):

      su - hdfs -c "hdfs dfs -mkdir -p /hdp/apps/2.5.5.0-<$version>/pig/"
                          
      su - hdfs -c "hdfs dfs -mkdir -p /hdp/apps/2.5.5.0-<$version>/hive/"
      
      su - hdfs -c "hdfs dfs -mkdir -p /hdp/apps/2.5.5.0-<$version>/sqoop/"
      
      su - hdfs -c "hdfs dfs -put /usr/hdp/2.5.5.0-<$version>/pig/pig.tar.gz /hdp/apps/2.5.5.0-<$version>/pig/"
      
      su - hdfs -c "hdfs dfs -put /usr/hdp/2.5.5.0-<$version>/hive/hive.tar.gz /hdp/apps/2.5.5.0-<$version>/hive/"
      
      su - hdfs -c "hdfs dfs -put /usr/hdp/2.5.5.0-<$version>/sqoop/sqoop.tar.gz /hdp/apps/2.5.5.0-<$version>/sqoop/"
      
      su - hdfs -c "hdfs dfs -chmod -R 555 /hdp/apps/2.5.5.0-<$version>/pig"
      
      su - hdfs - "hdfs dfs -chmod -R 444 /hdp/apps/2.5.5.0-<$version>/pig/pig.tar.gz"
      
      su - hdfs -c "hdfs dfs -chmod -R 555 /hdp/apps/2.5.5.0-<$version>/hive"
      
      su - hdfs -c "hdfs dfs -chmod -R 444 /hdp/apps/2.5.5.0-<$version>/hive/hive.tar.gz"
      
      su - hdfs -c "hdfs dfs -chmod -R 555 /hdp/apps/2.5.5.0-<$version>/sqoop"
      
      su - hdfs -c "hdfs dfs -chmod -R 444 /hdp/apps/2.5.5.0-<$version>/sqoop/sqoop.tar.gz"
      
      su - hdfs -c "hdfs dfs -chown -R hdfs:hadoop /hdp"
    2. Add the following property if it is not present in webhcat-site.xml:

      <property>
       <name>templeton.libjars</name>
       <value>/usr/hdp/current/zookeeper-client/zookeeper.jar,/usr/hdp/current/hive-client/lib/hive-common.jar</value>
       <description>Jars to add the classpath.</description>
      </property>
    3. Add new proxy users, if needed. In core-site.xml, make sure the following properties are also set to allow WebHCat to impersonate your additional groups and hosts:

      <property>
       <name>hadoop.proxyuser.hcat.groups</name>
       <value>*</value>
      </property> 
       
      <property>
       <name>hadoop.proxyuser.hcat.hosts</name>
       <value>*</value>
      </property> 

      Where:

      hadoop.proxyuser.hcat.group

      Is a comma-separated list of the Unix groups whose users may be impersonated by 'hcat'.

      hadoop.proxyuser.hcat.hosts

      A comma-separated list of the hosts which are allowed to submit requests by 'hcat'.

  3. Start WebHCat:

    su - hcat -c "/usr/hdp/current/hive-webhcat/sbin/webhcat_server.sh start"

  4. Smoke test WebHCat.

    1. If you have a non-secure cluster, on the WebHCat host machine, run the following command to check the status of WebHCat server:

      curl http://$WEBHCAT_HOST_MACHINE:20111/templeton/v1/status

      You should see the following return status:

      "status":"ok","version":"v1"

    2. If you are using a Kerberos secure cluster, run the following command:

      curl --negotiate -u: http://$WEBHCAT_HOST_MACHINE:20111/templeton/v1/status

      You should see the following return status

      {"status":"ok","version":"v1"}[machine@acme]$