Remove Yarn from minicluster by default. (2nd try)

Remove Yarn from minicluster by default.

Turns out that we start Yarn as part of the minicluster, but we never use it.
(HiveServer2 is configured to run MR jobs "locally" in process.) Likely, this
Yarn integration is a vestige of Yarn/Llama integration.  We can save memory by
not starting it by default.

There are some less-common tooks like tests/comparison/ which use
Yarn (and Hadoop Streaming). In deference to those tools, I've left a mechanism
to start Yarn rather than excising it altogether. After running
buildall the regular way, add Yarn to the cluster by running:
  testdata/cluster/admin -y start_cluster

I tested by running core tests. I did not test the kerberized minicluster.

[Due to a git mishap, a version of this was previously checked in and reverted.]

Change-Id: I97053a44bbe32048e6c35cc28680d1c7696af13f
Reviewed-by: Michael Brown <>
Tested-by: Impala Public Jenkins <>


Branch: refs/heads/master
Commit: 6dc13d933b5ea9a41e584d83e95db72b9e8e19b3
Parents: 01b6995
Author: Philip Zeyliger <>
Authored: Tue Apr 10 09:21:20 2018 -0700
Committer: Impala Public Jenkins <>
Committed: Tue Apr 10 20:15:30 2018 +0000

 testdata/cluster/admin | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/testdata/cluster/admin b/testdata/cluster/admin
index cb33e21..74b5a9c 100755
--- a/testdata/cluster/admin
+++ b/testdata/cluster/admin
@@ -18,7 +18,7 @@
 # specific language governing permissions and limitations
 # under the License.
-# This will create/control/destroy a local hdfs+yarn cluster.
+# This will create/control/destroy a local hdfs/yarn/kms/kudu cluster.
 # All roles run on, just like the standard mini cluster included 
with hadoop.
 # The difference is with this cluster, each role runs in its own process and 
has its own
@@ -31,12 +31,14 @@ set -euo pipefail
 trap 'echo Error in $0 at line $LINENO: $(awk "NR == $LINENO" $0)' ERR
-while getopts vk OPT; do
+while getopts vky OPT; do
   case $OPT in
     v) set -x;;
     k) export IMPALA_KERBERIZE=1;;
-    ?) echo "Usage: $0 [-v (verbose) -k (kerberize)] ACTION (see source...)"; 
exit 1;;
+    y) export INCLUDE_YARN=1;;
+    ?) echo "Usage: $0 [-v (verbose) -k (kerberize) -y (yarn)] ACTION (see 
source...)"; exit 1;;
 shift $(($OPTIND-1))
@@ -54,7 +56,10 @@ export KILL_CLUSTER_MARKER=IBelongToTheMiniCluster
 if [[ "$TARGET_FILESYSTEM" == "hdfs" ]]; then
   # The check above indicates that the regular mini-cluster is in use.
-  SUPPORTED_SERVICES=(hdfs yarn kms)
+  if [ -n "${INCLUDE_YARN}" ]; then
+  fi
   # Either a remote distributed file system or a local non-distributed file 
system is
   # in use. Currently the only service that is expected to work is Kudu, 
though in theory

Reply via email to