Repository: ambari Updated Branches: refs/heads/branch-2.4 cc9fb0859 -> 8f353c9a8
AMBARI-16942. Take into account reading 'hive.tez.container.size', 'yarn.scheduler.minimum-allocation-mb', 'yarn.nodemanager.resource.memory-mb' & 'tez.am.resource.memory.mb' configs from configurations if they are changed in current Stack Advisor invocation Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/8f353c9a Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/8f353c9a Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/8f353c9a Branch: refs/heads/branch-2.4 Commit: 8f353c9a898d530b39ce91fd19081620d4c5f175 Parents: cc9fb08 Author: Swapan Shridhar <[email protected]> Authored: Fri May 27 19:13:33 2016 -0700 Committer: Swapan Shridhar <[email protected]> Committed: Fri May 27 19:13:33 2016 -0700 ---------------------------------------------------------------------- .../stacks/HDP/2.5/services/stack_advisor.py | 155 +++--- .../stacks/2.5/common/test_stack_advisor.py | 503 ++++++++++++++++--- 2 files changed, 537 insertions(+), 121 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/8f353c9a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py index 837a446..658e6aa 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py +++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py @@ -300,8 +300,8 @@ class HDP25StackAdvisor(HDP24StackAdvisor): LLAP_MAX_CONCURRENCY = 32 # Allow a max of 32 concurrency. # initial memory setting to make sure hive.llap.daemon.yarn.container.mb >= yarn.scheduler.minimum-allocation-mb - Logger.debug("Setting hive.llap.daemon.yarn.container.mb to yarn min container size as initial size (" + str(self.get_yarn_min_container_size(services)) + " MB).") - putHiveInteractiveSiteProperty('hive.llap.daemon.yarn.container.mb', long(self.get_yarn_min_container_size(services))) + Logger.debug("Setting hive.llap.daemon.yarn.container.mb to yarn min container size as initial size (" + str(self.get_yarn_min_container_size(services, configurations)) + " MB).") + putHiveInteractiveSiteProperty('hive.llap.daemon.yarn.container.mb', long(self.get_yarn_min_container_size(services, configurations))) try: if self.HIVE_INTERACTIVE_SITE in services['configurations'] and \ @@ -359,13 +359,13 @@ class HDP25StackAdvisor(HDP24StackAdvisor): assert (node_manager_host_list is not None), "Information about NODEMANAGER not found in cluster." node_manager_cnt = len(node_manager_host_list) llap_slider_cap_percentage = self.get_llap_cap_percent_slider(services, configurations) - yarn_nm_mem_in_mb = self.get_yarn_nm_mem_in_mb(services) + yarn_nm_mem_in_mb = self.get_yarn_nm_mem_in_mb(services, configurations) total_cluster_capacity = node_manager_cnt * yarn_nm_mem_in_mb Logger.info("\n\nCalculated total_cluster_capacity : {0}, using following : node_manager_cnt : {1}, " "yarn_nm_mem_in_mb : {2}".format(total_cluster_capacity, node_manager_cnt, yarn_nm_mem_in_mb)) - yarn_min_container_size = self.get_yarn_min_container_size(services) - tez_am_container_size = self._normalizeUp(self.get_tez_am_container_size(services), yarn_min_container_size) + yarn_min_container_size = self.get_yarn_min_container_size(services, configurations) + tez_am_container_size = self._normalizeUp(self.get_tez_am_container_size(services, configurations), yarn_min_container_size) total_llap_queue_size = float(llap_slider_cap_percentage) / 100 * total_cluster_capacity # Get calculated value for Slider AM container Size slider_am_container_size = self.calculate_slider_am_size(yarn_min_container_size) @@ -425,7 +425,7 @@ class HDP25StackAdvisor(HDP24StackAdvisor): # Calculate value for 'hive.llap.daemon.num.executors', a per node config. - hive_tez_container_size = self.get_hive_tez_container_size(services) + hive_tez_container_size = self.get_hive_tez_container_size(services, configurations) if 'yarn.nodemanager.resource.cpu-vcores' in services['configurations']['yarn-site']['properties']: cpu_per_nm_host = float(services['configurations']['yarn-site']['properties'][ 'yarn.nodemanager.resource.cpu-vcores']) @@ -509,7 +509,7 @@ class HDP25StackAdvisor(HDP24StackAdvisor): traceback.print_exc() try: - yarn_min_container_size = long(self.get_yarn_min_container_size(services)) + yarn_min_container_size = long(self.get_yarn_min_container_size(services, configurations)) slider_am_container_size = long(self.calculate_slider_am_size(yarn_min_container_size)) putHiveInteractiveSiteProperty('hive.server2.tez.sessions.per.default.queue', 0) putHiveInteractiveSitePropertyAttribute('hive.server2.tez.sessions.per.default.queue', "minimum", 0) @@ -625,33 +625,53 @@ class HDP25StackAdvisor(HDP24StackAdvisor): raise Fail("Couldn't retrieve Hive Server interactive's 'num_llap_nodes' config.") """ - Gets HIVE Tez container size (hive.tez.container.size) + Gets HIVE Tez container size (hive.tez.container.size). Takes into account if it has been calculated as part of current + Stack Advisor invocation. """ - def get_hive_tez_container_size(self, services): - hive_container_size = 0 - if 'hive.tez.container.size' in services['configurations']['hive-site']['properties']: - hive_container_size = float( - services['configurations']['hive-site']['properties']['hive.tez.container.size']) - assert ( - hive_container_size > 0), "'hive.tez.container.size' current value : {0}. Expected value : > 0".format( - hive_container_size) - else: + def get_hive_tez_container_size(self, services, configurations): + hive_container_size = None + # Check if 'hive.tez.container.size' is modified in current ST invocation. + if 'hive-site' in configurations and 'hive.tez.container.size' in configurations['hive-site']['properties']: + hive_container_size = float(configurations['hive-site']['properties']['hive.tez.container.size']) + Logger.info("''hive.tez.container.size'' read from configurations as : {0}".format(hive_container_size)) + + if not hive_container_size: + # Check if 'hive.tez.container.size' is input in services array. + if 'hive.tez.container.size' in services['configurations']['hive-site']['properties']: + hive_container_size = float(services['configurations']['hive-site']['properties']['hive.tez.container.size']) + Logger.info("''hive.tez.container.size'' read from services as : {0}".format(hive_container_size)) + + if not hive_container_size: raise Fail("Couldn't retrieve Hive Server 'hive.tez.container.size' config.") + + assert (hive_container_size > 0), "'hive.tez.container.size' current value : {0}. Expected value : > 0".format( + hive_container_size) + return hive_container_size """ - Gets YARN's mimimum container size (yarn.scheduler.minimum-allocation-mb) + Gets YARN's mimimum container size (yarn.scheduler.minimum-allocation-mb). Takes into account if it has been calculated + as part of current Stack Advisor invocation. """ - def get_yarn_min_container_size(self, services): - yarn_min_container_size = 0 - if 'yarn.scheduler.minimum-allocation-mb' in services['configurations']['yarn-site']['properties']: - yarn_min_container_size = float( - services['configurations']['yarn-site']['properties']['yarn.scheduler.minimum-allocation-mb']) - assert ( - yarn_min_container_size > 0), "'yarn.scheduler.minimum-allocation-mb' current value : {0}. Expected value : > 0".format( - yarn_min_container_size) - else: + def get_yarn_min_container_size(self, services, configurations): + yarn_min_container_size = None + # Check if 'yarn.scheduler.minimum-allocation-mb' is modified in current ST invocation. + if 'yarn-site' in configurations and 'yarn.scheduler.minimum-allocation-mb' in configurations['yarn-site']['properties']: + yarn_min_container_size = float(configurations['yarn-site']['properties']['yarn.scheduler.minimum-allocation-mb']) + Logger.info("''yarn.scheduler.minimum-allocation-mb'' read from configurations as : {0}".format(yarn_min_container_size)) + + if not yarn_min_container_size: + # Check if 'yarn.scheduler.minimum-allocation-mb' is input in services array. + if 'yarn-site' in services['configurations'] and \ + 'yarn.scheduler.minimum-allocation-mb' in services['configurations']['yarn-site']['properties']: + yarn_min_container_size = float(services['configurations']['yarn-site']['properties']['yarn.scheduler.minimum-allocation-mb']) + Logger.info("''yarn.scheduler.minimum-allocation-mb'' read from services as : {0}".format(yarn_min_container_size)) + + if not yarn_min_container_size: raise Fail("Couldn't retrieve YARN's 'yarn.scheduler.minimum-allocation-mb' config.") + + assert (yarn_min_container_size > 0), "'yarn.scheduler.minimum-allocation-mb' current value : {0}. " \ + "Expected value : > 0".format(yarn_min_container_size) return yarn_min_container_size """ @@ -666,52 +686,75 @@ class HDP25StackAdvisor(HDP24StackAdvisor): return 256 """ - Gets YARN NodeManager memory in MB (yarn.nodemanager.resource.memory-mb). + Gets YARN NodeManager memory in MB (yarn.nodemanager.resource.memory-mb). Takes into account if it has been calculated + as part of current Stack Advisor invocation. """ - def get_yarn_nm_mem_in_mb(self, services): - if 'yarn-site' in services['configurations'] and \ - 'yarn.nodemanager.resource.memory-mb' in services['configurations']['yarn-site']['properties']: - yarn_nm_mem_in_mb = float( - services['configurations']['yarn-site']['properties']['yarn.nodemanager.resource.memory-mb']) - assert ( - yarn_nm_mem_in_mb > 0.0), "'yarn.nodemanager.resource.memory-mb' current value : {0}. Expected value : > 0".format( - yarn_nm_mem_in_mb) - else: - raise Fail( - "Couldn't retrieve YARN's 'yarn.nodemanager.resource.memory-mb' config.") + def get_yarn_nm_mem_in_mb(self, services, configurations): + yarn_nm_mem_in_mb = None + + # Check if 'yarn.nodemanager.resource.memory-mb' is modified in current ST invocation. + if 'yarn-site' in configurations and 'yarn.nodemanager.resource.memory-mb' in configurations['yarn-site']['properties']: + yarn_nm_mem_in_mb = float(configurations['yarn-site']['properties']['yarn.nodemanager.resource.memory-mb']) + Logger.info("''yarn.nodemanager.resource.memory-mb'' read from configurations as : {0}".format(yarn_nm_mem_in_mb)) + print "from services : ",services['configurations']['yarn-site']['properties']['yarn.nodemanager.resource.memory-mb'] + + if not yarn_nm_mem_in_mb: + # Check if 'yarn.nodemanager.resource.memory-mb' is input in services array. + if 'yarn-site' in services['configurations'] and \ + 'yarn.nodemanager.resource.memory-mb' in services['configurations']['yarn-site']['properties']: + yarn_nm_mem_in_mb = float(services['configurations']['yarn-site']['properties']['yarn.nodemanager.resource.memory-mb']) + + if not yarn_nm_mem_in_mb: + raise Fail("Couldn't retrieve YARN's 'yarn.nodemanager.resource.memory-mb' config.") + + assert (yarn_nm_mem_in_mb > 0.0), "'yarn.nodemanager.resource.memory-mb' current value : {0}. " \ + "Expected value : > 0".format(yarn_nm_mem_in_mb) + return yarn_nm_mem_in_mb """ - Gets Tez App Master container size (tez.am.resource.memory.mb) + Gets Tez App Master container size (tez.am.resource.memory.mb). Takes into account if it has been calculated + as part of current Stack Advisor invocation. """ - def get_tez_am_container_size(self, services): - llap_daemon_container_size = 0 - if self.HIVE_INTERACTIVE_SITE in services['configurations'] and \ - 'tez.am.resource.memory.mb' in services['configurations']['tez-interactive-site']['properties']: - llap_daemon_container_size = float( - services['configurations']['tez-interactive-site']['properties']['tez.am.resource.memory.mb']) - assert ( - llap_daemon_container_size > 0), "'tez.am.resource.memory.mb' current value : {0}. Expected value : > 0".format( - llap_daemon_container_size) - else: + def get_tez_am_container_size(self, services, configurations): + llap_daemon_container_size = None + + # Check if 'tez.am.resource.memory.mb' is modified in current ST invocation. + if 'tez-interactive-site' in configurations and 'tez.am.resource.memory.mb' in configurations['tez-interactive-site']['properties']: + llap_daemon_container_size = float(configurations['tez-interactive-site']['properties']['tez.am.resource.memory.mb']) + Logger.info("''tez.am.resource.memory.mb'' read from configurations as : {0}".format(llap_daemon_container_size)) + + if not llap_daemon_container_size: + # Check if 'tez.am.resource.memory.mb' is input in services array. + if self.HIVE_INTERACTIVE_SITE in services['configurations'] and \ + 'tez.am.resource.memory.mb' in services['configurations']['tez-interactive-site']['properties']: + llap_daemon_container_size = float(services['configurations']['tez-interactive-site']['properties']['tez.am.resource.memory.mb']) + Logger.info("''tez.am.resource.memory.mb'' read from services as : {0}".format(llap_daemon_container_size)) + + + if not llap_daemon_container_size: raise Fail("Couldn't retrieve Hive Server interactive's 'tez.am.resource.memory.mb' config.") + + assert (llap_daemon_container_size > 0), "'tez.am.resource.memory.mb' current value : {0}. " \ + "Expected value : > 0".format(llap_daemon_container_size) + return llap_daemon_container_size """ Minimum 'llap' queue capacity required in order to get LLAP app running. """ - def min_llap_queue_perc_required_in_cluster(self, services, hosts): + def min_llap_queue_perc_required_in_cluster(self, services, hosts, configurations): # Get llap queue size if sized at 20% node_manager_hosts = self.get_node_manager_hosts(services, hosts) - yarn_rm_mem_in_mb = self.get_yarn_nm_mem_in_mb(services) + yarn_rm_mem_in_mb = self.get_yarn_nm_mem_in_mb(services, configurations) total_cluster_cap = len(node_manager_hosts) * yarn_rm_mem_in_mb total_llap_queue_size_at_20_perc = 20.0 / 100 * total_cluster_cap # Calculate based on minimum size required by containers. - yarn_min_container_size = self.get_yarn_min_container_size(services) + yarn_min_container_size = self.get_yarn_min_container_size(services, configurations) slider_am_size = self.calculate_slider_am_size(yarn_min_container_size) - hive_tez_container_size = self.get_hive_tez_container_size(services) - tez_am_container_size = self.get_tez_am_container_size(services) + hive_tez_container_size = self.get_hive_tez_container_size(services, configurations) + tez_am_container_size = self.get_tez_am_container_size(services, configurations) normalized_val = self._normalizeUp(slider_am_size, yarn_min_container_size) + self._normalizeUp\ (hive_tez_container_size, yarn_min_container_size) + self._normalizeUp(tez_am_container_size, yarn_min_container_size) @@ -757,7 +800,7 @@ class HDP25StackAdvisor(HDP24StackAdvisor): if 'llap_queue_capacity' in services['configurations']['hive-interactive-env']['properties']: llap_slider_cap_percentage = int( services['configurations']['hive-interactive-env']['properties']['llap_queue_capacity']) - llap_min_reqd_cap_percentage = self.min_llap_queue_perc_required_in_cluster(services, hosts) + llap_min_reqd_cap_percentage = self.min_llap_queue_perc_required_in_cluster(services, hosts, configurations) if llap_slider_cap_percentage <= 0 or llap_slider_cap_percentage > 100: Logger.info("Adjusting HIVE 'llap_queue_capacity' from {0}% to {1}%".format(llap_slider_cap_percentage, llap_min_reqd_cap_percentage)) putHiveInteractiveEnvProperty('llap_queue_capacity', llap_min_reqd_cap_percentage) http://git-wip-us.apache.org/repos/asf/ambari/blob/8f353c9a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py index 3f5da61..d61de7b 100644 --- a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py +++ b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py @@ -141,15 +141,6 @@ class TestHDP25StackAdvisor(TestCase): ] } - self.clusterData = { - "cpu": 4, - "mapMemory": 3000, - "amMemory": 2000, - "reduceMemory": 2056, - "containers": 3, - "ramPerContainer": 256 - } - # Expected config outputs. # Expected capacity-scheduler with 'llap' (size:20) and 'default' queue at root level. @@ -642,9 +633,21 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], self.expected_hive_interactive_site_llap['hive-interactive-site']['properties']['hive.llap.daemon.queue.name']) @@ -784,9 +787,23 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], @@ -922,10 +939,22 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], @@ -1062,9 +1091,23 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], self.expected_hive_interactive_site_llap['hive-interactive-site']['properties']['hive.llap.daemon.queue.name']) @@ -1211,10 +1254,24 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], @@ -1361,10 +1418,24 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], @@ -1511,10 +1582,24 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], @@ -1639,10 +1724,23 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertTrue('hive.llap.daemon.queue.name' not in configurations['hive-interactive-site']['properties']) @@ -1774,10 +1872,22 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], @@ -1930,10 +2040,23 @@ class TestHDP25StackAdvisor(TestCase): } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties'], @@ -2078,11 +2201,22 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties'], @@ -2200,11 +2334,23 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['hive-interactive-site']['properties'], @@ -2362,11 +2508,22 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services_15, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services_15, self.hosts) # Check output self.assertEquals(configurations['capacity-scheduler']['properties'], @@ -2465,11 +2622,22 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['capacity-scheduler']['properties'], @@ -2567,9 +2735,22 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) # Check output self.assertEquals(configurations['capacity-scheduler']['properties'], @@ -2724,11 +2905,23 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) cap_sched_output_dict = convertToDict(configurations['capacity-scheduler']['properties']['capacity-scheduler']) cap_sched_expected_dict = convertToDict(self.expected_capacity_scheduler_llap_Stopped_size_0['properties']['capacity-scheduler']) @@ -2879,10 +3072,21 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services_18, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services_18, self.hosts) self.assertEquals(configurations['capacity-scheduler']['properties'], self.expected_capacity_scheduler_empty['properties']) @@ -3047,11 +3251,21 @@ class TestHDP25StackAdvisor(TestCase): } - configurations = { + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) - + configurations = { + } + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '1') self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.server2.tez.sessions.per.default.queue'], {'minimum': '1', 'maximum': '32'}) @@ -3069,7 +3283,6 @@ class TestHDP25StackAdvisor(TestCase): self.assertEqual(configurations['hive-interactive-env']['properties']['slider_am_container_size'], '512') - # Test 19: (1). 'default' and 'llap' (State : RUNNING) queue exists at root level in capacity-scheduler, and # 'capacity-scheduler' configs are passed-in as single "/n" separated string and # (2). enable_hive_interactive' is 'on' and (3). configuration change detected for 'enable_hive_interactive' @@ -3221,27 +3434,42 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 512, + "referenceNodeManagerHost" : { + "total_mem" : 10240 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '3') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '2') self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.server2.tez.sessions.per.default.queue'], {'minimum': '1', 'maximum': '32'}) self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '1') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '3069') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '3072') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '1') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '2728') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '2731') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '272') - self.assertEqual(configurations['hive-interactive-env']['properties']['slider_am_container_size'], '341') + self.assertEqual(configurations['hive-interactive-env']['properties']['slider_am_container_size'], '512') + @@ -3397,22 +3625,36 @@ class TestHDP25StackAdvisor(TestCase): } } + + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 1024, + "referenceNodeManagerHost" : { + "total_mem" : 51200 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertTrue('hive.server2.tez.sessions.per.default.queue' not in configurations['hive-interactive-site']['properties']) self.assertTrue('hive.server2.tez.sessions.per.default.queue' not in configurations['hive-interactive-site']['property_attributes']) self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '1') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '18432') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '10240') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '1') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '17408') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '9216') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '819') @@ -3576,11 +3818,24 @@ class TestHDP25StackAdvisor(TestCase): } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 2048, + "referenceNodeManagerHost" : { + "total_mem" : 40960 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '13') self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.server2.tez.sessions.per.default.queue'], {'minimum': '1', 'maximum': '32'}) @@ -3749,22 +4004,36 @@ class TestHDP25StackAdvisor(TestCase): } } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 341, + "referenceNodeManagerHost" : { + "total_mem" : 12288 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '6') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '5') self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.server2.tez.sessions.per.default.queue'], {'minimum': '1', 'maximum': '32'}) self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '2') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '12276') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '10230') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '3') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '9204') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '7158') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '2457') @@ -3923,19 +4192,32 @@ class TestHDP25StackAdvisor(TestCase): } + + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 2048, + "referenceNodeManagerHost" : { + "total_mem" : 204800 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '1') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '204800') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '61440') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '3') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '201728') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '58368') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '2457') @@ -3947,7 +4229,6 @@ class TestHDP25StackAdvisor(TestCase): - ####################### 'Five Node Managers' cluster - tests for calculating llap configs ################ @@ -4100,11 +4381,24 @@ class TestHDP25StackAdvisor(TestCase): } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 3072, + "referenceNodeManagerHost" : { + "total_mem" : 40960 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '15') self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.server2.tez.sessions.per.default.queue'], {'minimum': '1', 'maximum': '32'}) @@ -4124,6 +4418,7 @@ class TestHDP25StackAdvisor(TestCase): + # Test 25: (1). 'default' and 'llap' (State : RUNNING) queue exists at root level in capacity-scheduler, and # 'capacity-scheduler' configs are passed-in as single "/n" separated string and # (2). enable_hive_interactive' is 'on' and (3). configuration change detected for 'enable_hive_interactive' @@ -4274,22 +4569,35 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 30, + "ramPerContainer": 341, + "referenceNodeManagerHost" : { + "total_mem" : 204800 * 1024 + } + } + + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-site']['properties']['hive.server2.tez.sessions.per.default.queue'], '32') self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.server2.tez.sessions.per.default.queue'], {'minimum': '1', 'maximum': '32'}) - self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '4') + self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '3') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '204600') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '10230') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '10') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '201190') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '6820') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '2728') @@ -4298,6 +4606,7 @@ class TestHDP25StackAdvisor(TestCase): + # Test 26: (1). 'default' and 'llap' (State : RUNNING) queue exists at root level in capacity-scheduler, and # 'capacity-scheduler' configs are passed-in as single "/n" separated string and # (2). enable_hive_interactive' is 'on' and (3). configuration change detected for 'hive.server2.tez.sessions.per.default.queue' @@ -4447,20 +4756,31 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 3, + "ramPerContainer": 82240, + "referenceNodeManagerHost" : { + "total_mem" : 204800 * 1024 + } + } configurations = { } - - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + print "\n\n\n\n\ yyyyyyy" + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '2') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '204800') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '164480') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '3') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '201728') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '161408') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '2457') @@ -4471,6 +4791,7 @@ class TestHDP25StackAdvisor(TestCase): + # Test 27: (1). only 'default' queue exists at root level in capacity-scheduler, and # 'capacity-scheduler' configs are passed-in as single "/n" separated string and # (2). configuration change detected for 'enable_hive_interactive' @@ -4610,20 +4931,31 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 3, + "ramPerContainer": 164480, + "referenceNodeManagerHost" : { + "total_mem" : 204800 * 1024 + } + } configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) - self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '2') + self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '1') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '204800') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '164480') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '3') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '201728') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '161408') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '2457') @@ -4634,6 +4966,7 @@ class TestHDP25StackAdvisor(TestCase): + # Test 28: (1). 'default' and 'llap' (State : RUNNING) queue exists at root level in capacity-scheduler, and # 'capacity-scheduler' configs are passed-in as dictionary and # services['configurations']["capacity-scheduler"]["properties"]["capacity-scheduler"] is set to value "null" and @@ -4775,19 +5108,31 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 3, + "ramPerContainer": 82240, + "referenceNodeManagerHost" : { + "total_mem" : 328960 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendYARNConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendYARNConfigurations(configurations, clusterData, services, self.hosts) self.assertEqual(configurations['hive-interactive-env']['properties']['num_llap_nodes'], '2') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '204800') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.yarn.container.mb'], '246720') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.daemon.num.executors'], '3') - self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '201728') + self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.memory.size'], '243648') self.assertEqual(configurations['hive-interactive-site']['properties']['hive.llap.io.enabled'], 'true') self.assertEqual(configurations['hive-interactive-env']['properties']['llap_heap_size'], '2457') @@ -4795,6 +5140,10 @@ class TestHDP25StackAdvisor(TestCase): self.assertEqual(configurations['hive-interactive-env']['properties']['slider_am_container_size'], '1024') + + + + # Test 29: (1). only 'default' queue exists at root level in capacity-scheduler, and # 'capacity-scheduler' configs are passed-in as single "/n" separated string and # Expected : 'hive.llap.daemon.queue.name' property attributes getting set with current YARN leaf queues. @@ -4933,10 +5282,22 @@ class TestHDP25StackAdvisor(TestCase): } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 3, + "ramPerContainer": 82240, + "referenceNodeManagerHost" : { + "total_mem" : 328960 * 1024 + } + } + configurations = { } - self.stackAdvisor.recommendHIVEConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendHIVEConfigurations(configurations, clusterData, services, self.hosts) self.assertEquals(configurations['hive-interactive-site']['properties']['hive.llap.daemon.queue.name'], self.expected_hive_interactive_site_llap['hive-interactive-site']['properties']['hive.llap.daemon.queue.name']) @@ -4945,6 +5306,7 @@ class TestHDP25StackAdvisor(TestCase): + # Test 30: (1). More than 2 queues at leaf level exists in capacity-scheduler (one queue is named 'llap') and # 'capacity-scheduler' configs are passed-in as single "/n" separated string # Expected : 'hive.llap.daemon.queue.name' property attributes getting set with current YARN leaf queues. @@ -5102,10 +5464,21 @@ class TestHDP25StackAdvisor(TestCase): } } + clusterData = { + "cpu": 4, + "mapMemory": 30000, + "amMemory": 20000, + "reduceMemory": 20560, + "containers": 3, + "ramPerContainer": 82240, + "referenceNodeManagerHost" : { + "total_mem" : 328960 * 1024 + } + } configurations = { } - self.stackAdvisor.recommendHIVEConfigurations(configurations, self.clusterData, services, self.hosts) + self.stackAdvisor.recommendHIVEConfigurations(configurations, clusterData, services, self.hosts) self.assertEquals(configurations['hive-interactive-site']['property_attributes']['hive.llap.daemon.queue.name'], self.expected_hive_interactive_site_prop_attr_as_a1_b_llap['hive-interactive-site']['property_attributes']['hive.llap.daemon.queue.name'])
