Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
Reviewed
Description
Currently, "yarn nodes -list" command only shows
- "Node-Id",
- "Node-State",
- "Node-Http-Address",
- "Number-of-Running-Containers"
I think we need to show more information such as used resource, just like "yarn nodes -status" command.
Maybe we can add a parameter to -list, such as "-show-details" to enable printing all detailed information.
Attachments
Attachments
- 0003-YARN-4290.patch
- 11 kB
- Sunil G
- 0002-YARN-4290.patch
- 9 kB
- Sunil G
Issue Links
Activity
FAILURE: Integrated in Hadoop-trunk-Commit #9009 (See https://builds.apache.org/job/Hadoop-trunk-Commit/9009/)
YARN-4290. Add -showDetails option to YARN Nodes CLI to print all nodes (wangda: rev a0de7028515eebe1c526cc42808cdbc8ed6b4e2a)
- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/test/java/org/apache/hadoop/yarn/client/cli/TestYarnCLI.java
- hadoop-yarn-project/CHANGES.txt
- hadoop-yarn-project/hadoop-yarn/hadoop-yarn-client/src/main/java/org/apache/hadoop/yarn/client/cli/NodeCLI.java
Committed to trunk/branch-2/2.8, Thanks sunilg! And also thanks Naganarasimha for reviews&comments.
-1 overall |
Vote | Subsystem | Runtime | Comment |
---|---|---|---|
0 | reexec | 0m 0s | Docker mode activated. |
+1 | @author | 0m 0s | The patch does not contain any @author tags. |
+1 | test4tests | 0m 0s | The patch appears to include 1 new or modified test files. |
+1 | mvninstall | 9m 16s | trunk passed |
+1 | compile | 0m 21s | trunk passed with JDK v1.8.0_66 |
+1 | compile | 0m 22s | trunk passed with JDK v1.7.0_91 |
+1 | checkstyle | 0m 10s | trunk passed |
+1 | mvnsite | 0m 28s | trunk passed |
+1 | mvneclipse | 0m 15s | trunk passed |
+1 | findbugs | 0m 39s | trunk passed |
+1 | javadoc | 0m 20s | trunk passed with JDK v1.8.0_66 |
+1 | javadoc | 0m 21s | trunk passed with JDK v1.7.0_91 |
+1 | mvninstall | 0m 26s | the patch passed |
+1 | compile | 0m 23s | the patch passed with JDK v1.8.0_66 |
+1 | javac | 0m 23s | the patch passed |
+1 | compile | 0m 24s | the patch passed with JDK v1.7.0_91 |
+1 | javac | 0m 24s | the patch passed |
+1 | checkstyle | 0m 11s | the patch passed |
+1 | mvnsite | 0m 30s | the patch passed |
+1 | mvneclipse | 0m 18s | the patch passed |
+1 | whitespace | 0m 0s | Patch has no whitespace issues. |
+1 | findbugs | 0m 51s | the patch passed |
+1 | javadoc | 0m 20s | the patch passed with JDK v1.8.0_66 |
+1 | javadoc | 0m 23s | the patch passed with JDK v1.7.0_91 |
-1 | unit | 64m 39s | hadoop-yarn-client in the patch failed with JDK v1.8.0_66. |
-1 | unit | 64m 40s | hadoop-yarn-client in the patch failed with JDK v1.7.0_91. |
-1 | asflicense | 0m 23s | Patch generated 1 ASF License warnings. |
146m 56s |
Reason | Tests |
---|---|
JDK v1.8.0_66 Failed junit tests | hadoop.yarn.client.TestGetGroups |
JDK v1.8.0_66 Timed out junit tests | org.apache.hadoop.yarn.client.cli.TestYarnCLI |
org.apache.hadoop.yarn.client.api.impl.TestYarnClient | |
org.apache.hadoop.yarn.client.api.impl.TestAMRMClient | |
org.apache.hadoop.yarn.client.api.impl.TestNMClient | |
JDK v1.7.0_91 Failed junit tests | hadoop.yarn.client.TestGetGroups |
JDK v1.7.0_91 Timed out junit tests | org.apache.hadoop.yarn.client.cli.TestYarnCLI |
org.apache.hadoop.yarn.client.api.impl.TestYarnClient | |
org.apache.hadoop.yarn.client.api.impl.TestAMRMClient | |
org.apache.hadoop.yarn.client.api.impl.TestNMClient |
This message was automatically generated.
Thanks leftnoteasy and Naganarasimha Garla
Yes, one test case is related. Uploading a new patch. Other test case failures are knows and tracked via separate tickets.
Thanks Naganarasimha,
sunilg could you check failed tests and I will commit in a few days.
-1 overall |
Vote | Subsystem | Runtime | Comment |
---|---|---|---|
0 | reexec | 0m 0s | Docker mode activated. |
+1 | @author | 0m 0s | The patch does not contain any @author tags. |
+1 | test4tests | 0m 0s | The patch appears to include 1 new or modified test files. |
+1 | mvninstall | 7m 48s | trunk passed |
+1 | compile | 0m 16s | trunk passed with JDK v1.8.0_66 |
+1 | compile | 0m 18s | trunk passed with JDK v1.7.0_91 |
+1 | checkstyle | 0m 8s | trunk passed |
+1 | mvnsite | 0m 23s | trunk passed |
+1 | mvneclipse | 0m 14s | trunk passed |
+1 | findbugs | 0m 38s | trunk passed |
+1 | javadoc | 0m 14s | trunk passed with JDK v1.8.0_66 |
+1 | javadoc | 0m 17s | trunk passed with JDK v1.7.0_91 |
+1 | mvninstall | 0m 21s | the patch passed |
+1 | compile | 0m 15s | the patch passed with JDK v1.8.0_66 |
+1 | javac | 0m 15s | the patch passed |
+1 | compile | 0m 18s | the patch passed with JDK v1.7.0_91 |
+1 | javac | 0m 18s | the patch passed |
+1 | checkstyle | 0m 8s | the patch passed |
+1 | mvnsite | 0m 24s | the patch passed |
+1 | mvneclipse | 0m 13s | the patch passed |
+1 | whitespace | 0m 0s | Patch has no whitespace issues. |
+1 | findbugs | 0m 40s | the patch passed |
+1 | javadoc | 0m 14s | the patch passed with JDK v1.8.0_66 |
+1 | javadoc | 0m 16s | the patch passed with JDK v1.7.0_91 |
-1 | unit | 64m 19s | hadoop-yarn-client in the patch failed with JDK v1.8.0_66. |
-1 | unit | 64m 31s | hadoop-yarn-client in the patch failed with JDK v1.7.0_91. |
+1 | asflicense | 0m 30s | Patch does not generate ASF License warnings. |
143m 23s |
Reason | Tests |
---|---|
JDK v1.8.0_66 Failed junit tests | hadoop.yarn.client.TestGetGroups |
JDK v1.8.0_66 Timed out junit tests | org.apache.hadoop.yarn.client.cli.TestYarnCLI |
org.apache.hadoop.yarn.client.api.impl.TestAMRMClient | |
org.apache.hadoop.yarn.client.api.impl.TestYarnClient | |
org.apache.hadoop.yarn.client.api.impl.TestNMClient | |
JDK v1.7.0_91 Failed junit tests | hadoop.yarn.client.TestGetGroups |
JDK v1.7.0_91 Timed out junit tests | org.apache.hadoop.yarn.client.cli.TestYarnCLI |
org.apache.hadoop.yarn.client.api.impl.TestAMRMClient | |
org.apache.hadoop.yarn.client.api.impl.TestYarnClient | |
org.apache.hadoop.yarn.client.api.impl.TestNMClient |
This message was automatically generated.
Uploading a new patch as related tickets are committed
Sample o/p
root@sunil-Inspiron-3543:/opt/hadoop/trunk/hadoop-3.0.0-SNAPSHOT/bin# ./yarn node -list -showDetails 15/12/18 21:24:21 INFO client.RMProxy: Connecting to ResourceManager at /127.0.0.1:25001 Total Nodes:1 Node-Id Node-State Node-Http-Address Number-of-Running-Containers localhost:25006 RUNNING localhost:25008 0 Detailed Node Information : Configured Resources : <memory:8192, vCores:8> Allocated Resources : <memory:0, vCores:0> Resource Utilization by Node : PMem:4884 MB, VMem:4884 MB, VCores:2.5824726 Resource Utilization by Containers : PMem:0 MB, VMem:0 MB, VCores:0.0 Node-Labels :
leftnoteasy and Naganarasimha Garla, please help to share your thoughts.
Sorry to confusing you guys sunilg/Naganarasimha. MEM/CPU means to use the original toString (or similar) result of resource.
YARN-4292 is depend on YARN-3980, let's wait YARN-3980 get in first .
Also this ticket is related to YARN-4292 to get common information available to client side, I have updated a patch there. leftnoteasy Could you please take a look in that also. Thank You.
Ok. I feel Resource.toString is not separated by "/". From Resource class toString is like,
"<memory:" + getMemory() + ", vCores:" + getVirtualCores() + ">"
Am I missing something?
Hi sunilg,
i was assuming (MEM/CPU) was just to mention that the mem and cpu values are specified like resource. tostring !
Thanks leftnoteasy for the input and thanks Naganarasimha Garla for the suggestions.
Yes, this gives more clarity in terms of what we are displaying and arranging it in a ordered manner. I am also thinking that whether we need a suffix for the title as (MEM/CPU), could we simply show as <Memory: 1024MB , VCores: 2.9871>. Same information is prefixed before showing resource value. In this case, for any new resource addition (may be with resource profiles too), we can show in similar syntax. Will this be fine?
Yes wangda, it would be better given in that way as just putting in the braces will not signify its the configured resources
0MB (8192MB) and anyway the title is for capturing the detail information of the node and not just usage information.
But only one thing, we can put Used Resources by NM node: MEM/CPU at the end and we need to some how word it such that Used Resources by NM node is not just for the NM process but overall to the node. At first i presumed it to be of NM process only
sunilg/Naganarasimha,
There're several resources in the output I think they're little confusing, how about call them:
- Configured Resources: MEM/CPU
- Allocated Resources: MEM/CPU
- Used Resources by NM node: MEM/CPU
- Used Resources by launched containers: MEM/CPU
Proposed CLI o/p:
root@sunil-Inspiron-3543:/opt/hadoop/trunk/hadoop-3.0.0-SNAPSHOT/bin# ./yarn node -list -showDetails 15/10/28 22:33:11 INFO client.RMProxy: Connecting to ResourceManager at /127.0.0.1:25001 Total Nodes:1 Node-Id Node-State Node-Http-Address Number-of-Running-Containers localhost:25006 RUNNING localhost:25008 0 Detailed Node Information : Memory-Used(Capacity) : 0MB (8192MB) CPU-Used(Capacity) : 0 vcores (8 vcores) Node-ResourceUtilization : <pmem: 1024MB, vmem: 0MB , vCores: 2.9871> Containers-ResourceUtilization : <pmem: 0MB, vmem: 0MB , vCores: 0> Node-Labels :
Yes. This will be really helpful feature. I can help to do this if you haven't done. Kindly reassign otherwise. Thank you.
One more point, we could retrospect for some more CLI commands to add show-details. It is a good sub command which can append what more details are needed.
Thank you leftnoteasy for the review and commit, and thank you Naga for the comments.!!