Class DefaultLinuxContainerRuntime
java.lang.Object
org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DefaultLinuxContainerRuntime
- All Implemented Interfaces:
LinuxContainerRuntime,ContainerRuntime
- Direct Known Subclasses:
JavaSandboxLinuxContainerRuntime
@Private
@Unstable
public class DefaultLinuxContainerRuntime
extends Object
implements LinuxContainerRuntime
This class is a
ContainerRuntime implementation that uses the
native container-executor binary via a
PrivilegedOperationExecutor instance to launch processes using the
standard process model.-
Constructor Summary
ConstructorsConstructorDescriptionDefaultLinuxContainerRuntime(PrivilegedOperationExecutor privilegedOperationExecutor) Create an instance using the givenPrivilegedOperationExecutorinstance for performing operations. -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.hadoop.hdfs.protocol.datatransfer.IOStreamPairRun a program in container.getExposedPorts(Container container) Return the exposed ports of the container.String[]getIpAndHost(Container container) Return the host and ip of the container.voidinitialize(org.apache.hadoop.conf.Configuration conf, Context nmContext) Initialize the runtime.booleanisRuntimeRequested(Map<String, String> env) Return whether the given environment variables indicate that the operation is requesting this runtime.voidLaunch a container.voidPrepare a container to be ready for launch.voidPerform any container cleanup that may be required.voidRelaunch a container.voidSignal a container.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.LinuxContainerRuntime
getLocalResources, start, stop
-
Constructor Details
-
DefaultLinuxContainerRuntime
Create an instance using the givenPrivilegedOperationExecutorinstance for performing operations.- Parameters:
privilegedOperationExecutor- thePrivilegedOperationExecutorinstance
-
-
Method Details
-
isRuntimeRequested
Description copied from interface:LinuxContainerRuntimeReturn whether the given environment variables indicate that the operation is requesting this runtime.- Specified by:
isRuntimeRequestedin interfaceLinuxContainerRuntime- Parameters:
env- the environment variable settings for the operation- Returns:
- whether this runtime is requested
-
initialize
public void initialize(org.apache.hadoop.conf.Configuration conf, Context nmContext) throws ContainerExecutionException Description copied from interface:LinuxContainerRuntimeInitialize the runtime.- Specified by:
initializein interfaceLinuxContainerRuntime- Parameters:
conf- theConfigurationto usenmContext- NMContext- Throws:
ContainerExecutionException- if an error occurs while initializing the runtime
-
prepareContainer
Description copied from interface:ContainerRuntimePrepare a container to be ready for launch.- Specified by:
prepareContainerin interfaceContainerRuntime- Parameters:
ctx- theContainerRuntimeContext- Throws:
ContainerExecutionException- if an error occurs while preparing the container
-
launchContainer
Description copied from interface:ContainerRuntimeLaunch a container.- Specified by:
launchContainerin interfaceContainerRuntime- Parameters:
ctx- theContainerRuntimeContext- Throws:
ContainerExecutionException- if an error occurs while launching the container
-
relaunchContainer
Description copied from interface:ContainerRuntimeRelaunch a container.- Specified by:
relaunchContainerin interfaceContainerRuntime- Parameters:
ctx- theContainerRuntimeContext- Throws:
ContainerExecutionException- if an error occurs while relaunching the container
-
signalContainer
Description copied from interface:ContainerRuntimeSignal a container. Signals may be a request to terminate, a status check, etc.- Specified by:
signalContainerin interfaceContainerRuntime- Parameters:
ctx- theContainerRuntimeContext- Throws:
ContainerExecutionException- if an error occurs while signaling the container
-
reapContainer
Description copied from interface:ContainerRuntimePerform any container cleanup that may be required.- Specified by:
reapContainerin interfaceContainerRuntime- Parameters:
ctx- theContainerRuntimeContext- Throws:
ContainerExecutionException- if an error occurs while reaping the container
-
getIpAndHost
Description copied from interface:ContainerRuntimeReturn the host and ip of the container.- Specified by:
getIpAndHostin interfaceContainerRuntime- Parameters:
container- theContainer
-
getExposedPorts
Description copied from interface:ContainerRuntimeReturn the exposed ports of the container.- Specified by:
getExposedPortsin interfaceContainerRuntime- Parameters:
container- theContainer- Returns:
- List of exposed ports
-
execContainer
public org.apache.hadoop.hdfs.protocol.datatransfer.IOStreamPair execContainer(ContainerExecContext ctx) throws ContainerExecutionException Description copied from interface:ContainerRuntimeRun a program in container.- Specified by:
execContainerin interfaceContainerRuntime- Parameters:
ctx- theContainerExecContext- Returns:
- stdin and stdout of container exec
- Throws:
ContainerExecutionException
-