<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
 | Generated by Apache Maven Doxia at 2021-06-15
 | Rendered using Apache Maven Stylus Skin 1.5
-->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Apache Hadoop 3.3.1 &#x2013; Hadoop: YARN Federation</title>
    <style type="text/css" media="all">
      @import url("./css/maven-base.css");
      @import url("./css/maven-theme.css");
      @import url("./css/site.css");
    </style>
    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
        <meta name="Date-Revision-yyyymmdd" content="20210615" />
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
                </head>
  <body class="composite">
    <div id="banner">
                        <a href="http://hadoop.apache.org/" id="bannerLeft">
                                        <img src="http://hadoop.apache.org/images/hadoop-logo.jpg" alt="" />
                </a>
                              <a href="http://www.apache.org/" id="bannerRight">
                                        <img src="http://www.apache.org/images/asf_logo_wide.png" alt="" />
                </a>
            <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="breadcrumbs">
            
                                   <div class="xleft">
                          <a href="http://www.apache.org/" class="externalLink">Apache</a>
        &gt;
                  <a href="http://hadoop.apache.org/" class="externalLink">Hadoop</a>
        &gt;
                  <a href="../index.html">Apache Hadoop YARN</a>
        &gt;
                  <a href="index.html">Apache Hadoop 3.3.1</a>
        &gt;
        Hadoop: YARN Federation
        </div>
            <div class="xright">            <a href="http://wiki.apache.org/hadoop" class="externalLink">Wiki</a>
            |
                <a href="https://gitbox.apache.org/repos/asf/hadoop.git" class="externalLink">git</a>
            |
                <a href="http://hadoop.apache.org/" class="externalLink">Apache Hadoop</a>
              
                                   &nbsp;| Last Published: 2021-06-15
              &nbsp;| Version: 3.3.1
            </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
             
                                                   <h5>General</h5>
                  <ul>
                  <li class="none">
                  <a href="../../index.html">Overview</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/SingleCluster.html">Single Node Setup</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/ClusterSetup.html">Cluster Setup</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/CommandsManual.html">Commands Reference</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/FileSystemShell.html">FileSystem Shell</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/Compatibility.html">Compatibility Specification</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/DownstreamDev.html">Downstream Developer's Guide</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/AdminCompatibilityGuide.html">Admin Compatibility Guide</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/InterfaceClassification.html">Interface Classification</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/filesystem/index.html">FileSystem Specification</a>
            </li>
          </ul>
                       <h5>Common</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/CLIMiniCluster.html">CLI Mini Cluster</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/FairCallQueue.html">Fair Call Queue</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/NativeLibraries.html">Native Libraries</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/Superusers.html">Proxy User</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/RackAwareness.html">Rack Awareness</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/SecureMode.html">Secure Mode</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/ServiceLevelAuth.html">Service Level Authorization</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/HttpAuthentication.html">HTTP Authentication</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/CredentialProviderAPI.html">Credential Provider API</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-kms/index.html">Hadoop KMS</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/Tracing.html">Tracing</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/UnixShellGuide.html">Unix Shell Guide</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/registry/index.html">Registry</a>
            </li>
          </ul>
                       <h5>HDFS</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsDesign.html">Architecture</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsUserGuide.html">User Guide</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HDFSCommands.html">Commands Reference</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html">NameNode HA With QJM</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithNFS.html">NameNode HA With NFS</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/ObserverNameNode.html">Observer NameNode</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/Federation.html">Federation</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/ViewFs.html">ViewFs</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/ViewFsOverloadScheme.html">ViewFsOverloadScheme</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsSnapshots.html">Snapshots</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsEditsViewer.html">Edits Viewer</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsImageViewer.html">Image Viewer</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html">Permissions and HDFS</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsQuotaAdminGuide.html">Quotas and HDFS</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/LibHdfs.html">libhdfs (C API)</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/WebHDFS.html">WebHDFS (REST API)</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-hdfs-httpfs/index.html">HttpFS</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/ShortCircuitLocalReads.html">Short Circuit Local Reads</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/CentralizedCacheManagement.html">Centralized Cache Management</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsNfsGateway.html">NFS Gateway</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsRollingUpgrade.html">Rolling Upgrade</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/ExtendedAttributes.html">Extended Attributes</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/TransparentEncryption.html">Transparent Encryption</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsMultihoming.html">Multihoming</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/ArchivalStorage.html">Storage Policies</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/MemoryStorage.html">Memory Storage Support</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/SLGUserGuide.html">Synthetic Load Generator</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HDFSErasureCoding.html">Erasure Coding</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HDFSDiskbalancer.html">Disk Balancer</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsUpgradeDomain.html">Upgrade Domain</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsDataNodeAdminGuide.html">DataNode Admin</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs-rbf/HDFSRouterFederation.html">Router Federation</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/HdfsProvidedStorage.html">Provided Storage</a>
            </li>
          </ul>
                       <h5>MapReduce</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html">Tutorial</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapredCommands.html">Commands Reference</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduce_Compatibility_Hadoop1_Hadoop2.html">Compatibility with 1.x</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/EncryptedShuffle.html">Encrypted Shuffle</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/PluggableShuffleAndPluggableSort.html">Pluggable Shuffle/Sort</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/DistributedCacheDeploy.html">Distributed Cache Deploy</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/SharedCacheSupport.html">Support for YARN Shared Cache</a>
            </li>
          </ul>
                       <h5>MapReduce REST APIs</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapredAppMasterRest.html">MR Application Master</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-hs/HistoryServerRest.html">MR History Server</a>
            </li>
          </ul>
                       <h5>YARN</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/YARN.html">Architecture</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/YarnCommands.html">Commands Reference</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html">Capacity Scheduler</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/FairScheduler.html">Fair Scheduler</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/ResourceManagerRestart.html">ResourceManager Restart</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/ResourceManagerHA.html">ResourceManager HA</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/ResourceModel.html">Resource Model</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/NodeLabel.html">Node Labels</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/NodeAttributes.html">Node Attributes</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/WebApplicationProxy.html">Web Application Proxy</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServer.html">Timeline Server</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServiceV2.html">Timeline Service V.2</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/WritingYarnApplications.html">Writing YARN Applications</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/YarnApplicationSecurity.html">YARN Application Security</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/NodeManager.html">NodeManager</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/DockerContainers.html">Running Applications in Docker Containers</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/RuncContainers.html">Running Applications in runC Containers</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/NodeManagerCgroups.html">Using CGroups</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/SecureContainer.html">Secure Containers</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/ReservationSystem.html">Reservation System</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/GracefulDecommission.html">Graceful Decommission</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/OpportunisticContainers.html">Opportunistic Containers</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/Federation.html">YARN Federation</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/SharedCache.html">Shared Cache</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/UsingGpus.html">Using GPU</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/UsingFPGA.html">Using FPGA</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/PlacementConstraints.html">Placement Constraints</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/YarnUI2.html">YARN UI2</a>
            </li>
          </ul>
                       <h5>YARN REST APIs</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/WebServicesIntro.html">Introduction</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/ResourceManagerRest.html">Resource Manager</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/NodeManagerRest.html">Node Manager</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServer.html#Timeline_Server_REST_API_v1">Timeline Server</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/TimelineServiceV2.html#Timeline_Service_v.2_REST_API">Timeline Service V.2</a>
            </li>
          </ul>
                       <h5>YARN Service</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/Overview.html">Overview</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/QuickStart.html">QuickStart</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/Concepts.html">Concepts</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/YarnServiceAPI.html">Yarn Service API</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/ServiceDiscovery.html">Service Discovery</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-site/yarn-service/SystemServices.html">System Services</a>
            </li>
          </ul>
                       <h5>Hadoop Compatible File Systems</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-aliyun/tools/hadoop-aliyun/index.html">Aliyun OSS</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-aws/tools/hadoop-aws/index.html">Amazon S3</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-azure/index.html">Azure Blob Storage</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-azure-datalake/index.html">Azure Data Lake Storage</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-openstack/index.html">OpenStack Swift</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-cos/cloud-storage/index.html">Tencent COS</a>
            </li>
          </ul>
                       <h5>Auth</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-auth/index.html">Overview</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-auth/Examples.html">Examples</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-auth/Configuration.html">Configuration</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-auth/BuildingIt.html">Building</a>
            </li>
          </ul>
                       <h5>Tools</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-streaming/HadoopStreaming.html">Hadoop Streaming</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-archives/HadoopArchives.html">Hadoop Archives</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-archive-logs/HadoopArchiveLogs.html">Hadoop Archive Logs</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-distcp/DistCp.html">DistCp</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-gridmix/GridMix.html">GridMix</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-rumen/Rumen.html">Rumen</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-resourceestimator/ResourceEstimator.html">Resource Estimator Service</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-sls/SchedulerLoadSimulator.html">Scheduler Load Simulator</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/Benchmarking.html">Hadoop Benchmarking</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-dynamometer/Dynamometer.html">Dynamometer</a>
            </li>
          </ul>
                       <h5>Reference</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/release/">Changelog and Release Notes</a>
            </li>
                  <li class="none">
                  <a href="../../api/index.html">Java API docs</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/UnixShellAPI.html">Unix Shell API</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/Metrics.html">Metrics</a>
            </li>
          </ul>
                       <h5>Configuration</h5>
                  <ul>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/core-default.xml">core-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs/hdfs-default.xml">hdfs-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-hdfs-rbf/hdfs-rbf-default.xml">hdfs-rbf-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml">mapred-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-yarn/hadoop-yarn-common/yarn-default.xml">yarn-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-kms/kms-default.html">kms-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-hdfs-httpfs/httpfs-default.html">httpfs-default.xml</a>
            </li>
                  <li class="none">
                  <a href="../../hadoop-project-dist/hadoop-common/DeprecatedProperties.html">Deprecated Properties</a>
            </li>
          </ul>
                                 <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
          <img alt="Built by Maven" src="./images/logos/maven-feather.png"/>
        </a>
                       
                               </div>
    </div>
    <div id="bodyColumn">
      <div id="contentBox">
        <!---
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. See accompanying LICENSE file.
-->
<h1>Hadoop: YARN Federation</h1>
<ul>
<li><a href="#Purpose">Purpose</a></li>
<li><a href="#Architecture">Architecture</a>
<ul>
<li><a href="#YARN_Sub-cluster">YARN Sub-cluster</a></li>
<li><a href="#Router">Router</a></li>
<li><a href="#AMRMProxy">AMRMProxy</a></li>
<li><a href="#Global_Policy_Generator">Global Policy Generator</a></li>
<li><a href="#Federation_State-Store">Federation State-Store</a>
<ul>
<li><a href="#Sub-cluster_Membership">Sub-cluster Membership</a></li>
<li><a href="#Application.E2.80.99s_Home_Sub-cluster">Application&#x2019;s Home Sub-cluster</a></li></ul></li>
<li><a href="#Federation_Policy_Store">Federation Policy Store</a></li></ul></li>
<li><a href="#Running_Applications_across_Sub-Clusters">Running Applications across Sub-Clusters</a></li>
<li><a href="#Configuration">Configuration</a>
<ul>
<li><a href="#EVERYWHERE:">EVERYWHERE:</a>
<ul>
<li><a href="#State-Store:">State-Store:</a></li>
<li><a href="#Optional:">Optional:</a></li></ul></li>
<li><a href="#ON_RMs:">ON RMs:</a></li>
<li><a href="#ON_ROUTER:">ON ROUTER:</a></li>
<li><a href="#ON_NMs:">ON NMs:</a></li></ul></li>
<li><a href="#Running_a_Sample_Job">Running a Sample Job</a></li></ul>

