AMBARI-22245 - YARN Service Checks Fails Because of Old hadoop-client Classpath Entry (jonathanhurley)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/4a223503 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/4a223503 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/4a223503 Branch: refs/heads/feature-branch-AMBARI-21307 Commit: 4a2235037e2306ac8197f8d1bf917f5402f248bb Parents: 523f505 Author: Jonathan Hurley <jhur...@hortonworks.com> Authored: Mon Oct 16 15:33:17 2017 -0400 Committer: Jonathan Hurley <jhur...@hortonworks.com> Committed: Mon Oct 16 16:13:00 2017 -0400 ---------------------------------------------------------------------- .../2.1.0.2.0/package/scripts/params_linux.py | 34 +++++++++++-- .../2.1.0.2.0/package/scripts/status_params.py | 52 ++++++++----------- .../YARN/3.0.0.3.0/configuration/yarn-site.xml | 2 +- .../3.0.0.3.0/package/scripts/params_linux.py | 53 +++++++++++++++----- .../3.0.0.3.0/package/scripts/status_params.py | 52 ++++++++----------- .../services/YARN/configuration/yarn-site.xml | 2 +- .../stacks/HDP/2.6/upgrades/config-upgrade.xml | 7 +++ .../HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml | 7 ++- .../stacks/HDP/2.6/upgrades/upgrade-2.6.xml | 1 + 9 files changed, 124 insertions(+), 86 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py index 2ab779f..620408b 100644 --- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py +++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/params_linux.py @@ -20,8 +20,10 @@ Ambari Agent """ import os +from resource_management.core import sudo from resource_management.libraries.script.script import Script from resource_management.libraries.resources.hdfs_resource import HdfsResource +from resource_management.libraries.functions import component_version from resource_management.libraries.functions import conf_select from resource_management.libraries.functions import stack_select from resource_management.libraries.functions import format @@ -88,6 +90,7 @@ stack_supports_ranger_audit_db = check_stack_feature(StackFeature.RANGER_AUDIT_D hostname = config['hostname'] # hadoop default parameters +hadoop_home = status_params.hadoop_home hadoop_libexec_dir = stack_select.get_hadoop_dir("libexec") hadoop_bin = stack_select.get_hadoop_dir("sbin") hadoop_bin_dir = stack_select.get_hadoop_dir("bin") @@ -113,12 +116,33 @@ if stack_supports_ru: if command_role in YARN_SERVER_ROLE_DIRECTORY_MAP: yarn_role_root = YARN_SERVER_ROLE_DIRECTORY_MAP[command_role] - hadoop_mapred2_jar_location = format("{stack_root}/current/{mapred_role_root}") - mapred_bin = format("{stack_root}/current/{mapred_role_root}/sbin") - + # defaults set to current based on role + hadoop_mapr_home = format("{stack_root}/current/{mapred_role_root}") hadoop_yarn_home = format("{stack_root}/current/{yarn_role_root}") - yarn_bin = format("{stack_root}/current/{yarn_role_root}/sbin") - yarn_container_bin = format("{stack_root}/current/{yarn_role_root}/bin") + + # try to render the specific version + version = component_version.get_component_repository_version() + if version is None: + version = default("/commandParams/version", None) + + + if version is not None: + hadoop_mapr_versioned_home = format("{stack_root}/{version}/hadoop-mapreduce") + hadoop_yarn_versioned_home = format("{stack_root}/{version}/hadoop-yarn") + + if sudo.path_isdir(hadoop_mapr_versioned_home): + hadoop_mapr_home = hadoop_mapr_versioned_home + + if sudo.path_isdir(hadoop_yarn_versioned_home): + hadoop_yarn_home = hadoop_yarn_versioned_home + + + hadoop_mapred2_jar_location = hadoop_mapr_home + mapred_bin = format("{hadoop_mapr_home}/sbin") + + yarn_bin = format("{hadoop_yarn_home}/sbin") + yarn_container_bin = format("{hadoop_yarn_home}/bin") + if stack_supports_timeline_state_store: # Timeline Service property that was added timeline_state_store stack feature http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/status_params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/status_params.py b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/status_params.py index c2e9d92..6bb528f 100644 --- a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/status_params.py +++ b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/status_params.py @@ -19,43 +19,31 @@ limitations under the License. """ from resource_management.libraries.script.script import Script from resource_management.libraries import functions +from resource_management.libraries.functions import stack_select from resource_management.libraries.functions import format from resource_management.libraries.functions.default import default -from ambari_commons import OSCheck config = Script.get_config() tmp_dir = Script.get_tmp_dir() -if OSCheck.is_windows_family(): - resourcemanager_win_service_name = 'resourcemanager' - nodemanager_win_service_name = 'nodemanager' - historyserver_win_service_name = 'historyserver' - timelineserver_win_service_name = 'timelineserver' - - service_map = { - 'resourcemanager' : resourcemanager_win_service_name, - 'nodemanager' : nodemanager_win_service_name, - 'historyserver' : historyserver_win_service_name, - 'timelineserver' : timelineserver_win_service_name - } -else: - mapred_user = config['configurations']['mapred-env']['mapred_user'] - yarn_user = config['configurations']['yarn-env']['yarn_user'] - yarn_pid_dir_prefix = config['configurations']['yarn-env']['yarn_pid_dir_prefix'] - mapred_pid_dir_prefix = config['configurations']['mapred-env']['mapred_pid_dir_prefix'] - yarn_pid_dir = format("{yarn_pid_dir_prefix}/{yarn_user}") - mapred_pid_dir = format("{mapred_pid_dir_prefix}/{mapred_user}") - - resourcemanager_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-resourcemanager.pid") - nodemanager_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-nodemanager.pid") - yarn_historyserver_pid_file_old = format("{yarn_pid_dir}/yarn-{yarn_user}-historyserver.pid") - yarn_historyserver_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-timelineserver.pid") # *-historyserver.pid is deprecated - mapred_historyserver_pid_file = format("{mapred_pid_dir}/mapred-{mapred_user}-historyserver.pid") - - hadoop_conf_dir = functions.conf_select.get_hadoop_conf_dir() - - hostname = config['hostname'] - kinit_path_local = functions.get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None)) - security_enabled = config['configurations']['cluster-env']['security_enabled'] +mapred_user = config['configurations']['mapred-env']['mapred_user'] +yarn_user = config['configurations']['yarn-env']['yarn_user'] +yarn_pid_dir_prefix = config['configurations']['yarn-env']['yarn_pid_dir_prefix'] +mapred_pid_dir_prefix = config['configurations']['mapred-env']['mapred_pid_dir_prefix'] +yarn_pid_dir = format("{yarn_pid_dir_prefix}/{yarn_user}") +mapred_pid_dir = format("{mapred_pid_dir_prefix}/{mapred_user}") + +resourcemanager_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-resourcemanager.pid") +nodemanager_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-nodemanager.pid") +yarn_historyserver_pid_file_old = format("{yarn_pid_dir}/yarn-{yarn_user}-historyserver.pid") +yarn_historyserver_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-timelineserver.pid") # *-historyserver.pid is deprecated +mapred_historyserver_pid_file = format("{mapred_pid_dir}/mapred-{mapred_user}-historyserver.pid") + +hadoop_home = stack_select.get_hadoop_dir("home") +hadoop_conf_dir = functions.conf_select.get_hadoop_conf_dir() + +hostname = config['hostname'] +kinit_path_local = functions.get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None)) +security_enabled = config['configurations']['cluster-env']['security_enabled'] stack_name = default("/hostLevelParams/stack_name", None) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/configuration/yarn-site.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/configuration/yarn-site.xml b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/configuration/yarn-site.xml index 2a69d35..6f571e4 100644 --- a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/configuration/yarn-site.xml +++ b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/configuration/yarn-site.xml @@ -151,7 +151,7 @@ </property> <property> <name>yarn.application.classpath</name> - <value>$HADOOP_CONF_DIR,{{stack_root}}/current/hadoop-client/*,{{stack_root}}/current/hadoop-client/lib/*,{{stack_root}}/current/hadoop-hdfs-client/*,{{stack_root}}/current/hadoop-hdfs-client/lib/*,{{stack_root}}/current/hadoop-yarn-client/*,{{stack_root}}/current/hadoop-yarn-client/lib/*</value> + <value>$HADOOP_CONF_DIR,{{hadoop_home}}/*,{{hadoop_home}}/lib/*,{{stack_root}}/current/hadoop-hdfs-client/*,{{stack_root}}/current/hadoop-hdfs-client/lib/*,{{stack_root}}/current/hadoop-yarn-client/*,{{stack_root}}/current/hadoop-yarn-client/lib/*</value> <description>Classpath for typical applications.</description> <on-ambari-upgrade add="false"/> </property> http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/params_linux.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/params_linux.py index e66ec3c..e4dbe2c 100644 --- a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/params_linux.py +++ b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/params_linux.py @@ -20,8 +20,10 @@ Ambari Agent """ import os +from resource_management.core import sudo from resource_management.libraries.script.script import Script from resource_management.libraries.resources.hdfs_resource import HdfsResource +from resource_management.libraries.functions import component_version from resource_management.libraries.functions import conf_select from resource_management.libraries.functions import stack_select from resource_management.libraries.functions import format @@ -30,12 +32,13 @@ from resource_management.libraries.functions.stack_features import check_stack_f from resource_management.libraries.functions.stack_features import get_stack_feature_version from resource_management.libraries.functions import get_kinit_path from resource_management.libraries.functions.get_not_managed_resources import get_not_managed_resources -from resource_management.libraries.functions.version import format_stack_version +from resource_management.libraries.functions.version import format_stack_version, get_major_version from resource_management.libraries.functions.default import default from resource_management.libraries import functions from resource_management.libraries.functions import is_empty from resource_management.libraries.functions.get_architecture import get_architecture from resource_management.libraries.functions.setup_ranger_plugin_xml import get_audit_configs, generate_ranger_service_config + import status_params # a map of the Ambari role to the component name @@ -65,30 +68,33 @@ tarball_map = default("/configurations/cluster-env/tarball_map", None) config_path = os.path.join(stack_root, "current/hadoop-client/conf") config_dir = os.path.realpath(config_path) +# get the correct version to use for checking stack features +version_for_stack_feature_checks = get_stack_feature_version(config) + # This is expected to be of the form #.#.#.# stack_version_unformatted = config['hostLevelParams']['stack_version'] stack_version_formatted_major = format_stack_version(stack_version_unformatted) stack_version_formatted = functions.get_stack_version('hadoop-yarn-resourcemanager') +major_stack_version = get_major_version(stack_version_formatted_major) -stack_supports_ru = stack_version_formatted_major and check_stack_feature(StackFeature.ROLLING_UPGRADE, stack_version_formatted_major) -stack_supports_timeline_state_store = stack_version_formatted_major and check_stack_feature(StackFeature.TIMELINE_STATE_STORE, stack_version_formatted_major) +stack_supports_ru = check_stack_feature(StackFeature.ROLLING_UPGRADE, version_for_stack_feature_checks) +stack_supports_timeline_state_store = check_stack_feature(StackFeature.TIMELINE_STATE_STORE, version_for_stack_feature_checks) # New Cluster Stack Version that is defined during the RESTART of a Stack Upgrade. # It cannot be used during the initial Cluser Install because the version is not yet known. version = default("/commandParams/version", None) -# get the correct version to use for checking stack features -version_for_stack_feature_checks = get_stack_feature_version(config) - stack_supports_ranger_kerberos = check_stack_feature(StackFeature.RANGER_KERBEROS_SUPPORT, version_for_stack_feature_checks) stack_supports_ranger_audit_db = check_stack_feature(StackFeature.RANGER_AUDIT_DB_SUPPORT, version_for_stack_feature_checks) hostname = config['hostname'] # hadoop default parameters +hadoop_home = status_params.hadoop_home hadoop_libexec_dir = stack_select.get_hadoop_dir("libexec") hadoop_bin = stack_select.get_hadoop_dir("sbin") hadoop_bin_dir = stack_select.get_hadoop_dir("bin") +hadoop_lib_home = stack_select.get_hadoop_dir("lib") hadoop_conf_dir = conf_select.get_hadoop_conf_dir() hadoop_yarn_home = '/usr/lib/hadoop-yarn' hadoop_mapred2_jar_location = "/usr/lib/hadoop-mapreduce" @@ -110,12 +116,33 @@ if stack_supports_ru: if command_role in YARN_SERVER_ROLE_DIRECTORY_MAP: yarn_role_root = YARN_SERVER_ROLE_DIRECTORY_MAP[command_role] - hadoop_mapred2_jar_location = format("{stack_root}/current/{mapred_role_root}") - mapred_bin = format("{stack_root}/current/{mapred_role_root}/sbin") - + # defaults set to current based on role + hadoop_mapr_home = format("{stack_root}/current/{mapred_role_root}") hadoop_yarn_home = format("{stack_root}/current/{yarn_role_root}") - yarn_bin = format("{stack_root}/current/{yarn_role_root}/sbin") - yarn_container_bin = format("{stack_root}/current/{yarn_role_root}/bin") + + # try to render the specific version + version = component_version.get_component_repository_version() + if version is None: + version = default("/commandParams/version", None) + + + if version is not None: + hadoop_mapr_versioned_home = format("{stack_root}/{version}/hadoop-mapreduce") + hadoop_yarn_versioned_home = format("{stack_root}/{version}/hadoop-yarn") + + if sudo.path_isdir(hadoop_mapr_versioned_home): + hadoop_mapr_home = hadoop_mapr_versioned_home + + if sudo.path_isdir(hadoop_yarn_versioned_home): + hadoop_yarn_home = hadoop_yarn_versioned_home + + + hadoop_mapred2_jar_location = hadoop_mapr_home + mapred_bin = format("{hadoop_mapr_home}/sbin") + + yarn_bin = format("{hadoop_yarn_home}/sbin") + yarn_container_bin = format("{hadoop_yarn_home}/bin") + if stack_supports_timeline_state_store: # Timeline Service property that was added timeline_state_store stack feature @@ -347,7 +374,7 @@ HdfsResource = functools.partial( immutable_paths = get_not_managed_resources(), dfs_type = dfs_type ) -update_files_only = default("/commandParams/update_files_only", False) +update_files_only = default("/commandParams/update_files_only",False) mapred_tt_group = default("/configurations/mapred-site/mapreduce.tasktracker.group", user_group) @@ -365,7 +392,7 @@ cgroups_dir = "/cgroups_test/cpu" # hostname of the active HDFS HA Namenode (only used when HA is enabled) dfs_ha_namenode_active = default("/configurations/hadoop-env/dfs_ha_initial_namenode_active", None) -if dfs_ha_namenode_active is not None: +if dfs_ha_namenode_active is not None: namenode_hostname = dfs_ha_namenode_active else: namenode_hostname = config['clusterHostInfo']['namenode_host'][0] http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/status_params.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/status_params.py b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/status_params.py index 7c1b2c7..6bb528f 100644 --- a/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/status_params.py +++ b/ambari-server/src/main/resources/common-services/YARN/3.0.0.3.0/package/scripts/status_params.py @@ -19,43 +19,31 @@ limitations under the License. """ from resource_management.libraries.script.script import Script from resource_management.libraries import functions +from resource_management.libraries.functions import stack_select from resource_management.libraries.functions import format from resource_management.libraries.functions.default import default -from ambari_commons import OSCheck config = Script.get_config() tmp_dir = Script.get_tmp_dir() -if OSCheck.is_windows_family(): - resourcemanager_win_service_name = 'resourcemanager' - nodemanager_win_service_name = 'nodemanager' - historyserver_win_service_name = 'historyserver' - timelineserver_win_service_name = 'timelineserver' - - service_map = { - 'resourcemanager' : resourcemanager_win_service_name, - 'nodemanager' : nodemanager_win_service_name, - 'historyserver' : historyserver_win_service_name, - 'timelineserver' : timelineserver_win_service_name - } -else: - mapred_user = config['configurations']['mapred-env']['mapred_user'] - yarn_user = config['configurations']['yarn-env']['yarn_user'] - yarn_pid_dir_prefix = config['configurations']['yarn-env']['yarn_pid_dir_prefix'] - mapred_pid_dir_prefix = config['configurations']['mapred-env']['mapred_pid_dir_prefix'] - yarn_pid_dir = format("{yarn_pid_dir_prefix}/{yarn_user}") - mapred_pid_dir = format("{mapred_pid_dir_prefix}/{mapred_user}") - - resourcemanager_pid_file = format("{yarn_pid_dir}/hadoop-{yarn_user}-resourcemanager.pid") - nodemanager_pid_file = format("{yarn_pid_dir}/hadoop-{yarn_user}-nodemanager.pid") - yarn_historyserver_pid_file_old = format("{yarn_pid_dir}/hadoop-{yarn_user}-historyserver.pid") - yarn_historyserver_pid_file = format("{yarn_pid_dir}/hadoop-{yarn_user}-timelineserver.pid") # *-historyserver.pid is deprecated - mapred_historyserver_pid_file = format("{mapred_pid_dir}/hadoop-{mapred_user}-historyserver.pid") - - hadoop_conf_dir = functions.conf_select.get_hadoop_conf_dir() - - hostname = config['hostname'] - kinit_path_local = functions.get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None)) - security_enabled = config['configurations']['cluster-env']['security_enabled'] +mapred_user = config['configurations']['mapred-env']['mapred_user'] +yarn_user = config['configurations']['yarn-env']['yarn_user'] +yarn_pid_dir_prefix = config['configurations']['yarn-env']['yarn_pid_dir_prefix'] +mapred_pid_dir_prefix = config['configurations']['mapred-env']['mapred_pid_dir_prefix'] +yarn_pid_dir = format("{yarn_pid_dir_prefix}/{yarn_user}") +mapred_pid_dir = format("{mapred_pid_dir_prefix}/{mapred_user}") + +resourcemanager_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-resourcemanager.pid") +nodemanager_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-nodemanager.pid") +yarn_historyserver_pid_file_old = format("{yarn_pid_dir}/yarn-{yarn_user}-historyserver.pid") +yarn_historyserver_pid_file = format("{yarn_pid_dir}/yarn-{yarn_user}-timelineserver.pid") # *-historyserver.pid is deprecated +mapred_historyserver_pid_file = format("{mapred_pid_dir}/mapred-{mapred_user}-historyserver.pid") + +hadoop_home = stack_select.get_hadoop_dir("home") +hadoop_conf_dir = functions.conf_select.get_hadoop_conf_dir() + +hostname = config['hostname'] +kinit_path_local = functions.get_kinit_path(default('/configurations/kerberos-env/executable_search_paths', None)) +security_enabled = config['configurations']['cluster-env']['security_enabled'] stack_name = default("/hostLevelParams/stack_name", None) \ No newline at end of file http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/stacks/HDP/2.6/services/YARN/configuration/yarn-site.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.6/services/YARN/configuration/yarn-site.xml b/ambari-server/src/main/resources/stacks/HDP/2.6/services/YARN/configuration/yarn-site.xml index b5eedea..71c63c1 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.6/services/YARN/configuration/yarn-site.xml +++ b/ambari-server/src/main/resources/stacks/HDP/2.6/services/YARN/configuration/yarn-site.xml @@ -19,7 +19,7 @@ <configuration supports_final="true"> <property> <name>yarn.application.classpath</name> - <value>/etc/hadoop/conf,/usr/hdp/current/hadoop-client/*,/usr/hdp/current/hadoop-client/lib/*,/usr/hdp/current/hadoop-hdfs-client/*,/usr/hdp/current/hadoop-hdfs-client/lib/*,/usr/hdp/current/hadoop-yarn-client/*,/usr/hdp/current/hadoop-yarn-client/lib/*,/usr/hdp/current/ext/hadoop/*</value> + <value>{{hadoop_home}}/conf,{{hadoop_home}}/*,{{hadoop_home}}/lib/*,/usr/hdp/current/hadoop-hdfs-client/*,/usr/hdp/current/hadoop-hdfs-client/lib/*,/usr/hdp/current/hadoop-yarn-client/*,/usr/hdp/current/hadoop-yarn-client/lib/*,/usr/hdp/current/ext/hadoop/*</value> <description>Classpath for typical applications.</description> <on-ambari-upgrade add="true"/> </property> http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/config-upgrade.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/config-upgrade.xml b/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/config-upgrade.xml index fd7e438..91044d8 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/config-upgrade.xml +++ b/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/config-upgrade.xml @@ -155,6 +155,13 @@ if-key="yarn.resourcemanager.monitor.capacity.preemption.natural_termination_factor" if-key-state="absent" /> </definition> + + + <definition xsi:type="configure" id="hdp_2_6_yarn_app_classpath_parameterization" summary="Application Classpath Parameterization"> + <type>yarn-site</type> + <replace key="yarn.application.classpath" find="/usr/hdp/current/hadoop-client" replace-with="{{hadoop_home}}"/> + </definition> + </changes> </component> <component name="NODEMANAGER"> http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml b/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml index 832c505..0b5e8c1 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml +++ b/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/nonrolling-upgrade-2.6.xml @@ -279,8 +279,7 @@ <!-- After processing this group, will change the effective Stack of the UpgradeContext object. --> <group xsi:type="update-stack" name="UPDATE_DESIRED_REPOSITORY_ID" title="Update Target Repositories"> <execute-stage title="Update Target Repositories"> - <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.UpdateDesiredRepositoryAction"> - </task> + <task xsi:type="server_action" class="org.apache.ambari.server.serveraction.upgrades.UpdateDesiredRepositoryAction"/> </execute-stage> </group> @@ -343,6 +342,10 @@ <task xsi:type="configure" id="hdp_2_6_yarn_preemption"/> </execute-stage> + <execute-stage service="YARN" component="RESOURCEMANAGER" title="Application Classpath Parameterization"> + <task xsi:type="configure" id="hdp_2_6_yarn_app_classpath_parameterization" supports-patch="true"/> + </execute-stage> + <!-- YARN --> <execute-stage service="YARN" component="NODEMANAGER" title="Apply config changes for YARN NM"> <task xsi:type="configure" id="hdp_2_6_0_0_yarn_nodemanager_llap_mem"> http://git-wip-us.apache.org/repos/asf/ambari/blob/4a223503/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/upgrade-2.6.xml ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/upgrade-2.6.xml b/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/upgrade-2.6.xml index d0e11a1..00597c6 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/upgrade-2.6.xml +++ b/ambari-server/src/main/resources/stacks/HDP/2.6/upgrades/upgrade-2.6.xml @@ -696,6 +696,7 @@ <pre-upgrade> <task xsi:type="configure" id="hdp_2_6_maint_ranger_yarn_plugin_cluster_name"/> <task xsi:type="configure" id="hdp_2_6_yarn_preemption" /> + <task xsi:type="configure" id="hdp_2_6_yarn_app_classpath_parameterization" supports-patch="true"/> </pre-upgrade> <pre-downgrade/> <!-- no-op to prevent config changes on downgrade --> <upgrade>