blob: c709e28330363b61a94d4c4e3cf50ae60549a9c6 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_292) on Tue Jun 15 06:11:22 GMT 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DefaultContainerExecutor (Apache Hadoop YARN NodeManager 3.3.1 API)</title>
<meta name="date" content="2021-06-15">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DefaultContainerExecutor (Apache Hadoop YARN NodeManager 3.3.1 API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":9,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultContainerExecutor.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/Context.html" title="interface in org.apache.hadoop.yarn.server.nodemanager"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html" target="_top">Frames</a></li>
<li><a href="DefaultContainerExecutor.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.yarn.server.nodemanager</div>
<h2 title="Class DefaultContainerExecutor" class="title">Class DefaultContainerExecutor</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>org.apache.hadoop.conf.Configurable</dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/WindowsSecureContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">WindowsSecureContainerExecutor</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">DefaultContainerExecutor</span>
extends <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></pre>
<div class="block">The <code>DefaultContainerExecuter</code> class offers generic container
execution services. Process execution is handled in a platform-independent
way via <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ProcessBuilder.html?is-external=true" title="class or interface in java.lang"><code>ProcessBuilder</code></a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager">DefaultContainerExecutor.LocalWrapperScriptBuilder</a></span></code>
<div class="block">This class is a utility to create a wrapper script that is platform
appropriate.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.hadoop.yarn.server.nodemanager.<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></h3>
<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.DelayedProcessKiller.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor.DelayedProcessKiller</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.ExitCode.html" title="enum in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor.ExitCode</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.Signal.html" title="enum in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor.Signal</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.FileContext</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs">lfs</a></span></code>
<div class="block">A <code>FileContext</code> for the local file system.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.hadoop.yarn.server.nodemanager.<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></h3>
<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#DIRECTORY_CONTENTS">DIRECTORY_CONTENTS</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#TASK_LAUNCH_SCRIPT_PERMISSION">TASK_LAUNCH_SCRIPT_PERMISSION</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#TOKEN_FILE_NAME_FMT">TOKEN_FILE_NAME_FMT</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#WILDCARD">WILDCARD</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#DefaultContainerExecutor--">DefaultContainerExecutor</a></span>()</code>
<div class="block">Default constructor for use in testing.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.util.Shell.CommandExecutor</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#buildCommandExecutor-java.lang.String-java.lang.String-java.lang.String-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.Resource-java.io.File-java.util.Map-">buildCommandExecutor</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;wrapperScriptPath,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;containerIdStr,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.fs.Path&nbsp;pidFile,
org.apache.hadoop.yarn.api.records.Resource&nbsp;resource,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;workDir,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;environment)</code>
<div class="block">Create a new <code>Shell.ShellCommandExecutor</code> using the parameters.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#clearLogDirPermissions--">clearLogDirPermissions</a></span>()</code>
<div class="block">Clear the internal variable for repeatable testing.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#containerIsAlive-java.lang.String-">containerIsAlive</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;pid)</code>
<div class="block">Returns true if the process with the specified pid is alive.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#copyFile-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-java.lang.String-">copyFile</a></span>(org.apache.hadoop.fs.Path&nbsp;src,
org.apache.hadoop.fs.Path&nbsp;dst,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;owner)</code>
<div class="block">Copy a file using the <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs"><code>lfs</code></a> <code>FileContext</code>.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer">ContainerLocalizer</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#createContainerLocalizer-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.util.List-org.apache.hadoop.fs.FileContext-">createContainerLocalizer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;locId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tokenFileName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;localDirs,
org.apache.hadoop.fs.FileContext&nbsp;localizerFc)</code>
<div class="block">Create a new <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer"><code>ContainerLocalizer</code></a> instance.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#createDir-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.permission.FsPermission-boolean-java.lang.String-">createDir</a></span>(org.apache.hadoop.fs.Path&nbsp;dirPath,
org.apache.hadoop.fs.permission.FsPermission&nbsp;perms,
boolean&nbsp;createParent,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user)</code>
<div class="block">Use the <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs"><code>lfs</code></a> <code>FileContext</code> to create the target directory.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#deleteAsUser-org.apache.hadoop.yarn.server.nodemanager.executor.DeletionAsUserContext-">deleteAsUser</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/DeletionAsUserContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">DeletionAsUserContext</a>&nbsp;ctx)</code>
<div class="block">Delete specified directories as a given user.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>org.apache.hadoop.hdfs.protocol.datatransfer.IOStreamPair</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#execContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerExecContext-">execContainer</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerExecContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerExecContext</a>&nbsp;ctx)</code>
<div class="block">Perform interactive docker command into running container.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager">DefaultContainerExecutor.LocalWrapperScriptBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#getLocalWrapperScriptBuilder-java.lang.String-org.apache.hadoop.fs.Path-">getLocalWrapperScriptBuilder</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;containerIdStr,
org.apache.hadoop.fs.Path&nbsp;containerWorkDir)</code>
<div class="block">Create a <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><code>DefaultContainerExecutor.LocalWrapperScriptBuilder</code></a> for the given container ID
and path that is appropriate to the current platform.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#getLogDirPermissions--">getLogDirPermissions</a></span>()</code>
<div class="block">Return the default container log directory permissions.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected org.apache.hadoop.fs.Path</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#getWorkingDir-java.util.List-java.lang.String-java.lang.String-">getWorkingDir</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;localDirs,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appId)</code>
<div class="block">Return a randomly chosen application directory from a list of local storage
directories.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#init-org.apache.hadoop.yarn.server.nodemanager.Context-">init</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/Context.html" title="interface in org.apache.hadoop.yarn.server.nodemanager">Context</a>&nbsp;nmContext)</code>
<div class="block">Run the executor initialization steps.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#isContainerAlive-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerLivenessContext-">isContainerAlive</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerLivenessContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerLivenessContext</a>&nbsp;ctx)</code>
<div class="block">Check if a container is alive.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#killContainer-java.lang.String-org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor.Signal-">killContainer</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;pid,
<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.Signal.html" title="enum in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor.Signal</a>&nbsp;signal)</code>
<div class="block">Send a specified signal to the specified pid</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#launchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">launchContainer</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerStartContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerStartContext</a>&nbsp;ctx)</code>
<div class="block">Launch the container on the node.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#reapContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerReapContext-">reapContainer</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerReapContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerReapContext</a>&nbsp;ctx)</code>
<div class="block">No-op for reaping containers within the DefaultContainerExecutor.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#relaunchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">relaunchContainer</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerStartContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerStartContext</a>&nbsp;ctx)</code>
<div class="block">Relaunch the container on the node.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#setScriptExecutable-org.apache.hadoop.fs.Path-java.lang.String-">setScriptExecutable</a></span>(org.apache.hadoop.fs.Path&nbsp;script,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;owner)</code>
<div class="block">Make a file executable using the <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs"><code>lfs</code></a> <code>FileContext</code>.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#signalContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerSignalContext-">signalContainer</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerSignalContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerSignalContext</a>&nbsp;ctx)</code>
<div class="block">Signal container with the specified signal.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#startLocalizer-org.apache.hadoop.yarn.server.nodemanager.executor.LocalizerStartContext-">startLocalizer</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/LocalizerStartContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">LocalizerStartContext</a>&nbsp;ctx)</code>
<div class="block">Prepare the environment for containers in this application to execute.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#symLink-java.lang.String-java.lang.String-">symLink</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;target,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;symlink)</code>
<div class="block">Create a symlink file which points to the target.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#updateYarnSysFS-org.apache.hadoop.yarn.server.nodemanager.Context-java.lang.String-java.lang.String-java.lang.String-">updateYarnSysFS</a></span>(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/Context.html" title="interface in org.apache.hadoop.yarn.server.nodemanager">Context</a>&nbsp;ctx,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;spec)</code>
<div class="block">Update cluster information inside container.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.yarn.server.nodemanager.<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></h3>
<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#activateContainer-org.apache.hadoop.yarn.api.records.ContainerId-org.apache.hadoop.fs.Path-">activateContainer</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#cleanupBeforeRelaunch-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">cleanupBeforeRelaunch</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#deactivateContainer-org.apache.hadoop.yarn.api.records.ContainerId-">deactivateContainer</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getConf--">getConf</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getExposedPorts-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">getExposedPorts</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getIpAndHost-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">getIpAndHost</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getLocalIpAndHost-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">getLocalIpAndHost</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getLocalResources-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">getLocalResources</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getNMEnvVar-java.lang.String-">getNMEnvVar</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getPidFilePath-org.apache.hadoop.yarn.api.records.ContainerId-">getPidFilePath</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getProcessId-org.apache.hadoop.yarn.api.records.ContainerId-">getProcessId</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getRunCommand-java.lang.String-java.lang.String-java.lang.String-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-">getRunCommand</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getRunCommand-java.lang.String-java.lang.String-java.lang.String-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-org.apache.hadoop.yarn.api.records.Resource-">getRunCommand</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getRunCommandForOther-java.lang.String-org.apache.hadoop.conf.Configuration-">getRunCommandForOther</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#getRunCommandForWindows-java.lang.String-java.lang.String-java.lang.String-org.apache.hadoop.fs.Path-org.apache.hadoop.conf.Configuration-org.apache.hadoop.yarn.api.records.Resource-">getRunCommandForWindows</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#isContainerActive-org.apache.hadoop.yarn.api.records.ContainerId-">isContainerActive</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#localizeClasspathJar-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-java.lang.String-">localizeClasspathJar</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#logOutput-java.lang.String-">logOutput</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#pauseContainer-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">pauseContainer</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#prepareContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerPrepareContext-">prepareContainer</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#reacquireContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerReacquisitionContext-">reacquireContainer</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#readDirAsUser-java.lang.String-org.apache.hadoop.fs.Path-">readDirAsUser</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#resumeContainer-org.apache.hadoop.yarn.server.nodemanager.containermanager.container.Container-">resumeContainer</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#setConf-org.apache.hadoop.conf.Configuration-">setConf</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#start--">start</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#stop--">stop</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#writeLaunchEnv-java.io.OutputStream-java.util.Map-java.util.Map-java.util.List-org.apache.hadoop.fs.Path-java.lang.String-java.util.LinkedHashSet-">writeLaunchEnv</a>, <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#writeLaunchEnv-java.io.OutputStream-java.util.Map-java.util.Map-java.util.List-org.apache.hadoop.fs.Path-java.lang.String-java.lang.String-java.util.LinkedHashSet-">writeLaunchEnv</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="lfs">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>lfs</h4>
<pre>protected final&nbsp;org.apache.hadoop.fs.FileContext lfs</pre>
<div class="block">A <code>FileContext</code> for the local file system.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="DefaultContainerExecutor--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DefaultContainerExecutor</h4>
<pre>public&nbsp;DefaultContainerExecutor()</pre>
<div class="block">Default constructor for use in testing.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="copyFile-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.Path-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>copyFile</h4>
<pre>protected&nbsp;void&nbsp;copyFile(org.apache.hadoop.fs.Path&nbsp;src,
org.apache.hadoop.fs.Path&nbsp;dst,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;owner)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Copy a file using the <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs"><code>lfs</code></a> <code>FileContext</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>src</code> - the file to copy</dd>
<dd><code>dst</code> - where to copy the file</dd>
<dd><code>owner</code> - the owner of the new copy. Used only in secure Windows
clusters</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - when the copy fails</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/WindowsSecureContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><code>WindowsSecureContainerExecutor</code></a></dd>
</dl>
</li>
</ul>
<a name="setScriptExecutable-org.apache.hadoop.fs.Path-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setScriptExecutable</h4>
<pre>protected&nbsp;void&nbsp;setScriptExecutable(org.apache.hadoop.fs.Path&nbsp;script,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;owner)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Make a file executable using the <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs"><code>lfs</code></a> <code>FileContext</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>script</code> - the path to make executable</dd>
<dd><code>owner</code> - the new owner for the file. Used only in secure Windows
clusters</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - when the change mode operation fails</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/WindowsSecureContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><code>WindowsSecureContainerExecutor</code></a></dd>
</dl>
</li>
</ul>
<a name="init-org.apache.hadoop.yarn.server.nodemanager.Context-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre>public&nbsp;void&nbsp;init(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/Context.html" title="interface in org.apache.hadoop.yarn.server.nodemanager">Context</a>&nbsp;nmContext)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#init-org.apache.hadoop.yarn.server.nodemanager.Context-">ContainerExecutor</a></code></span></div>
<div class="block">Run the executor initialization steps.
Verify that the necessary configs and permissions are in place.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#init-org.apache.hadoop.yarn.server.nodemanager.Context-">init</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>nmContext</code> - Context of NM</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if initialization fails</dd>
</dl>
</li>
</ul>
<a name="startLocalizer-org.apache.hadoop.yarn.server.nodemanager.executor.LocalizerStartContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>startLocalizer</h4>
<pre>public&nbsp;void&nbsp;startLocalizer(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/LocalizerStartContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">LocalizerStartContext</a>&nbsp;ctx)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#startLocalizer-org.apache.hadoop.yarn.server.nodemanager.executor.LocalizerStartContext-">ContainerExecutor</a></code></span></div>
<div class="block">Prepare the environment for containers in this application to execute.
<pre>
For $x in local.dirs
create $x/$user/$appId
Copy $nmLocal/appTokens -&gt; $N/$user/$appId
For $rsrc in private resources
Copy $rsrc -&gt; $N/$user/filecache/[idef]
For $rsrc in job resources
Copy $rsrc -&gt; $N/$user/$appId/filecache/idef
</pre></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#startLocalizer-org.apache.hadoop.yarn.server.nodemanager.executor.LocalizerStartContext-">startLocalizer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - LocalizerStartContext that encapsulates necessary information
for starting a localizer.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - for most application init failures</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code> - if application init thread is halted by NM</dd>
</dl>
</li>
</ul>
<a name="createContainerLocalizer-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.util.List-org.apache.hadoop.fs.FileContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createContainerLocalizer</h4>
<pre>@InterfaceAudience.Private
protected&nbsp;<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer">ContainerLocalizer</a>&nbsp;createContainerLocalizer(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;locId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;tokenFileName,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;localDirs,
org.apache.hadoop.fs.FileContext&nbsp;localizerFc)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Create a new <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer"><code>ContainerLocalizer</code></a> instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>user</code> - the user who owns the job for which the localization is being
run</dd>
<dd><code>appId</code> - the ID of the application for which the localization is being
run</dd>
<dd><code>locId</code> - the ID of the container for which the localization is being
run</dd>
<dd><code>localDirs</code> - a list of directories to use as destinations for the
localization</dd>
<dd><code>localizerFc</code> - the <code>FileContext</code> to use when localizing files</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/localizer/ContainerLocalizer.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer"><code>ContainerLocalizer</code></a> instance</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if <code>user</code> or <code>locId</code> is <code>null</code> or if
the container localizer has an initialization failure</dd>
</dl>
</li>
</ul>
<a name="launchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>launchContainer</h4>
<pre>public&nbsp;int&nbsp;launchContainer(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerStartContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerStartContext</a>&nbsp;ctx)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
org.apache.hadoop.yarn.exceptions.ConfigurationException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#launchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">ContainerExecutor</a></code></span></div>
<div class="block">Launch the container on the node. This is a blocking call and returns only
when the container exits.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#launchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">launchContainer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for launching containers.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the return status of the launch</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the container launch fails</dd>
<dd><code>org.apache.hadoop.yarn.exceptions.ConfigurationException</code> - if config error was found</dd>
</dl>
</li>
</ul>
<a name="relaunchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>relaunchContainer</h4>
<pre>public&nbsp;int&nbsp;relaunchContainer(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerStartContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerStartContext</a>&nbsp;ctx)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
org.apache.hadoop.yarn.exceptions.ConfigurationException</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#relaunchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">ContainerExecutor</a></code></span></div>
<div class="block">Relaunch the container on the node. This is a blocking call and returns
only when the container exits.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#relaunchContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerStartContext-">relaunchContainer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for relaunching containers.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the return status of the relaunch</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the container relaunch fails</dd>
<dd><code>org.apache.hadoop.yarn.exceptions.ConfigurationException</code> - if config error was found</dd>
</dl>
</li>
</ul>
<a name="buildCommandExecutor-java.lang.String-java.lang.String-java.lang.String-org.apache.hadoop.fs.Path-org.apache.hadoop.yarn.api.records.Resource-java.io.File-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildCommandExecutor</h4>
<pre>protected&nbsp;org.apache.hadoop.util.Shell.CommandExecutor&nbsp;buildCommandExecutor(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;wrapperScriptPath,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;containerIdStr,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
org.apache.hadoop.fs.Path&nbsp;pidFile,
org.apache.hadoop.yarn.api.records.Resource&nbsp;resource,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/File.html?is-external=true" title="class or interface in java.io">File</a>&nbsp;workDir,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;environment)</pre>
<div class="block">Create a new <code>Shell.ShellCommandExecutor</code> using the parameters.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>wrapperScriptPath</code> - the path to the script to execute</dd>
<dd><code>containerIdStr</code> - the container ID</dd>
<dd><code>user</code> - the application owner's username</dd>
<dd><code>pidFile</code> - the path to the container's PID file</dd>
<dd><code>resource</code> - this parameter controls memory and CPU limits.</dd>
<dd><code>workDir</code> - If not-null, specifies the directory which should be set
as the current working directory for the command. If null,
the current working directory is not modified.</dd>
<dd><code>environment</code> - the container environment</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new <code>Shell.ShellCommandExecutor</code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><code>Shell.ShellCommandExecutor</code></dd>
</dl>
</li>
</ul>
<a name="getLocalWrapperScriptBuilder-java.lang.String-org.apache.hadoop.fs.Path-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLocalWrapperScriptBuilder</h4>
<pre>protected&nbsp;<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager">DefaultContainerExecutor.LocalWrapperScriptBuilder</a>&nbsp;getLocalWrapperScriptBuilder(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;containerIdStr,
org.apache.hadoop.fs.Path&nbsp;containerWorkDir)</pre>
<div class="block">Create a <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><code>DefaultContainerExecutor.LocalWrapperScriptBuilder</code></a> for the given container ID
and path that is appropriate to the current platform.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>containerIdStr</code> - the container ID</dd>
<dd><code>containerWorkDir</code> - the container's working directory</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><code>DefaultContainerExecutor.LocalWrapperScriptBuilder</code></a></dd>
</dl>
</li>
</ul>
<a name="signalContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerSignalContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>signalContainer</h4>
<pre>public&nbsp;boolean&nbsp;signalContainer(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerSignalContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerSignalContext</a>&nbsp;ctx)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#signalContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerSignalContext-">ContainerExecutor</a></code></span></div>
<div class="block">Signal container with the specified signal.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#signalContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerSignalContext-">signalContainer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for signaling containers.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>returns true if the operation succeeded</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if signaling the container fails</dd>
</dl>
</li>
</ul>
<a name="reapContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerReapContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reapContainer</h4>
<pre>public&nbsp;boolean&nbsp;reapContainer(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerReapContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerReapContext</a>&nbsp;ctx)</pre>
<div class="block">No-op for reaping containers within the DefaultContainerExecutor.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#reapContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerReapContext-">reapContainer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for reaping containers.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true given no operations are needed.</dd>
</dl>
</li>
</ul>
<a name="isContainerAlive-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerLivenessContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isContainerAlive</h4>
<pre>public&nbsp;boolean&nbsp;isContainerAlive(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerLivenessContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerLivenessContext</a>&nbsp;ctx)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#isContainerAlive-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerLivenessContext-">ContainerExecutor</a></code></span></div>
<div class="block">Check if a container is alive.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#isContainerAlive-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerLivenessContext-">isContainerAlive</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for container liveness check.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if container is still alive</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if there is a failure while checking the container
status</dd>
</dl>
</li>
</ul>
<a name="containerIsAlive-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containerIsAlive</h4>
<pre>public static&nbsp;boolean&nbsp;containerIsAlive(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;pid)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Returns true if the process with the specified pid is alive.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>pid</code> - String pid</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>boolean true if the process is alive</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the command to test process liveliness fails</dd>
</dl>
</li>
</ul>
<a name="killContainer-java.lang.String-org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor.Signal-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>killContainer</h4>
<pre>protected&nbsp;void&nbsp;killContainer(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;pid,
<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.Signal.html" title="enum in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor.Signal</a>&nbsp;signal)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Send a specified signal to the specified pid</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>pid</code> - the pid of the process [group] to signal.</dd>
<dd><code>signal</code> - signal to send</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the command to kill the process fails</dd>
</dl>
</li>
</ul>
<a name="deleteAsUser-org.apache.hadoop.yarn.server.nodemanager.executor.DeletionAsUserContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteAsUser</h4>
<pre>public&nbsp;void&nbsp;deleteAsUser(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/DeletionAsUserContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">DeletionAsUserContext</a>&nbsp;ctx)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#deleteAsUser-org.apache.hadoop.yarn.server.nodemanager.executor.DeletionAsUserContext-">ContainerExecutor</a></code></span></div>
<div class="block">Delete specified directories as a given user.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#deleteAsUser-org.apache.hadoop.yarn.server.nodemanager.executor.DeletionAsUserContext-">deleteAsUser</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for deletion.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if delete fails</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code> - if interrupted while waiting for the deletion
operation to complete</dd>
</dl>
</li>
</ul>
<a name="symLink-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>symLink</h4>
<pre>public&nbsp;void&nbsp;symLink(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;target,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;symlink)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#symLink-java.lang.String-java.lang.String-">ContainerExecutor</a></code></span></div>
<div class="block">Create a symlink file which points to the target.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#symLink-java.lang.String-java.lang.String-">symLink</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>target</code> - The target for symlink</dd>
<dd><code>symlink</code> - the symlink file</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - Error when creating symlinks</dd>
</dl>
</li>
</ul>
<a name="getWorkingDir-java.util.List-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWorkingDir</h4>
<pre>protected&nbsp;org.apache.hadoop.fs.Path&nbsp;getWorkingDir(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;localDirs,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appId)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Return a randomly chosen application directory from a list of local storage
directories. The probability of selecting a directory is proportional to
its size.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>localDirs</code> - the target directories from which to select</dd>
<dd><code>user</code> - the user who owns the application</dd>
<dd><code>appId</code> - the application ID</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the selected directory</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if no application directories for the user can be
found</dd>
</dl>
</li>
</ul>
<a name="createDir-org.apache.hadoop.fs.Path-org.apache.hadoop.fs.permission.FsPermission-boolean-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createDir</h4>
<pre>protected&nbsp;void&nbsp;createDir(org.apache.hadoop.fs.Path&nbsp;dirPath,
org.apache.hadoop.fs.permission.FsPermission&nbsp;perms,
boolean&nbsp;createParent,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Use the <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html#lfs"><code>lfs</code></a> <code>FileContext</code> to create the target directory.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dirPath</code> - the target directory</dd>
<dd><code>perms</code> - the target permissions for the target directory</dd>
<dd><code>createParent</code> - whether the parent directories should also be created</dd>
<dd><code>user</code> - the user as whom the target directory should be created.
Used only on secure Windows hosts.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if there's a failure performing a file operation</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/WindowsSecureContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><code>WindowsSecureContainerExecutor</code></a></dd>
</dl>
</li>
</ul>
<a name="getLogDirPermissions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogDirPermissions</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getLogDirPermissions()</pre>
<div class="block">Return the default container log directory permissions.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the default container log directory permissions</dd>
</dl>
</li>
</ul>
<a name="clearLogDirPermissions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearLogDirPermissions</h4>
<pre>public&nbsp;void&nbsp;clearLogDirPermissions()</pre>
<div class="block">Clear the internal variable for repeatable testing.</div>
</li>
</ul>
<a name="execContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerExecContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execContainer</h4>
<pre>public&nbsp;org.apache.hadoop.hdfs.protocol.datatransfer.IOStreamPair&nbsp;execContainer(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/executor/ContainerExecContext.html" title="class in org.apache.hadoop.yarn.server.nodemanager.executor">ContainerExecContext</a>&nbsp;ctx)
throws <a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/runtime/ContainerExecutionException.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.runtime">ContainerExecutionException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#execContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerExecContext-">ContainerExecutor</a></code></span></div>
<div class="block">Perform interactive docker command into running container.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#execContainer-org.apache.hadoop.yarn.server.nodemanager.executor.ContainerExecContext-">execContainer</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - Encapsulates information necessary for exec containers.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the input/output stream of interactive docker shell.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/containermanager/runtime/ContainerExecutionException.html" title="class in org.apache.hadoop.yarn.server.nodemanager.containermanager.runtime">ContainerExecutionException</a></code></dd>
</dl>
</li>
</ul>
<a name="updateYarnSysFS-org.apache.hadoop.yarn.server.nodemanager.Context-java.lang.String-java.lang.String-java.lang.String-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>updateYarnSysFS</h4>
<pre>public&nbsp;void&nbsp;updateYarnSysFS(<a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/Context.html" title="interface in org.apache.hadoop.yarn.server.nodemanager">Context</a>&nbsp;ctx,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;user,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;appId,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;spec)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#updateYarnSysFS-org.apache.hadoop.yarn.server.nodemanager.Context-java.lang.String-java.lang.String-java.lang.String-">ContainerExecutor</a></code></span></div>
<div class="block">Update cluster information inside container.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html#updateYarnSysFS-org.apache.hadoop.yarn.server.nodemanager.Context-java.lang.String-java.lang.String-java.lang.String-">updateYarnSysFS</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.html" title="class in org.apache.hadoop.yarn.server.nodemanager">ContainerExecutor</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>ctx</code> - ContainerRuntimeContext</dd>
<dd><code>user</code> - Owner of application</dd>
<dd><code>appId</code> - YARN application ID</dd>
<dd><code>spec</code> - Service Specification</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if there is a failure while writing spec to disk</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DefaultContainerExecutor.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/Context.html" title="interface in org.apache.hadoop.yarn.server.nodemanager"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.LocalWrapperScriptBuilder.html" title="class in org.apache.hadoop.yarn.server.nodemanager"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/yarn/server/nodemanager/DefaultContainerExecutor.html" target="_top">Frames</a></li>
<li><a href="DefaultContainerExecutor.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2008&#x2013;2021 <a href="https://www.apache.org">Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>