<div class="section">
<h2><a name="Purpose"></a>Purpose</h2>
<p>YARN is known to scale to thousands of nodes. The scalability of <a href="./YARN.html">YARN</a> is determined by the Resource Manager, and is proportional to number of nodes, active applications, active containers, and frequency of heartbeat (of both nodes and applications). Lowering heartbeat can provide scalability increase, but is detrimental to utilization (see old Hadoop 1.x experience). This document described a federation-based approach to scale a single YARN cluster to tens of thousands of nodes, by federating multiple YARN sub-clusters.  The proposed approach is to divide a large (10-100k nodes) cluster into smaller units called sub-clusters, each with its own YARN RM and compute nodes. The federation system will stitch these sub-clusters together and make them appear as one large YARN cluster to the applications. The applications running in this federated environment will see a single massive YARN cluster and will be able to schedule tasks on any node of the federated cluster. Under the hood, the federation system will negotiate with sub-clusters resource managers and provide resources to the application. The goal is to allow an individual job to &#x201c;span&#x201d; sub-clusters seamlessly.</p>
<p>This design is structurally scalable, as we bound the number of nodes each RM is responsible for, and appropriate policies, will try to ensure that the majority of applications will reside within a single sub-cluster, thus the number of applications each RM will see is also bounded. This means we could almost linearly scale, by simply adding sub-clusters (as very little coordination is needed across them). This architecture can provide very tight enforcement of scheduling invariants within each sub-cluster (simply inherits from YARN), while continuous rebalancing across subcluster will enforce (less strictly) that these properties are also respected at a global level (e.g., if a sub-cluster loses a large number of nodes, we could re-map queues to other sub-clusters to ensure users running on the impaired sub-cluster are not unfairly affected).</p>
<p>Federation is designed as a &#x201c;layer&#x201d; atop of existing YARN codebase, with limited changes in the core YARN mechanisms.</p>
<p>Assumptions:</p>
<ul>

