ambari部署 hadoop 集群报错 -- 注册主机失败
·

基本排查
-
- 确认Ambari服务器是否正在运行
确保Ambari服务器已经启动,并且监听在正确的端口上。
- 确认Ambari服务器是否正在运行
# 检查Ambari服务器状态
systemctl status ambari-server
# 检查监听端口
netstat -tulnp | grep 8080
-
- 测试与Ambari Web界面的连接
使用curl或浏览器来测试与Ambari Web界面的连接,而不是ping。
- 测试与Ambari Web界面的连接
# 使用curl测试连接
curl -I http://192.168.23.130:8080
如果返回的是HTTP响应头信息,比如HTTP/1.1 200 OK,则说明Ambari Web界面是可以访问的。
-
- 检查防火墙设置
确保防火墙允许HTTP (80) 和 Ambari Web界面使用的端口 (8080) 的流量。
- 检查防火墙设置
# 检查防火墙状态
sudo firewall-cmd --list-all
# 如果需要,添加规则以允许8080端口
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
-
- 检查SSH无密码登录配置
确保从Ambari服务器到所有节点的SSH无密码登录配置正确。
- 检查SSH无密码登录配置
# 测试SSH无密码登录到其他节点
ssh root@slave1
ssh root@slave2
-
- 检查日志文件
查看Ambari服务器的日志文件,寻找任何可能的错误信息。
- 检查日志文件
# 查看Ambari服务器日志
tail -f /var/log/ambari/ambari-server.log
-
- 验证主机之间的网络连通性
确保所有主机之间可以互相通信,包括通过主机名和IP地址。
- 验证主机之间的网络连通性
# 从master ping slave1和slave2
ping slave1
ping slave2
# 或者使用IP地址
ping <slave1_ip>
ping <slave2_ip>
# 从slave1和slave2 ping master
ssh root@slave1 "ping master"
ssh root@slave2 "ping master"
-
- 确认主机名解析
确保所有主机可以通过主机名相互解析,这通常涉及到/etc/hosts文件或者DNS设置。
- 确认主机名解析
# 在每台主机上检查/etc/hosts文件
cat /etc/hosts
确认/etc/hosts文件中包含如下行(根据实际情况调整):
192.168.23.130 master
<slave1_ip> slave1
<slave2_ip> slave2
问题1:没有安装Ambari Agent
三台
# 安装Ambari Agent
yum install ambari-agent -y
systemctl start ambari-agent
systemctl enable ambari-agent
# 检查Ambari Agent状态
systemctl status ambari-agent
问题2:配置文件问题
# 备份原始配置文件
cp /etc/ambari-agent/conf/ambari-agent.ini /etc/ambari-agent/conf/ambari-agent.ini.bak
# 编辑配置文件
vi /etc/ambari-agent/conf/ambari-agent.ini
修改 hostname: 将 hostname=localhost 修改为 hostname=192.168.23.130
[server]
#hostname=localhost
hostname=192.168.23.130 # 修改为实际的 IP 地址或主机名
url_port=8440
secured_url_port=8441
connect_retry_delay=10
max_reconnect_retry_delay=30
# 重启 Ambari agent 服务
systemctl restart ambari-agent
# 验证 Ambari agent 状态
systemctl status ambari-agent
问题3:ssh问题

==========================
Creating target directory...
==========================
Command start time 2024-12-12 11:27:30
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
SSH command execution finished
host=master, exitcode=255
Command end time 2024-12-12 11:27:30
ERROR: Bootstrap of host master fails because previous action finished with non-zero exit code (255)
ERROR MESSAGE: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
STDOUT:
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).
-
查看hostname是否改成本机的主机名;
vim /etc/ambari-agent/conf/ambari-agent.ini
输入hostname即可知道自己主机的hostname -
中文和英文操作系统版本问题,中文操作系统出错,英文则成功;
centos6:
修改vim /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
centos7:
修改vim /etc/locale.conf
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"
更多推荐




所有评论(0)