I am trying to install CDH5 on a Ubuntu 12.04 and the install fails each time with "unable to receive agent heartbeat". Firewalls are stopped, ips are ok. The uninstall alsio fails as "rm: cannot remove /var/run/cloudera-scm-agent/process: device or resource busy". Has any of you finish to install CDH5? Were there any more system requirements?
could you please elaborate a bit detail about how to get this fixed?
I am using Centos, and able to ping all the host and 'hostname -f' return correct hostname.
Specifically the networking and security discussion here (along with the requirements for everything else in the parent section of the documentation to this link).
Make sure the hostname is fully qualified domain name and not just hostname.
Make sure the hostname value is not present on the loopback (127.0.0.1) line of the /etc/hosts file
check if you are getting the fqdn for hostname (without the -f). vi /etc/sysconfig/network to double check what the system has
python -c "import socket; print socket.getfqdn(); print socket.gethostbyname(socket.getfqdn())"
and then to verify
getent hosts (ip address returned).
The python command resolves both forward and reverse, the getent hosts (ip address returns) verifies it back to you.
Make sure iptables and selinux are disabled.
Verify what the 'agents' have configured for the CM host in /etc/cloudera-scm-agent/config.ini
There are also many forum posts for CM that discuss agent issues as well to search through.
thanks for the details information. However, I still can't figure it out. (except to reboot the node)
my cluster has three nodes:
the /etc/hosts are identical as:
127.0.0.1 localhost.localdomain localhost
10.122.195.196 hdfs001.demai.com hdfs001
10.122.195.197 hdfs002.demai.com hdfs002
10.122.195.198 hdfs003.demai.com hdfs003
I tested hostname in the following ways:
[ptadm@hdfs001 work-demai]$ hostname
[ptadm@hdfs001 work-demai]$ hostname -f
[ptadm@hdfs001 work-demai]$ python -c "import socket; print socket.getfqdn(); print socket.gethostbyname(socket.getfqdn())"
I turned of selinux, and tested:
$selinuxenabled && echo enabled || echo disabled