<li>We assume reasonably good connectivity across sub-clusters (e.g., we are not looking to federate across DC yet, though future investigations of this are not excluded).</li>
<li>We rely on HDFS federation (or equivalently scalable DFS solutions) to take care of scalability of the store side.</li>
</ul></div>
<div class="section">
<h2><a name="Architecture"></a>Architecture</h2>
<p>OSS YARN has been known to scale up to about few thousand nodes. The proposed architecture leverages the notion of federating a number of such smaller YARN clusters, referred to as sub-clusters, into a larger federated YARN cluster comprising of tens of thousands of nodes. The applications running in this federated environment see a unified large YARN cluster and will be able to schedule tasks on any nodes in the cluster. Under the hood, the federation system will negotiate with sub-clusters RMs and provide resources to the application.  The logical architecture in Figure 1 shows the main components that comprise the federated cluster, which are described below.</p>
<p><img src="./images/federation_architecture.png" alt="YARN Federation Architecture | width=800" /></p>
<div class="section">
<h3><a name="YARN_Sub-cluster"></a>YARN Sub-cluster</h3>
<p>A sub-cluster is a YARN cluster with up to a few thousand nodes. The exact size of the sub-cluster will be determined considering ease of deployment/maintenance, alignment with network or availability zones and general best practices.</p>
<p>The sub-cluster YARN RM will run with work-preserving high-availability turned-on, i.e., we should be able to tolerate YARN RM, NM failures with minimal disruption. If the entire sub-cluster is compromised, external mechanisms will ensure that jobs are resubmitted in a separate sub-cluster (this could eventually be included in the federation design).</p>
<p>Sub-cluster is also the scalability unit in a federated environment. We can scale out the federated environment by adding one or more sub-clusters.</p>
<p><i>Note</i>: by design each sub-cluster is a fully functional YARN RM, and its contribution to the federation can be set to be only a fraction of its overall capacity, i.e. a sub-cluster can have a &#x201c;partial&#x201d; commitment to the federation, while retaining the ability to give out part of its capacity in a completely local way.</p></div>
<div class="section">
<h3><a name="Router"></a>Router</h3>
<p>YARN applications are submitted to one of the Routers, which in turn applies a routing policy (obtained from the Policy Store), queries the State Store for the sub-cluster URL and redirects the application submission request to the appropriate sub-cluster RM. We call the sub-cluster where the job is started the &#x201c;home sub-cluster&#x201d;, and we call &#x201c;secondary sub-clusters&#x201d; all other sub-cluster a job is spanning on. The Router exposes the ApplicationClientProtocol to the outside world, transparently hiding the presence of multiple RMs. To achieve this the Router also persists the mapping between the application and its home sub-cluster into the State Store. This allows Routers to be soft-state while supporting user requests cheaply, as any Router can recover this application to home sub-cluster mapping and direct requests to the right RM without broadcasting them. For performance caching and session stickiness might be advisable. The state of the federation (including applications and nodes) is exposed through the Web UI.</p></div>
<div class="section">
<h3><a name="AMRMProxy"></a>AMRMProxy</h3>
<p>The AMRMProxy is a key component to allow the application to scale and run across sub-clusters. The AMRMProxy runs on all the NM machines and acts as a proxy to the YARN RM for the AMs by implementing the ApplicationMasterProtocol. Applications will not be allowed to communicate with the sub-cluster RMs directly. They are forced by the system to connect only to the AMRMProxy endpoint, which would provide transparent access to multiple YARN RMs (by dynamically routing/splitting/merging the communications). At any one time, a job can span across one home sub-cluster and multiple secondary sub-clusters, but the policies operating in the AMRMProxy try to limit the footprint of each job to minimize overhead on the scheduling infrastructure (more in section on scalability/load). The interceptor chain architecture of the ARMMProxy is showing in figure.</p>
<p><img src="./images/amrmproxy_architecture.png" alt="Architecture of the AMRMProxy interceptor chain | width=800" /></p>
<p><i>Role of AMRMProxy</i></p>
<ol style="list-style-type: decimal">

