Mac M1运行HDP sandbox时Ambari server未在8080端口启动报Bad Gateway
HDP Sandbox在Mac M1设备出现Bad Gateway问题修复方案
根因说明
该问题为架构兼容性问题:官方HDP Sandbox为x86架构镜像,在ARM架构的Mac M1设备上通过Docker Desktop的Rosetta转译运行时,Ambari Server默认端口绑定逻辑失效,未按配置监听8080端口,而是随机分配端口,导致反向代理转发到8080端口时无响应,返回Bad Gateway错误。
相关截图如下:

修复步骤
- 执行命令进入sandbox-hdp容器内部:
docker exec -it sandbox-hdp /bin/bash - 打开Ambari Server主配置文件:
vi /etc/ambari-server/conf/ambari.properties - 找到
client.api.port配置项,将值修改为8080;如果配置文件中不存在该配置项,直接在文件末尾追加一行:client.api.port=8080 - 保存退出文件后,执行命令重启Ambari Server服务:
ambari-server restart - 等待服务启动完成后,执行命令验证端口监听状态:
netstat -tulpn | grep 8080,若容器内无netstat命令,可替换为ss -tulpn | grep 8080,确认返回结果中存在Ambari进程监听8080端口即可 - 若之前启动容器时未配置8080端口映射,需要停止现有容器,重新启动容器时添加端口映射参数:
-p 8080:8080
操作完成后等待2-3分钟,再次访问仪表盘即可正常加载。
内容的提问来源于stack exchange,提问作者Agha Anas
相关产品推荐
相关产品推荐

