You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by am...@apache.org on 2016/03/25 22:10:59 UTC

[3/5] incubator-trafodion git commit: Fix for HDP

Fix for HDP


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/3159f4c6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/3159f4c6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/3159f4c6

Branch: refs/heads/master
Commit: 3159f4c6dc1c232c18c5b23014855578fd625e29
Parents: cf700b9
Author: Amanda Moran <am...@apache.com>
Authored: Wed Mar 23 21:55:24 2016 +0000
Committer: Amanda Moran <am...@apache.com>
Committed: Wed Mar 23 21:55:24 2016 +0000

----------------------------------------------------------------------
 install/installer/traf_getHadoopNodes | 91 ++++++++++++++----------------
 1 file changed, 41 insertions(+), 50 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/3159f4c6/install/installer/traf_getHadoopNodes
----------------------------------------------------------------------
diff --git a/install/installer/traf_getHadoopNodes b/install/installer/traf_getHadoopNodes
index 88cdfce..0446cb7 100755
--- a/install/installer/traf_getHadoopNodes
+++ b/install/installer/traf_getHadoopNodes
@@ -56,7 +56,7 @@ if [ $HADOOP_TYPE == "cloudera" ]; then
 
    for id in $HADOOP_IDS
    do
-      hasHBase=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v10/hosts/$id | grep "serviceName" | grep hbase | wc -l)
+      hasHBase=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v10/hosts/$id | grep "serviceName" | grep -i hbase | wc -l)
       if [[ "$hasHBase" -ge "1" ]]; then
          name=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v10/hosts/$id | grep "hostname")
          hostName=$(echo $name | awk '{print $3}' | sed 's/\"//g' | sed 's/\..*//' | sed 's/\,//g')
@@ -64,7 +64,7 @@ if [ $HADOOP_TYPE == "cloudera" ]; then
          MY_HBASE_NODES="$MY_HBASE_NODES -w $hostName"
       fi
       
-      hasHDFS=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v10/hosts/$id | grep "serviceName" | grep hdfs | wc -l)
+      hasHDFS=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v10/hosts/$id | grep "serviceName" | grep -i hdfs | wc -l)
       if [[ "$hasHDFS" -ge "1" ]]; then
          name=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v10/hosts/$id | grep "hostname")
          hostName=$(echo $name | awk '{print $3}' | sed 's/\"//g' | sed 's/\..*//' | sed 's/\,//g')
@@ -72,22 +72,25 @@ if [ $HADOOP_TYPE == "cloudera" ]; then
          MY_HDFS_NODES="$MY_HDFS_NODES -w $hostName"
       fi 
    done
+
+   HADOOP_NODES=""
+   MY_HADOOP_NODES=""
+   while read line
+   do
+      hostName=$(echo $line | awk '{print $3}' | sed 's/\"//g' | sed 's/\..*//' | sed 's/\,//g')
+      HADOOP_NODES="$HADOOP_NODES $hostName"
+      MY_HADOOP_NODES="$MY_HADOOP_NODES -w $hostName"
+   done < tempFile2
+   rm tempFile
+   rm tempFile2
 fi
 
 if [[ $HADOOP_TYPE == "hortonworks" ]]; then
    curl -k -su $ADMIN:$PASSWORD $URL/api/v1/clusters/$CLUSTER_NAME/hosts > tempFile
-   curl -k -su $ADMIN:$PASSWORD $URL/api/v1/clusters/$CLUSTER_NAME/services/HDFS > tempFileHDFS
-   curl -k -su $ADMIN:$PASSWORD $URL/api/v1/clusters/$CLUSTER_NAME/services/HBASE > tempFileHBase
    curlRC=$?
    numberHadoopNodes=$(grep -r "host_name" tempFile | wc -l)
    grep -r "host_name" tempFile > tempFile2
       
-   numberHadoopNodes=$(grep -r "host_name" tempFileHDFS | wc -l)
-   grep -r "host_name" tempFileHDFS > tempFileHDFS2
-
-   numberHadoopNodes=$(grep -r "host_name" tempFileHBase | wc -l)
-   grep -r "host_name" tempFileHBase > tempFileHBase2
- 
    if [ -d /usr/lib/hbase/lib ]; then
       HADOOP_PATH="/usr/lib/hbase/lib"
    else
@@ -97,39 +100,35 @@ if [[ $HADOOP_TYPE == "hortonworks" ]]; then
 
    HDFS_NODES=""
    MY_HDFS_NODES=""