<li>Protect the sub-cluster YARN RMs from misbehaving AMs. The AMRMProxy can prevent DDOS attacks by throttling/killing AMs that are asking too many resources.</li>
<li>Mask the multiple YARN RMs in the cluster, and can transparently allow the AM to span across sub-clusters. All container allocations are done by the YARN RM framework that consists of the AMRMProxy fronting the home and other sub-cluster RMs.</li>
<li>Intercepts all the requests, thus it can enforce application quotas, which would not be enforceable by sub-cluster RM (as each only see a fraction of the AM requests).</li>
<li>The AMRMProxy can enforce load-balancing / overflow policies.</li>
</ol></div>
<div class="section">
<h3><a name="Global_Policy_Generator"></a>Global Policy Generator</h3>
<p>Global Policy Generator overlooks the entire federation and ensures that the system is configured and tuned properly all the time. A key design point is that the cluster availability does not depend on an always-on GPG. The GPG operates continuously but out-of-band from all cluster operations, and provide us with a unique vantage point, that allows to enforce global invariants, affect load balancing, trigger draining of sub-clusters that will undergo maintenance, etc. More precisely the GPG will update user capacity allocation-to-subcluster mappings, and more rarely change the policies that run in Routers, AMRMProxy (and possible RMs).</p>
<p>In case the GPG is not-available, cluster operations will continue as of the last time the GPG published policies, and while a long-term unavailability might mean some of the desirable properties of balance, optimal cluster utilization and global invariants might drift away, compute and access to data will not be compromised.</p>
<p><i>NOTE</i>: In the current implementation the GPG is a manual tuning process, simply exposed via a CLI (YARN-3657).</p>
<p>This part of the federation system is part of future work in <a class="externalLink" href="https://issues.apache.org/jira/browse/YARN-5597">YARN-5597</a>.</p></div>
<div class="section">
<h3><a name="Federation_State-Store"></a>Federation State-Store</h3>
<p>The Federation State defines the additional state that needs to be maintained to loosely couple multiple individual sub-clusters into a single large federated cluster. This includes the following information:</p>
<div class="section">
<h4><a name="Sub-cluster_Membership"></a>Sub-cluster Membership</h4>
<p>The member YARN RMs continuously heartbeat to the state store to keep alive and publish their current capability/load information.  This information is used by the Global Policy Generator (GPG) to make proper policy decisions. Also this information can be used by routers to select the best home sub-cluster.  This mechanism allows us to dynamically grow/shrink the &#x201c;cluster fleet&#x201d; by adding or removing sub-clusters.  This also allows for easy maintenance of each sub-cluster. This is new functionality that needs to be added to the YARN RM but the mechanisms are well understood as it&#x2019;s similar to individual YARN RM HA.</p></div>
<div class="section">
<h4><a name="Application.E2.80.99s_Home_Sub-cluster"></a>Application&#x2019;s Home Sub-cluster</h4>
<p>The sub-cluster on which the Application Master (AM) runs is called the Application&#x2019;s &#x201c;home sub-cluster&#x201d;. The AM is not limited to resources from the home sub-cluster but can also request resources from other sub-clusters, referred to as secondary sub-clusters. The federated environment will be configured and tuned periodically such that when an AM is placed on a sub-cluster, it should be able to find most of the resources on the home sub-cluster. Only in certain cases it should need to ask for resources from other sub-clusters.</p></div></div>
<div class="section">
<h3><a name="Federation_Policy_Store"></a>Federation Policy Store</h3>
<p>The federation Policy Store is a logically separate store (while it might be backed by the same physical component), which contains information about how applications and resource requests are routed to different sub-clusters. The current implementation provides several policies, ranging from random/hashing/round-robin/priority to more sophisticated ones which account for sub-cluster load, and request locality needs.</p></div></div>
<div class="section">
<h2><a name="Running_Applications_across_Sub-Clusters"></a>Running Applications across Sub-Clusters</h2>
<p>When an application is submitted, the system will determine the most appropriate sub-cluster to run the application, which we call as the application&#x2019;s home sub-cluster. All the communications from the AM to the RM will be proxied via the AMRMProxy running locally on the AM machine. AMRMProxy exposes the same ApplicationMasterService protocol endpoint as the YARN RM. The AM can request containers using the locality information exposed by the storage layer. In ideal case, the application will be placed on a sub-cluster where all the resources and data required by the application will be available, but if it does need containers on nodes in other sub-clusters, AMRMProxy will negotiate with the RMs of those sub-clusters transparently and provide the resources to the application, thereby enabling the application to view the entire federated environment as one massive YARN cluster. AMRMProxy, Global Policy Generator (GPG) and Router work together to make this happen seamlessly.</p>
<p><img src="./images/federation_sequence_diagram.png" alt="Federation Sequence Diagram | width=800" /></p>
<p>The figure shows a sequence diagram for the following job execution flow:</p>
<ol style="list-style-type: decimal">

