使用 YARN 日志进行航天器操作

HadoopHadoopBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在遥远的银河系中,仙女座空间站是星际探索和研究的中心。作为一名技艺高超的宇宙飞船飞行员,你的任务是穿越浩瀚的太空,收集并分析来自各种天体的数据。然而,你的旅程并非一帆风顺。飞船的机载计算机系统由 Hadoop 驱动,要求你掌握使用 Yarn Commands log 高效管理和监控其资源的技巧。

你的目标是通过全面理解 Yarn Commands log(Hadoop 生态系统中的一个强大工具),确保在探险过程中操作顺畅。通过掌握这一工具,你将能够监控资源使用情况、跟踪任务进度,并排查可能出现的任何问题,最终确保任务的成功。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hadoop(("`Hadoop`")) -.-> hadoop/HadoopHDFSGroup(["`Hadoop HDFS`"]) hadoop(("`Hadoop`")) -.-> hadoop/HadoopYARNGroup(["`Hadoop YARN`"]) hadoop/HadoopHDFSGroup -.-> hadoop/node("`DataNode and NameNode Management`") hadoop/HadoopYARNGroup -.-> hadoop/yarn_app("`Yarn Commands application`") hadoop/HadoopYARNGroup -.-> hadoop/yarn_container("`Yarn Commands container`") hadoop/HadoopYARNGroup -.-> hadoop/yarn_log("`Yarn Commands log`") hadoop/HadoopYARNGroup -.-> hadoop/yarn_node("`Yarn Commands node`") hadoop/HadoopYARNGroup -.-> hadoop/resource_manager("`Resource Manager`") hadoop/HadoopYARNGroup -.-> hadoop/node_manager("`Node Manager`") subgraph Lab Skills hadoop/node -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} hadoop/yarn_app -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} hadoop/yarn_container -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} hadoop/yarn_log -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} hadoop/yarn_node -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} hadoop/resource_manager -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} hadoop/node_manager -.-> lab-289012{{"`使用 YARN 日志进行航天器操作`"}} end

熟悉 Yarn Commands Log

在这一步中,你将学习 Yarn Commands log 的基本概念及其在 Hadoop 生态系统中管理资源的作用。

首先,将用户切换为 hadoop,然后切换到 hadoop 用户的主目录:

su - hadoop

接着,查看可用的 Yarn Commands 列表。

yarn --help

yarn --help 命令会显示可用的子命令及其描述。在这些子命令中,你会发现一些与日志相关的命令,例如 yarn logsyarn topyarn node

以下是你可能看到的输出示例:

Usage: yarn [--help] [COMMAND]
where COMMAND is one of:
  node           打印特定节点的信息
  logs           获取并查看特定容器的日志
  top            查看集群信息
  ...

要了解每个子命令的用途和用法,你可以使用 -help 标志加上子命令名称。例如:

yarn logs -help

这将提供关于 yarn logs 子命令的详细信息,包括其语法、选项和示例。

查看容器日志

在这一步中,你将学习如何使用 yarn logs 命令检索和查看特定容器的日志。

首先,提交一个示例作业以生成一些日志:

导航到 Hadoop 示例目录。

cd /home/hadoop/hadoop/share/hadoop/mapreduce

运行 WordCount 示例。

yarn jar hadoop-mapreduce-examples-3.3.6.jar wordcount /home/hadoop/input /home/hadoop/output

作业运行或完成后,你可以使用 yarn logs 命令获取日志:

从作业输出中获取应用程序 ID。

appId="application_1234567890123_0001"

查看指定应用程序的日志。

yarn logs -applicationId $appId

application_1234567890123_0001 替换为作业输出中的实际应用程序 ID。

yarn logs 命令将显示与指定应用程序关联的所有容器的组合日志。你还可以使用 -containerId 选项查看特定容器的日志:

containerId="container_1234567890123_0001_01_000001"
yarn logs -applicationId $appId -containerId $containerId

container_1234567890123_0001_01_000001 替换为你想要检查的实际容器 ID。

监控集群资源

yarn top 命令提供了集群资源利用率的实时视图,包括正在运行的应用程序、节点管理器(Node Managers)和资源分配的信息。

yarn top

输出将显示集群资源使用的摘要,包括总可用资源、已分配资源和待分配资源。此外,它还会列出正在运行的应用程序、它们的进度以及它们消耗的资源。

检查节点信息

yarn node 命令允许你检查 Hadoop 集群中特定节点管理器(Node Manager)或资源管理器(Resource Manager)的详细信息。

列出集群中所有节点的信息。

yarn node -list

iZj6c7ur7j3az0k9shzn2kZ:38115 替换为节点管理器 ID。

nodeId="iZj6c7ur7j3az0k9shzn2kZ:38115"

查看节点管理器的信息:

yarn node -status $nodeId

输出将显示节点管理器的地址、节点健康状态、可用资源以及节点上正在运行的容器列表等信息。

总结

在本实验中,你学习了如何通过 Yarn Commands log 在 Hadoop 的资源管理领域中游刃有余。通过掌握这些命令,你获得了监控资源使用、跟踪作业进度以及排查 Hadoop 生态系统中问题的能力。这些知识在你踏上星际任务时将非常宝贵,确保高效运行并成功从天体收集数据。成为一名熟练的宇宙飞船飞行员的旅程已经迈出了重要的一步,你现在已经更好地准备好应对深空中的挑战。

您可能感兴趣的其他 Hadoop 教程