[ 
https://issues.apache.org/jira/browse/YARN-8465?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Shane Kumpf updated YARN-8465:
------------------------------
    Issue Type: Sub-task  (was: Bug)
        Parent: YARN-3611

> Dshell docker container gets marked as lost after NM restart
> ------------------------------------------------------------
>
>                 Key: YARN-8465
>                 URL: https://issues.apache.org/jira/browse/YARN-8465
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: yarn-native-services
>    Affects Versions: 3.2.0, 3.1.1
>            Reporter: Yesha Vora
>            Assignee: Shane Kumpf
>            Priority: Major
>              Labels: Docker
>
> scenario:
> 1) launch dshell application
> {code}
> yarn  jar 
> /usr/hdp/current/hadoop-yarn-client/hadoop-yarn-applications-distributedshell.jar
>   -shell_command "sleep 500" -num_containers 2 -shell_env 
> YARN_CONTAINER_RUNTIME_TYPE=docker -shell_env 
> YARN_CONTAINER_RUNTIME_DOCKER_IMAGE=xx/httpd:0.1 -jar 
> /usr/hdp/current/hadoop-yarn-client/hadoop-yarn-applications-distributedshell.jar{code}
> 2) wait for app to be in stable state ( 
> container_e01_1529968198450_0001_01_000002 is running on host7 and 
> container_e01_1529968198450_0001_01_000003 is running on host5)
> 3) restart NM (host7)
> Here, dshell application fails with below error
> {code}18/06/25 23:35:30 INFO distributedshell.Client: Got application report 
> from ASM for, appId=1, clientToAMToken=Token { kind: YARN_CLIENT_TOKEN, 
> service:  }, appDiagnostics=, appMasterHost=host9/xxx, appQueue=default, 
> appMasterRpcPort=-1, appStartTime=1529969211776, yarnAppState=RUNNING, 
> distributedFinalState=UNDEFINED, 
> appTrackingUrl=https://host4:8090/proxy/application_1529968198450_0001/, 
> appUser=hbase
> 18/06/25 23:35:31 INFO distributedshell.Client: Got application report from 
> ASM for, appId=1, clientToAMToken=null, appDiagnostics=Application Failure: 
> desired = 2, completed = 2, allocated = 2, failed = 1, diagnostics = 
> [2018-06-25 23:35:28.000]Container exited with a non-zero exit code 154
> [2018-06-25 23:35:28.001]Container exited with a non-zero exit code 154
> , appMasterHost=host9/xxx, appQueue=default, appMasterRpcPort=-1, 
> appStartTime=1529969211776, yarnAppState=FINISHED, 
> distributedFinalState=FAILED, 
> appTrackingUrl=https://host4:8090/proxy/application_1529968198450_0001/, 
> appUser=hbase
> 18/06/25 23:35:31 INFO distributedshell.Client: Application did finished 
> unsuccessfully. YarnState=FINISHED, DSFinalStatus=FAILED. Breaking monitoring 
> loop
> 18/06/25 23:35:31 ERROR distributedshell.Client: Application failed to 
> complete successfully{code}
> Here, the docker container marked as LOST after completion
> {code}
> 2018-06-25 23:35:27,970 WARN  runtime.DockerLinuxContainerRuntime 
> (DockerLinuxContainerRuntime.java:signalContainer(1034)) - Signal docker 
> container failed. Exception:
> org.apache.hadoop.yarn.server.nodemanager.containermanager.runtime.ContainerExecutionException:
>  Liveliness check failed for PID: 423695. Container may have already 
> completed.
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DockerLinuxContainerRuntime.executeLivelinessCheck(DockerLinuxContainerRuntime.java:1208)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DockerLinuxContainerRuntime.signalContainer(DockerLinuxContainerRuntime.java:1026)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DelegatingLinuxContainerRuntime.signalContainer(DelegatingLinuxContainerRuntime.java:159)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.signalContainer(LinuxContainerExecutor.java:755)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.isContainerAlive(LinuxContainerExecutor.java:905)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor.reacquireContainer(ContainerExecutor.java:284)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.reacquireContainer(LinuxContainerExecutor.java:721)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.RecoveredContainerLaunch.call(RecoveredContainerLaunch.java:84)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.RecoveredContainerLaunch.call(RecoveredContainerLaunch.java:47)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>         at java.lang.Thread.run(Thread.java:748)
> 2018-06-25 23:35:27,975 WARN  nodemanager.LinuxContainerExecutor 
> (LinuxContainerExecutor.java:signalContainer(762)) - Error in signalling 
> container 423695 with NULL; exit = -1
> org.apache.hadoop.yarn.server.nodemanager.containermanager.runtime.ContainerExecutionException:
>  Signal docker container failed
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DockerLinuxContainerRuntime.signalContainer(DockerLinuxContainerRuntime.java:1036)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DelegatingLinuxContainerRuntime.signalContainer(DelegatingLinuxContainerRuntime.java:159)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.signalContainer(LinuxContainerExecutor.java:755)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.isContainerAlive(LinuxContainerExecutor.java:905)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.ContainerExecutor.reacquireContainer(ContainerExecutor.java:284)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.reacquireContainer(LinuxContainerExecutor.java:721)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.RecoveredContainerLaunch.call(RecoveredContainerLaunch.java:84)
>         at 
> org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.RecoveredContainerLaunch.call(RecoveredContainerLaunch.java:47)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>         at java.lang.Thread.run(Thread.java:748){code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org

Reply via email to