<li>The Router receives an application submission request that is compliant with the YARN Application Client Protocol.</li>
<li>The router interrogates a routing table / policy to choose the &#x201c;home RM&#x201d; for the job (the policy configuration is received from the state-store on heartbeat).</li>
<li>The router queries the membership state to determine the endpoint of the home RM.</li>
<li>The router then redirects the application submission request to the home RM.</li>
<li>The router updates the application state with the home sub-cluster identifier.</li>
<li>Once the application is submitted to the home RM, the stock YARN flow is triggered, i.e. the application is added to the scheduler queue and its AM started in the home sub-cluster, on the first NodeManager that has available resources. a. During this process, the AM environment is modified by indicating that the address of the AMRMProxy as the YARN RM to talk to. b. The security tokens are also modified by the NM when launching the AM, so that the AM can only talk with the AMRMProxy. Any future communication from AM to the YARN RM is mediated by the AMRMProxy.</li>
<li>The AM will then request containers using the locality information exposed by HDFS.</li>
<li>Based on a policy the AMRMProxy can impersonate the AM on other sub-clusters, by submitting an Unmanaged AM, and by forwarding the AM heartbeats to relevant sub-clusters. a. Federation supports multiple application attempts with AMRMProxy HA. AM containers will have different attempt id in home sub-cluster, but the same Unmanaged AM in secondaries will be used across attempts. b. When AMRMProxy HA is enabled, UAM token will be stored in Yarn Registry. In the registerApplicationMaster call of each application attempt, AMRMProxy will go fetch existing UAM tokens from registry (if any) and re-attached to the existing UAMs.</li>
<li>The AMRMProxy will use both locality information and a pluggable policy configured in the state-store to decide whether to forward the resource requests received by the AM to the Home RM or to one (or more) Secondary RMs. In Figure 1, we show the case in which the AMRMProxy decides to forward the request to the secondary RM.</li>
<li>The secondary RM will provide the AMRMProxy with valid container tokens to start a new container on some node in its sub-cluster. This mechanism ensures that each sub-cluster uses its own security tokens and avoids the need for a cluster wide shared secret to create tokens.</li>
<li>The AMRMProxy forwards the allocation response back to the AM.</li>
<li>The AM starts the container on the target NodeManager (on sub-cluster 2) using the standard YARN protocols.</li>
</ol></div>
<div class="section">
<h2><a name="Configuration"></a>Configuration</h2>
<p>To configure the <tt>YARN</tt> to use the <tt>Federation</tt>, set the following property in the <b>conf/yarn-site.xml</b>:</p>
<div class="section">
<h3><a name="EVERYWHERE:"></a>EVERYWHERE:</h3>
<p>These are common configurations that should appear in the <b>conf/yarn-site.xml</b> at each machine in the federation.</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.federation.enabled</tt> </td>
<td align="left"> <tt>true</tt> </td>
<td> Whether federation is enabled or not </td></tr>
<tr class="a">
<td align="left"><tt>yarn.resourcemanager.cluster-id</tt> </td>
<td align="left"> <tt>&lt;unique-subcluster-id&gt;</tt> </td>
<td> The unique subcluster identifier for this RM (same as the one used for HA). </td></tr>
</tbody>
</table>
<div class="section">
<h4><a name="State-Store:"></a>State-Store:</h4>
<p>Currently, we support ZooKeeper and SQL based implementations of the state-store.</p>
<p><b>Note:</b> The State-Store implementation must always be overwritten with one of the below.</p>
<p>ZooKeeper: one must set the ZooKeeper settings for Hadoop:</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.federation.state-store.class</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.federation.store.impl.ZookeeperFederationStateStore</tt> </td>
<td> The type of state-store to use. </td></tr>
<tr class="a">
<td align="left"><tt>hadoop.zk.address</tt> </td>
<td align="left"> <tt>host:port</tt> </td>
<td> The address for the ZooKeeper ensemble. </td></tr>
</tbody>
</table>
<p>SQL: one must setup the following parameters:</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.federation.state-store.class</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.federation.store.impl.SQLFederationStateStore</tt> </td>
<td> The type of state-store to use. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.federation.state-store.sql.url</tt> </td>
<td align="left"> <tt>jdbc:mysql://&lt;host&gt;:&lt;port&gt;/FederationStateStore</tt> </td>
<td> For SQLFederationStateStore the name of the DB where the state is stored. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.federation.state-store.sql.jdbc-class</tt> </td>
<td align="left"> <tt>com.mysql.jdbc.jdbc2.optional.MysqlDataSource</tt> </td>
<td> For SQLFederationStateStore the jdbc class to use. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.federation.state-store.sql.username</tt> </td>
<td align="left"> <tt>&lt;dbuser&gt;</tt> </td>
<td> For SQLFederationStateStore the username for the DB connection. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.federation.state-store.sql.password</tt> </td>
<td align="left"> <tt>&lt;dbpass&gt;</tt> </td>
<td> For SQLFederationStateStore the password for the DB connection. </td></tr>
</tbody>
</table>
<p>We provide scripts for MySQL and Microsoft SQL Server.</p>
<p>For MySQL, one must download the latest jar version 5.x from <a class="externalLink" href="https://mvnrepository.com/artifact/mysql/mysql-connector-java">MVN Repository</a> and add it to the CLASSPATH. Then the DB schema is created by executing the following SQL scripts in the database:</p>
<ol style="list-style-type: decimal">

