知识库 : Llama使用手册 ---UDH v1.0.1

Edit Document

Llama使用手册

—— UDH v1.0.1

 

目录

版权

1.               Llama 简介

2.               Llama 安装配置 (UDH)

2.1.               Llama 概要信息

2.2.               Llama 配置信息

3.               Llama 使用


1.     Llama 简介

L lama (Long-Lived Application Master) 是位于 Cloudera Impala 和 Hadoop YARN 之间 ,用于协调资源管理的 服务 系统 。在一个 Hadoop 集群 中, Impala 可以 通过 Llama 预约 、 使用 以及释放资源 分配, 以减少 执行 Impala 查询 时过多 的资源管理 用度 。 只有 在 Impala 中 启用资源管理,集群 中的 Llama 服务 才真正运作 。

默认情况下 , YARN 根据 MapReduce 工作的需要按位分配资源,而 Impala 则需要所有资源在同一时间可用 , 以保证查询的中间结果 能够 在不同节点间交换 , 而不需要 拖延 查询时间来等待新的资源分配, Llama 就是 为了在 每个 Impala 查询 开始执行前 就可 保证 其需要 的资源 都可用而 出现。

若一个 查询执行完毕, Llama 会将资源进行缓存, 确保 在执行 Impala 子查询 时 可以使用 。 这种 缓存 机制避免了每个查询 执行 前都需要进行新的资源请求 。 同时 , 如果 YARN 需要该资源用于其他工作, Llama 就会将这部分资源还给 YARN 。

需要注意的 是 : Llama 仅 支持 YARN ,不能与 MRv1 结合 使用 ,同时 , Llama 也是 通过 YARN 的配置文件与 Hadoop 进行 协作 的。

2.     Llama 安装 配置 ( UDH )

利用 UDH 安装向导 可 将 Llama 与 其他服务一起安装,仅需要在 向导 的 “选择 服务 ” 步骤勾选 “ Llama ”服务, 按照 向导逐步 安装即可 , 无需更改配置参数及 文件 。

注意, 由于 Llama 主要服务于 Impala 和 Yarn 之间的协作 , 因此安装 Llama 必须确保 Impala 和 Yarn 服务 的 安装 , UDH 中 安装 Llama 服务 时将提示安装 Impala 和 Yarn 服务 。

其中 , Llama 安装 后相关配置文件 的 位置如下表所示:

 

文件 类型

存放 位置

二进制 文件

/usr/lib/llama /

配置 文件

/etc/llama/conf /

日志 文件

/var/log/llama/

PID 文件

/var/run/llama/

 

              成功 安装 Llama 后,将在服务界面 查看 到 Llama 的相关信息 , 具体见在 以下 小节中介绍 。

2.1.     Llama概要信息

UDH “ Llama 服务”界面 的 概要部分显示了 Llama Server 的运行状态 ( 如 下图 ) 。

 

2.2.     Llama 配置 信息

下面 的表格列出一些 Llama 配置 项的基本设置, 用户 可根据具体集群环境设置 Llama 相关 的 一般及 高级的配置属性 。

         Llama 设置: 一般

 

配置 项

说明

默认值

L lama Server 主机

用于运行 L lama Server 的 主机

运行 L lama Server 的 主机名

 

         Llama 设置: 高级

 

配置 项

说明

默认值

L lama 日志路径

L lama 日志路径

/var/log/llama/

Llama PID 文件路径

Llama PID 文件路径

/var/run/llama/

llama.am.cache.enabled

全局设置,说明 Llama 是否应该将分配的内存在释放时缓存

true

llama.am.cache.eviction.policy.class

缓存资源的回收机制, 超时回收机制回收在缓存中保留时间等于或大于时限的资源。

com.cloudera.llama.am.cache.ResourceCache$TimeoutEvictionPolicy

llama.am.hadoop.user.name

与 Yarn 互动时, Llama 使用的用户名。

llama

llama.am.rm.connector.class

支持使用 LlamaAM 实现。功能测试时可用: MockRMLlamaAMConnector

com.cloudera.llama.am.yarn.YarnRMConnector

llama.am.server.thrift.address

LlamaAM server 监听的地址。

0.0.0.0:15000

3.     Llama 使用

Llama 的使用主要通过 启用 Impala 资源管理 ( Resource Management ) 实现 。

为 Impala 设置资源 管理,需要启用 Impala 的配置 参数:

         -enable_rm: 该 参数用于控制是否启用资源管理, 类型 为 Boolean ,默认值 为 false ,表示 资源管理 未 启用 ; 只有在设置为 true 时,资源管理选项才可能生效。

 

在 UDH 中,若安装 Llama 服务,则在 Impala 的“服务 操作 ”下拉 菜单 选择“启 用 yarn 资源管理 ”可 自动设置 enable_rm 参数 ,达到启用资源管理的目的。

    

              enable_rm 参数值的 显示 位于 UDH Impala 配置页面“资源管理”配置组下,显示为“启用 yarn 资源管理”。未 启用 yarn 资源 管理时, “启用 yarn 资源管理”显示 为 false ( 如下图 ) 。

 

 

启用 资源管理后, 下面 几个参数 便会生效 :

         -llama_host : Llama 服务所在 的主机名或 IP 地址 ,供 Impala 连接 使用。 默认 值为 127.0.0.1 ;

         -llama_port : Llama 服务 端口,,供 Impala 连接 使用。 默认为 15000 ;

         -llama_callback_port: Impala 启用 Llama 回调 服务的端口。 Llama 从 该服务报告 资源 的批准或优先 占有 。

         -staging_group: YARN 和 Llama 创建已 批准资源的 CGroups 的 路径 , Impala 假设一个 已 分配容器的 CGroup 在目录 'cgroup_hierarchy_path +container_id' 下 创建 。

         -fair_cheduler_allocation_path: fair-scheduler.xml 文件 存放位置 。启用 Llama 后, YARN 默认 使用 fair-scheduler.xml 中 定义 的 调度方式进行资源调度 , fair-scheduler.xml 位于 /etc/impala/conf/ 目录 下 。

 

此时 , “启用 yarn 资源管理”显示 为 true , 同时 ,该配置项下方 将 增加 上述 llama 相关配置信息显示 , 如下 图 所示。

 

启用 资源管理后,可在 执行 impala 查询时 , 自动通过 Llama 服务 进行 yarn 资源调度 , 调度方式 定义 在 fair-scheduler.xml 中 。 UDH 支持 在线修改和保存 fair-scheduler.xml 内容,以修改 Yarn 资源调度方式。

 

 

启动 资源管理后,选择相同位置的 “禁用 yarn 资源管理 ”可以使 资源管理失效 , 即禁用 Llama 服务。

 

Attachments:

Llama使用手册--UDH v1.0.1.pdf (application/pdf)
Llama使用手册--UDH v1.0.1.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)
Llama使用手册--UDH v1.0.1.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)
Llama使用手册--UDH v1.0.1.docx (application/vnd.openxmlformats-officedocument.wordprocessingml.document)