Livy 安装Livy 是 Spark 的 REST 服务入口。它不会替代 Spark History Server也不会自己负责资源调度它的作用更像一个网关外部系统通过 HTTP 提交 Spark Session、Statement 或批任务Livy 再把任务交给 Spark on YARN。我会把 Livy 放在 Spark 后面安装。前面已经完成 HDFS、YARN、Hive、Spark并且集群已经开启 Kerberos所以 Livy 安装时重点看三件事LIVY_SERVER放在哪台机器、Livy 是否继续使用 YARN cluster 模式、Kerberos 凭据是否能正常生成。本次角色分配如下主机Livy 角色hadoop1.test.comLIVY_SERVERhadoop2.test.com无 Livy 组件hadoop3.test.com无 Livy 组件Livy 不需要单独的元数据库也没有 Slave / Client 组件。第一次安装建议单独勾选 Livy不要和 Zeppelin、Superset、Atlas 这类组件混在一个向导里安装排查会更清楚。1. 选择 Livy 服务进入服务与组件点击新增服务在增强组件列表里勾选Livy。页面会显示 Livy 依赖HDFS、YARN、Spark。如果这三个服务没有先装好Livy 即使能进入向导后面启动和作业提交也容易失败。本篇环境里三项依赖都已经运行中勾选 Livy 后直接点击下一步。2. 分配 Livy ServerMaster 分配页里Livy 只有一个常驻角色LIVY_SERVER。本次把它放在hadoop1.test.com组件主机说明LIVY_SERVERhadoop1.test.com提供 Spark REST 会话与任务提交入口。小集群里把 Livy 放在主节点比较直观后续接 Knox 或外部 Notebook 时也方便定位入口。生产环境如果 Livy 会承载大量并发 Session可以再规划独立节点和反向代理。3. 确认没有 Slave 和 ClientLivy 在这套栈里没有 Slave 组件也没有 Client 组件。这一页看到无 Slave 组件需要分配、无 Client 组件本步骤自动跳过就可以继续。Livy 的可用性主要取决于 Server 端配置、Spark 依赖和 Kerberos 凭据。4. 检查 Livy 核心配置进入自定义配置页后先确认顶部状态待填写 0。这说明安装向导已经把必填项补齐。这一屏先看端口和恢复目录配置项本次示例值说明livy.server.port8999Livy Server 的 HTTP 端口。livy.server.host{{livy_server_host}}由安装向导根据 Master 分配自动渲染。livy.server.recovery.moderecovery开启会话恢复。livy.server.recovery.state-storefilesystem使用文件系统保存恢复信息。livy.server.recovery.state-store.url/apps/livy/recovery恢复状态存放路径。继续往下看 Spark 运行模式这里我会重点确认这几项配置项本次示例值说明livy.spark.masteryarnLivy 提交 Spark 作业时走 YARN。livy.spark.deploy-modeclusterDriver 运行在 YARN 集群中。livy.impersonation.enabledtrue允许按提交用户进行代理。livy.superusersknox给 Knox 代理入口预留超级用户能力。livy.ui.basePath/gateway/default/livy后续接 Knox 时使用的路径。第一次安装先保留推荐值。等 Livy 跑通后再根据实际使用方式调整 Session 超时、并发会话数、黑名单配置和 Knox 代理路径。5. 确认安装清单确认页会汇总本次新增服务、角色分配和配置校验结果。本次确认结果如下检查项本次结果新增服务LIVYMaster 分配LIVY_SERVER - hadoop1.test.comSlave 分配无Client 分配无配置校验必填项已填写确认无误后点击开始安装。6. 提交 Kerberos 授权并等待完成开启 Kerberos 的集群中新增 Livy 会要求提交 KDC 管理员凭据。这里填写的是 KDC 管理员 Principal 和密码用于生成 Livy 的 principal / keytab不是 Ambari 登录密码也不是某个组件数据库密码。提交凭据后向导会继续执行安装、凭据分发和服务启动。安装完成时可以看到LIVY已成功安装。如果这一步失败我会优先看两类问题现象常见原因处理方向KDC 凭据提交失败Principal 或密码不对重新确认 KDC 管理员账号。Livy Server 启动失败Spark、YARN、HDFS 客户端配置未就绪回到前面组件检查服务状态和 Kerberos keytab。7. 回到服务列表确认状态回到服务与组件页面Livy 会出现在资源计算分类下。页面里可以看到组件状态Livy Server运行中在服务端也可以确认 8999 端口已经监听ss-lntp|grep8999正常会看到hadoop1.test.com对应地址上的8999处于监听状态进程名为java。到这里Livy 的基础安装完成。下一篇可以继续安装 Zeppelin把 Notebook 入口接到已经跑通的 HDFS、YARN、Spark 和 Livy 之上。