<li><b>sbin/FederationStateStore/MySQL/FederationStateStoreDatabase.sql</b>.</li>
<li><b>sbin/FederationStateStore/MySQL/FederationStateStoreUser.sql</b>.</li>
<li><b>sbin/FederationStateStore/MySQL/FederationStateStoreTables.sql</b>.</li>
<li><b>sbin/FederationStateStore/MySQL/FederationStateStoreStoredProcs.sql</b>.</li>
</ol>
<p>In the same directory we provide scripts to drop the Stored Procedures, the Tables, the User and the Database.</p>
<p><b>Note:</b> the FederationStateStoreUser.sql defines a default user/password for the DB that you are <b>highly encouraged</b> to set this to a proper strong password.</p>
<p>For SQL-Server, the process is similar, but the jdbc driver is already included. SQL-Server scripts are located in <b>sbin/FederationStateStore/SQLServer/</b>.</p></div>
<div class="section">
<h4><a name="Optional:"></a>Optional:</h4>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.federation.failover.enabled</tt> </td>
<td align="left"> <tt>true</tt> </td>
<td> Whether should retry considering RM failover within each subcluster. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.federation.blacklist-subclusters</tt> </td>
<td align="left"> <tt>&lt;subcluster-id&gt;</tt> </td>
<td> A list of black-listed sub-clusters, useful to disable a sub-cluster </td></tr>
<tr class="b">
<td align="left"><tt>yarn.federation.policy-manager</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.federation.policies.manager.WeightedLocalityPolicyManager</tt> </td>
<td> The choice of policy manager determines how Applications and ResourceRequests are routed through the system. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.federation.policy-manager-params</tt> </td>
<td align="left"> <tt>&lt;binary&gt;</tt> </td>
<td> The payload that configures the policy. In our example a set of weights for router and amrmproxy policies. This is typically generated by serializing a policymanager that has been configured programmatically, or by populating the state-store with the .json serialized form of it. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.federation.subcluster-resolver.class</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.federation.resolver.DefaultSubClusterResolverImpl</tt> </td>
<td> The class used to resolve which subcluster a node belongs to, and which subcluster(s) a rack belongs to. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.federation.machine-list</tt> </td>
<td align="left"> <tt>&lt;path of machine-list file&gt;</tt> </td>
<td> Path of machine-list file used by <tt>SubClusterResolver</tt>. Each line of the file is a node with sub-cluster and rack information. Below is the example: <br /> <br /> node1, subcluster1, rack1 <br /> node2, subcluster2, rack1 <br /> node3, subcluster3, rack2 <br /> node4, subcluster3, rack2 </td></tr>
</tbody>
</table></div></div>
<div class="section">
<h3><a name="ON_RMs:"></a>ON RMs:</h3>
<p>These are extra configurations that should appear in the <b>conf/yarn-site.xml</b> at each ResourceManager.</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.resourcemanager.epoch</tt> </td>
<td align="left"> <tt>&lt;unique-epoch&gt;</tt> </td>
<td> The seed value for the epoch. This is used to guarantee uniqueness of container-IDs generate by different RMs. It must therefore be unique among sub-clusters and <tt>well-spaced</tt> to allow for failures which increment epoch. Increments of 1000 allow for a large number of sub-clusters and practically ensure near-zero chance of collisions (a clash will only happen if a container is still alive for 1000 restarts of one RM, while the next RM never restarted, and an app requests more containers). </td></tr>
</tbody>
</table>
<p>Optional:</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.federation.state-store.heartbeat-interval-secs</tt> </td>
<td align="left"> <tt>60</tt> </td>
<td> The rate at which RMs report their membership to the federation to the central state-store. </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="ON_ROUTER:"></a>ON ROUTER:</h3>
<p>These are extra configurations that should appear in the <b>conf/yarn-site.xml</b> at each Router.</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.router.bind-host</tt> </td>
<td align="left"> <tt>0.0.0.0</tt> </td>
<td> Host IP to bind the router to.  The actual address the server will bind to. If this optional address is set, the RPC and webapp servers will bind to this address and the port specified in yarn.router.*.address respectively. This is most useful for making Router listen to all interfaces by setting to 0.0.0.0. </td></tr>
<tr class="a">
<td align="left"> <tt>yarn.router.clientrm.interceptor-class.pipeline</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.router.clientrm.FederationClientInterceptor</tt> </td>
<td> A comma-separated list of interceptor classes to be run at the router when interfacing with the client. The last step of this pipeline must be the Federation Client Interceptor. </td></tr>
</tbody>
</table>
<p>Optional:</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"><tt>yarn.router.hostname</tt> </td>
<td align="left"> <tt>0.0.0.0</tt> </td>
<td> Router host name.</td></tr>
<tr class="a">
<td align="left"><tt>yarn.router.clientrm.address</tt> </td>
<td align="left"> <tt>0.0.0.0:8050</tt> </td>
<td> Router client address. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.router.webapp.address</tt> </td>
<td align="left"> <tt>0.0.0.0:8089</tt> </td>
<td> Webapp address at the router. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.router.admin.address</tt> </td>
<td align="left"> <tt>0.0.0.0:8052</tt> </td>
<td> Admin address at the router. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.router.webapp.https.address</tt> </td>
<td align="left"> <tt>0.0.0.0:8091</tt> </td>
<td> Secure webapp address at the router. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.router.submit.retry</tt> </td>
<td align="left"> <tt>3</tt> </td>
<td> The number of retries in the router before we give up. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.federation.statestore.max-connections</tt> </td>
<td align="left"> <tt>10</tt> </td>
<td> This is the maximum number of parallel connections each Router makes to the state-store. </td></tr>
<tr class="a">
<td align="left"><tt>yarn.federation.cache-ttl.secs</tt> </td>
<td align="left"> <tt>60</tt> </td>
<td> The Router caches informations, and this is the time to leave before the cache is invalidated. </td></tr>
<tr class="b">
<td align="left"><tt>yarn.router.webapp.interceptor-class.pipeline</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.router.webapp.FederationInterceptorREST</tt> </td>
<td> A comma-separated list of interceptor classes to be run at the router when interfacing with the client via REST interface. The last step of this pipeline must be the Federation Interceptor REST. </td></tr>
</tbody>
</table></div>
<div class="section">
<h3><a name="ON_NMs:"></a>ON NMs:</h3>
<p>These are extra configurations that should appear in the <b>conf/yarn-site.xml</b> at each NodeManager.</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"> <tt>yarn.nodemanager.amrmproxy.enabled</tt> </td>
<td align="left"> <tt>true</tt> </td>
<td> Whether or not the AMRMProxy is enabled. </td></tr>
<tr class="a">
<td align="left"> <tt>yarn.nodemanager.amrmproxy.interceptor-class.pipeline</tt> </td>
<td align="left"> <tt>org.apache.hadoop.yarn.server.nodemanager.amrmproxy.FederationInterceptor</tt> </td>
<td> A comma-separated list of interceptors to be run at the amrmproxy. For federation the last step in the pipeline should be the FederationInterceptor. </td></tr>
</tbody>
</table>
<p>Optional:</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"> <tt>yarn.nodemanager.amrmproxy.ha.enable</tt> </td>
<td align="left"> <tt>true</tt> </td>
<td> Whether or not the AMRMProxy HA is enabled for multiple application attempt support. </td></tr>
<tr class="a">
<td align="left"> <tt>yarn.federation.statestore.max-connections</tt> </td>
<td align="left"> <tt>1</tt> </td>
<td> The maximum number of parallel connections from each AMRMProxy to the state-store. This value is typically lower than the router one, since we have many AMRMProxy that could burn-through many DB connections quickly. </td></tr>
<tr class="b">
<td align="left"> <tt>yarn.federation.cache-ttl.secs</tt> </td>
<td align="left"> <tt>300</tt> </td>
<td> The time to leave for the AMRMProxy cache. Typically larger than at the router, as the number of AMRMProxy is large, and we want to limit the load to the centralized state-store. </td></tr>
</tbody>
</table></div></div>
<div class="section">
<h2><a name="Running_a_Sample_Job"></a>Running a Sample Job</h2>
<p>In order to submit jobs to a Federation cluster one must create a separate set of configs for the client from which jobs will be submitted. In these, the <b>conf/yarn-site.xml</b> should have the following additional configurations:</p>
<table border="0" class="bodyTable">
<thead>

