AI驱动大数据开发(3)

Hadoop + AI 调整资源配置

场景一 辅助解释yarn web UI

以下是 Yarn Web UI 上一个队列资源描述信息的一堆键值对。由于页面上缺少更详细的解释信息,有时会让人感到困惑。

现在,我们可以让GPT来解释这些信息的意义。

第一轮提示
提示

下面是yarn web ui上一个队列的资源情况的描述,请帮我描述一下他们都分别表示什么含义

Queue State: RUNNING

Used Capacity: <memory:0, vCores:0> (0.0%)

Configured Capacity: <memory:0, vCores:0>

Configured Max Capacity: unlimited

Effective Capacity: <memory:24576, vCores:24> (100.0%)

Effective Max Capacity: <memory:24576, vCores:24> (100.0%)

Absolute Used Capacity: 0.0%

Absolute Configured Capacity: 100.0%

Absolute Configured Max Capacity: 100.0%

Used Resources: <memory:0, vCores:0>

Configured Max Application Master Limit: 10.0

Max Application Master Resources: <memory:2560, vCores:1>

Used Application Master Resources: <memory:0, vCores:0>

Max Application Master Resources Per User: <memory:2560, vCores:1>

Num Schedulable Applications: 0

Num Non-Schedulable Applications: 0

Num Containers: 0

Max Applications: 10000

Max Applications Per User: 10000

Configured Minimum User Limit Percent: 100%

Configured User Limit Factor: 1.0

Accessible Node Labels: *

Ordering Policy: FifoOrderingPolicy

Preemption: disabled

Intra-queue Preemption: disabled

Default Node Label Expression: <DEFAULT_PARTITION>

Default Application Priority: 0

回答

以下是 Yarn Web UI 上一个队列的资源情况的描述及其含义:

  1. Queue State (队列状态): RUNNING 表示队列当前正在运行。
  2. Used Capacity (已用容量): <memory:0, vCores:0> (0.0%) 表示队列当前没有使用任何内存和虚拟核心资源。
  3. Configured Capacity (配置容量): <memory:0, vCores:0> 表示队列配置的内存和虚拟核心资源为零。
  4. Configured Max Capacity (配置最大容量): unlimited 表示队列的最大容量没有限制。
  5. Effective Capacity (有效容量): <memory:24576, vCores:24> (100.0%) 表示队列实际可用的内存和虚拟核心资源分别为 24576 MB 和 24 个。
  6. Effective Max Capacity (有效最大容量): <memory:24576, vCores:24> (100.0%) 表示队列实际可用的最大内存和虚拟核心资源分别为 24576 MB 和 24 个。
  7. Absolute Used Capacity (绝对已用容量): 0.0% 表示在整个集群中,队列当前没有使用任何资源。
  8. Absolute Configured Capacity (绝对配置容量): 100.0% 表示队列在整个集群中占据的配置容量百分比。
  9. Absolute Configured Max Capacity (绝对配置最大容量): 100.0% 表示队列在整个集群中占据的配置最大容量百分比。
  10. Used Resources (已用资源): <memory:0, vCores:0> 表示队列当前没有使用任何内存和虚拟核心资源。
  11. Configured Max Application Master Limit (配置最大 Application Master 限制): 10.0 表示队列中最多可以有 10 个 Application Master。
  12. Max Application Master Resources (最大 Application Master 资源): <memory:2560, vCores:1> 表示每个 Application Master 最多可以使用 2560 MB 内存和 1 个虚拟核心资源。
  13. Used Application Master Resources (已用 Application Master 资源): <memory:0, vCores:0> 表示队列当前没有使用任何 Application Master 资源。
  14. Max Application Master Resources Per User (每用户最大 Application Master 资源): <memory:2560, vCores:1> 表示每个用户的 Application Master 最多可以使用 2560 MB 内存和 1 个虚拟核心资源。
  15. Num Schedulable Applications (可调度应用数量): 0 表示队列中没有可调度的应用。
  16. Num Non-Schedulable Applications (不可调度应用数量): 0 表示队列中没有不可调度的应用。
  17. Num Containers (容器数量): 0 表示队列中没有容器。
  18. Max Applications (最大应用数量): 10000 表示
反馈

可以看到GPT的解释是非常精准的,只是话没说完,让它继续。

第二轮提示
提示

继续

回答

队列中最多可以有 10000 个应用。

  1. Max Applications Per User (每用户最大应用数量): 10000 表示每个用户最多可以在队列中拥有 10000 个应用。
  2. Configured Minimum User Limit Percent (配置的最小用户限制百分比): 100% 表示每个用户至少可以使用队列中 100% 的资源。
  3. Configured User Limit Factor (配置的用户限制因子): 1.0 表示用户的资源使用限制为队列配置的资源的 1 倍。
  4. Accessible Node Labels (可访问节点标签): * 表示队列可以访问集群中所有节点。
  5. Ordering Policy (排序策略): FifoOrderingPolicy 表示队列中的应用按照先进先出 (FIFO) 的顺序进行调度。
  6. Preemption (抢占): disabled 表示队列不支持资源抢占。
  7. Intra-queue Preemption (队列内抢占): disabled 表示队列内部的应用之间不支持资源抢占。
  8. Default Node Label Expression (默认节点标签表达式): <DEFAULT_PARTITION> 表示队列默认使用集群中的默认分区。
  9. Default Application Priority (默认应用优先级): 0 表示队列中的应用默认具有 0 级优先级。
反馈

解释非常准确。

场景二 提供配置修改建议

如下图所示,我们当前default里的Ordering Policy(排序策略)是FifoOrderingPolicy(先进先出)。

现在,我们想把它改为公平调度策略,此时你可以向GPT问一下配置修改的建议。

第一轮提示
提示

我现在在yarn上有一个队列,它的Ordering Policy是FifoOrderingPolicy 我想让它编程公平调度策略,该怎么修改配置文件

回答

要将 YARN 队列的排序策略从 FifoOrderingPolicy 更改为公平调度策略(FairOrderingPolicy),需要修改 YARN 的配置文件 capacity-scheduler.xml。以下是具体步骤:

  1. 找到 YARN 配置文件 capacity-scheduler.xml,它通常位于 $HADOOP_HOME/etc/hadoop 目录下。
  2. 打开 capacity-scheduler.xml 文件,在文件中找到要修改的队列配置。队列配置的路径应该类似于 yarn.scheduler.capacity.<queue-path>.ordering-policy,其中 <queue-path> 是队列的路径,例如 root.default
  3. 修改队列的 ordering-policy 配置项,将其值从 fifo 更改为 fair。例如,如果要修改默认队列,可以将配置更改为:

    <property>
      <name>yarn.scheduler.capacity.root.default.ordering-policy</name>
      <value>fair</value>
    </property>

    4. 保存 capacity-scheduler.xml 文件。

    5. 重启 YARN 服务以使更改生效。这通常涉及重启 ResourceManager 和 NodeManager 守护进程。具体命令可能因发行版而异,但通常类似于以下命令:

    $HADOOP_HOME/sbin/stop-yarn.sh
    $HADOOP_HOME/sbin/start-yarn.sh


    现在,所选队列的排序策略应为 FairOrderingPolicy,即公平调度策略。请注意,如果集群使用的是 FairScheduler,则需要修改 fair-scheduler.xml 文件,而不是 capacity-scheduler.xml。在这种情况下,需要将 allocations 配置项从 fifo 更改为 fair

反馈

GPT提供的修改配置建议正确。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值