hdfs.hbs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. {{!
  2. * Licensed to the Apache Software Foundation (ASF) under one
  3. * or more contributor license agreements. See the NOTICE file
  4. * distributed with this work for additional information
  5. * regarding copyright ownership. The ASF licenses this file
  6. * to you under the Apache License, Version 2.0 (the
  7. * "License"); you may not use this file except in compliance
  8. * with the License. You may obtain a copy of the License at
  9. *
  10. * http://www.apache.org/licenses/LICENSE-2.0
  11. *
  12. * Unless required by applicable law or agreed to in writing, software
  13. * distributed under the License is distributed on an "AS IS" BASIS,
  14. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. * See the License for the specific language governing permissions and
  16. * limitations under the License.
  17. }}
  18. <div class="clearfix">
  19. <div class="name span2">
  20. {{view App.MainDashboardServiceHealthView serviceBinding="view.service"}}
  21. <a {{action selectService view.service href=true}}>{{view.service.displayName}}</a>
  22. {{#if view.criticalAlertsCount}}
  23. <span class="label label-important alerts-count">{{view.criticalAlertsCount}}</span>
  24. {{/if}}
  25. </div>
  26. <div class="summary span">
  27. {{view.summaryHeader}}
  28. </div>
  29. </div>
  30. <table class="table no-borders">
  31. <tbody>
  32. <!-- NameNode -->
  33. <tr>
  34. <td>{{t dashboard.services.hdfs.nanmenode}}</td>
  35. <td><a href="#" {{action showDetails view.service.nameNode}}>{{view.service.nameNode.hostName}}</a></td>
  36. </tr>
  37. <!-- SecondaryNameNode -->
  38. <tr>
  39. <td>{{t dashboard.services.hdfs.snanmenode}}</td>
  40. <td><a href="#" {{action showDetails view.service.snameNode}}>{{view.service.snameNode.hostName}}</a></td>
  41. </tr>
  42. <!-- Data Nodes -->
  43. <tr>
  44. <td>{{t dashboard.services.hdfs.datanodes}}</td>
  45. <td>
  46. <a href="#" {{action filterHosts view.dataNodeComponent}}>{{view.service.dataNodes.length}} {{t dashboard.services.hdfs.datanodes}}</a>
  47. </td>
  48. </tr>
  49. <!-- Version -->
  50. <tr>
  51. <td>{{t dashboard.services.hdfs.version}}</td>
  52. <td>{{view.service.version}}</td>
  53. </tr>
  54. <!-- NameNode Web UI -->
  55. <tr>
  56. <td>{{t dashboard.services.hdfs.nameNodeWebUI}}</td>
  57. <td><a {{bindAttr href="view.nodeWebUrl"}}>{{view.service.nameNode.hostName}}:50070</a>
  58. </td>
  59. </tr>
  60. <!-- NameNode Uptime -->
  61. <tr>
  62. <td>{{t dashboard.services.hdfs.nodes.uptime}}</td>
  63. <td>{{view.nodeUptime}}</td>
  64. </tr>
  65. <!-- NameNode Heap -->
  66. <tr>
  67. <td>{{t dashboard.services.hdfs.nodes.heap}}</td>
  68. <td>{{view.nodeHeap}}</td>
  69. </tr>
  70. <!-- Data Node Counts -->
  71. <tr>
  72. <td>{{t dashboard.services.hdfs.datanodecounts}}</td>
  73. <td>
  74. {{view.service.liveDataNodes.length}} {{t dashboard.services.hdfs.nodes.live}} /
  75. {{view.service.deadDataNodes.length}} {{t dashboard.services.hdfs.nodes.dead}} /
  76. {{view.service.decommisionDataNodes.length}} {{t dashboard.services.hdfs.nodes.decom}}
  77. </td>
  78. </tr>
  79. <!-- HDFS Capacity -->
  80. <tr>
  81. <td>{{t dashboard.services.hdfs.capacity}}</td>
  82. <td>{{view.capacity}}</td>
  83. </tr>
  84. <!-- Blocks Total -->
  85. <tr>
  86. <td>{{t services.service.summary.blocksTotal}}</td>
  87. <td>{{view.service.dfsTotalBlocks}}</td>
  88. </tr>
  89. <!-- Block Errors -->
  90. <tr>
  91. <td>{{t services.service.summary.blockErrors}}</td>
  92. <td>
  93. {{view.service.dfsCorruptBlocks}} corrupt /
  94. {{view.service.dfsMissingBlocks}} missing /
  95. {{view.service.dfsUnderReplicatedBlocks}} under replicated
  96. </td>
  97. </tr>
  98. <!-- Total Files And Directories -->
  99. <tr>
  100. <td>{{t dashboard.services.hdfs.totalFilesAndDirs}}</td>
  101. <td>{{view.service.dfsTotalFiles}}</td>
  102. </tr>
  103. <!-- Upgrade Status -->
  104. <tr>
  105. <td>{{t services.service.summary.pendingUpgradeStatus}}</td>
  106. <td>
  107. {{#if view.service.upgradeStatus}}
  108. <div>Pending upgrade</div>
  109. {{else}}
  110. <div>No pending upgrade</div>
  111. {{/if}}
  112. </td>
  113. </tr>
  114. <!-- Safe Mode Status -->
  115. <tr>
  116. <td>{{t services.service.summary.safeModeStatus}}</td>
  117. <td>{{view.service.safeModeStatus}}</td>
  118. </tr>
  119. </tbody>
  120. </table>
  121. <div class="chart">
  122. {{view view.Chart}}
  123. <div class="chartLabel">{{t dashboard.services.hdfs.chart.label}}</div>
  124. {{#if view.service.quickLinks.length}}
  125. {{#view App.QuickViewLinks contentBinding="view.service"}}
  126. <div class="btn-group">
  127. <a class="btn btn-mini dropdown-toggle" data-toggle="dropdown" href="#">
  128. Quick Links
  129. <span class="caret"></span>
  130. </a>
  131. <ul class="dropdown-menu">
  132. {{#each view.quickLinks}}
  133. <li><a {{bindAttr href="url"}}>{{label}}</a></li>
  134. {{/each}}
  135. </ul>
  136. </div>
  137. {{/view}}
  138. {{/if}}
  139. </div>