<tr class="a">
<th align="left"> Property </th>
<th align="left"> Example </th>
<th> Description </th></tr>
</thead><tbody>

<tr class="b">
<td align="left"> <tt>yarn.resourcemanager.address</tt> </td>
<td align="left"> <tt>&lt;router_host&gt;:8050</tt> </td>
<td> Redirects jobs launched at the client to the router&#x2019;s client RM port. </td></tr>
<tr class="a">
<td align="left"> <tt>yarn.resourcemanager.scheduler.address</tt> </td>
<td align="left"> <tt>localhost:8049</tt> </td>
<td> Redirects jobs to the federation AMRMProxy port.</td></tr>
</tbody>
</table>
<p>Any YARN jobs for the cluster can be submitted from the client configurations described above. In order to launch a job through federation, first start up all the clusters involved in the federation as described <a href="../../hadoop-project-dist/hadoop-common/ClusterSetup.html">here</a>. Next, start up the router on the router machine with the following command:</p>

<div>
<div>
<pre class="source">  $HADOOP_HOME/bin/yarn --daemon start router
</pre></div></div>

<p>Now with $HADOOP_CONF_DIR pointing to the client configurations folder that is described above, run your job the usual way. The configurations in the client configurations folder described above will direct the job to the router&#x2019;s client RM port where the router should be listening after being started. Here is an example run of a Pi job on a federation cluster from the client:</p>

