Ambari-Web-3.0.0本地启动与二开环境搭建
目前 Kerberos 章节已经推出 FreeIPA 方案,欢迎有需要的查阅,本站也将完成内容迁移。Ttbigdata——Ambari Kerberos 大全

一、开发环境与工具说明
本文以 Ambari 3.0.0 为目标版本,介绍 Ambari-Web 的本地启动流程。
1、IDE 与开发方式选择
这里使用 WebStorm 作为 Ambari-Web 二次开发的主要 IDE,原因如下:
- 对 Node / Yarn / NVM 支持完善
- 对前端项目运行配置友好
- 日志、断点、控制台集成度高
说明
Ambari-Web 本质是一个 Ember.js 前端工程,与 ambari-server 后端解耦,
本地启动不依赖 Java、Maven 或 Ambari Server。
二、获取 Ambari-Web 源码
1、源码仓库说明
Ambari 官方仓库地址:
https://github.com/apache/ambari 本文不再赘述 Git Clone 的基础操作。
2、选择 3.0.0 Release 版本
优先选择 Release 包,而非 master 分支:
https://github.com/apache/ambari/releases/tag/release-3.0.0 
三、打开 Ambari-Web 子工程
1、目录选择原则
下载并解压完成后,不要直接打开 Ambari 根目录。
在 WebStorm 中,只需要选择:
ambari/ambari-web 
原因说明
Ambari 根目录同时包含:ambari-server(Java)ambari-agent(Python)ambari-web(前端)
前端二开只需要 ambari-web,避免 IDE 索引大量无关内容。
四、Node 与 Yarn 环境准备
1、Node 版本选择
这里使用 nvm 管理 Node 版本。
nvm install18 nvm use 18注意
Ambari-Web 对 Node 版本较敏感,Node 20+ 在部分依赖场景下会触发构建异常,
建议直接使用 Node 18 LTS。
2、启用 corepack 与 Yarn
corepack enablenpminstallyarn -g 3、配置国内镜像(强烈建议)
yarn config set registry https://registry.npmmirror.com npm config set registry https://registry.npmmirror.com 4、清理历史依赖并安装
rm -rf node_modules rm -f yarn.lock yarninstall --ignore-engines yarn config set ignore-engines true说明
Ambari-Web 的部分依赖声明较老,--ignore-engines是必要操作,否则极易卡在依赖校验阶段。
五、WebStorm 启动配置
1、运行配置参数
在 WebStorm 的 Run / Debug Configuration 中新增 Node.js 配置:
- Command:
run - Scripts:
start - Node runtime:选择 nvm 中的 Node 18
- Package manager:选择 nvm 安装的 yarn

2、启动 Ambari-Web
配置完成后,直接点击运行。

六、访问本地 Ambari-Web
启动成功后,默认监听端口为:
http://localhost:3333 到这里说明
Ambari-Web 已经可以:正常编译本地热更新断点调试 Ember 逻辑