-   while read line
-   do
-      hostName=$(echo $line | awk '{print $3}' | sed 's/\"//g' | sed 's/\..*//' | sed 's/\,//g')
-      if [[ "$HDFS_NODES" != *"$hostName"* ]] && [[ "$hostName" != "null" ]]; then
-         HDFS_NODES="$HDFS_NODES $hostName"
-         MY_HDFS_NODES="$MY_HDFS_NODES -w $hostName"
-      fi
-   done < tempFileHDFS2
-
-   if [[ -z $HDFS_NODES ]]; then
-      echo "***ERROR: List of HDFS nodes not found."
-      echo "***ERROR: Check that $HADOOP_TYPE is up and running."
-      exit -1
-   fi
-
-   echo "***INFO: $HADOOP_TYPE list of HDFS nodes: $HDFS_NODES"
-
    HBASE_NODES=""
    MY_HBASE_NODES=""
+   
+   HADOOP_NODES=""
+   MY_HADOOP_NODES=""
    while read line
    do
-      hostName=$(echo $line | awk '{print $3}' | sed 's/\"//g' | sed 's/\..*//' | sed 's/\,//g')
-      if [[ "$HBASE_NODES" != *"$hostName"* ]] && [[ "$hostName" != "null" ]]; then
-         HBASE_NODES="$HBASE_NODES $hostName"
-         MY_HBASE_NODES="$MY_HBASE_NODES -w $hostName"
-      fi
-   done < tempFileHBase2
+      hostName=$(echo $line | awk '{print $3}' | sed 's/\"//g' | sed 's/\,//g')
+      HADOOP_NODES="$HADOOP_NODES $hostName"
+      MY_HADOOP_NODES="$MY_HADOOP_NODES -w $hostName"
+   done < tempFile2
 
-   if [[ -z $HBASE_NODES ]]; then
-      echo "***ERROR: List of HBase nodes not found."
-      echo "***ERROR: Check that $HADOOP_TYPE is up and running."
-      exit -1
-   fi
+   for node in $HADOOP_NODES
+   do
+       hasHBase=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v1/clusters/$CLUSTER_NAME/hosts/$node | grep component_name| grep -i hbase | wc -l)
+       if [[ "$hasHBase" -ge "1" ]]; then
+          HBASE_NODES="$HBASE_NODES $node"
+          MY_HBASE_NODES="$MY_HBASE_NODES -w $node"
+       fi
+
+       hasHDFS=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v1/clusters/$CLUSTER_NAME/hosts/$node | grep component_name | grep -i datanode | wc -l)
+       hasHDFS1=$(curl -k -su $ADMIN:$PASSWORD $URL/api/v1/clusters/$CLUSTER_NAME/hosts/$node | grep component_name | grep -i namenode | wc -l)
+       
+       if [[ "$hasHDFS" -ge "1" ]] || [[ "$hasHDFS1" -ge "1" ]]; then
+          HDFS_NODES="$HDFS_NODES $node"
+          MY_HDFS_NODES="$MY_HDFS_NODES -w $node"
+       fi
+        
+   done
 fi
 
 if [ $curlRC != 0 ]; then
@@ -148,18 +147,6 @@ if [ $curl_error -ne 0 ]; then
    exit -1
 fi
 
-#Get list of all hadoop nodes
-HADOOP_NODES=""
-MY_HADOOP_NODES=""
-while read line
-do
-   hostName=$(echo $line | awk '{print $3}' | sed 's/\"//g' | sed 's/\..*//' | sed 's/\,//g')
-   HADOOP_NODES="$HADOOP_NODES $hostName"
-   MY_HADOOP_NODES="$MY_HADOOP_NODES -w $hostName"
-done < tempFile2
-rm tempFile
-rm tempFile2
-
 if [[ -z $HADOOP_NODES ]]; then
    echo "***ERROR: List of $HADOOP_TYPE nodes not found."
    echo "***ERROR: Check that $HADOOP_TYPE is up and running."
@@ -168,6 +155,10 @@ if [[ -z $HADOOP_NODES ]]; then
 fi
 
 echo "***INFO: $HADOOP_TYPE list of nodes: $HADOOP_NODES"
+echo "***INFO: $HADOOP_TYPE list of HDFS nodes: $HDFS_NODES"
+echo "***INFO: $HADOOP_TYPE list of HBASE nodes: $HBASE_NODES"
+
+
 
 hadoop_node_count=$(echo $HADOOP_NODES | wc -w)