<div>
<div>
<pre class="source">  $HADOOP_HOME/bin/yarn jar hadoop-mapreduce-examples-3.0.0.jar pi 16 1000
</pre></div></div>

<p>This job is submitted to the router which as described above, uses a generated policy from the <a href="#Global_Policy_Generator">GPG</a> to pick a home RM for the job to which it is submitted.</p>
<p>The output from this particular example job should be something like:</p>

<div>
<div>
<pre class="source">  2017-07-13 16:29:25,055 INFO mapreduce.Job: Job job_1499988226739_0001 running in uber mode : false
  2017-07-13 16:29:25,056 INFO mapreduce.Job:  map 0% reduce 0%
  2017-07-13 16:29:33,131 INFO mapreduce.Job:  map 38% reduce 0%
  2017-07-13 16:29:39,176 INFO mapreduce.Job:  map 75% reduce 0%
  2017-07-13 16:29:45,217 INFO mapreduce.Job:  map 94% reduce 0%
  2017-07-13 16:29:46,228 INFO mapreduce.Job:  map 100% reduce 100%
  2017-07-13 16:29:46,235 INFO mapreduce.Job: Job job_1499988226739_0001 completed successfully
  .
  .
  .
  Job Finished in 30.586 seconds
  Estimated value of Pi is 3.14250000......
</pre></div></div>

<p>The state of the job can also be tracked on the Router Web UI at <tt>routerhost:8089</tt>. Note that no change in the code or recompilation of the input jar was required to use federation. Also, the output of this job is the exact same as it would be when run without federation. Also, in order to get the full benefit of federation, use a large enough number of mappers such that more than one cluster is required. That number happens to be 16 in the case of the above example.</p></div>
      </div>
    </div>
    <div class="clear">
      <hr/>
    </div>
    <div id="footer">
      <div class="xright">
        &#169;            2008-2021
              Apache Software Foundation
            
                          - <a href="http://maven.apache.org/privacy-policy.html">Privacy Policy</a>.
        Apache Maven, Maven, Apache, the Apache feather logo, and the Apache Maven project logos are trademarks of The Apache Software Foundation.
      </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
  </body>
</html>
