ambari 丢失节点排查修复
ambari 丢失节点问题
ambari
由于运维失误覆盖了hosts
文件跟重启机器, 集群丢失了一个节点, 问题排查
- 查看该节点
ambari-agent
服务正常, log 也没什么异常, restart 服务也正常 - 删除历史 log, restart 服务, 从头查看 log, 发现一条
Host system information:
log 描述该机器详细属性的如下
{'kernel': 'Linux', 'domain': '', 'physicalprocessorcount': 24, 'kernelrelease': '3.10.0-862.2.3.el7.x86_64',
'uptime_days': '356', 'memorytotal': 57548684, 'swapfree': '0.00 GB', 'memorysize': 57548684,
'osfamily': 'redhat', 'swapsize': '0.00 GB',
'processorcount': 24, 'netmask': '255.255.192.0',
'timezone': 'CST', 'hardwareisa': 'x86_64',
'memoryfree': 918436,
'operatingsystem': 'centos', 'kernelmajversion': '3.10',
'kernelversion': '3.10.0',
'macaddress': '52:54:00:2C:41:01',
'operatingsystemrelease': '7.5.1804'
'hostname': '_hostname_',
....
发现该
hostname
数据成了系统hosts
文件中的配置的一个域名, 这就不对了 根据以前的非 root 安装 ambari 集群踩过的坑, ambari 自动获取 hostname 的 py 脚本有很多坑
- 使用上次爬坑经验来解决该问题,
ambari-agent.ini
配置文件可以指定自定义的获取hostname
脚本
ambari-agent 配置
... [agent] logdir=/var/log/ambari-agent piddir=/var/run/ambari-agent prefix=/var/lib/ambari-agent/data #### 自定义 hostname 脚本 hostname_script=/etc/ambari-agent/hostname.sh ;loglevel=(DEBUG/INFO) loglevel=INFO ...
hostname 脚本
#!/bin/bash echo "hostname-001"