Cloudera Alert: Random server entropy

The Issue : 


 Cloudera Manager keeps throwing exceptions like below on a particular host, against all the services running on that host

The health test result for IMPALAD_HOST_HEALTH has become bad: The health of this role's host is bad. The following health tests are bad: entropy.

The health test result for NODE_MANAGER_HOST_HEALTH has become bad: The health of this role's host is bad. The following health tests are bad: entropy.

What is Entropy in Linux



 Entropy is the measure of the random numbers available from /dev/urandom, and if you run out, you can’t make SSL connections. To check the status of your server’s entropy , just run the following command


How to check available entropy in Linux

# cat /proc/sys/kernel/random/entropy_avail
[user@hostname$ cat /proc/sys/kernel/random/entropy_avail
151

Inference 


If it returns anything less than 100-200, you have a problem.

How to fix


 Option 1 : Installing rng-tools and adding a variable


1. Install the tool
 sudo apt-get -y install rng-tools
or yum install rng-tools
2.Then, edit the file /etc/default/rng-tools
nano /etc/default/rng-tools
and this to the bottom of the file
HRNGDEVICE=/dev/urandom

3.sudo /etc/init.d/rng-tools restart 

Option 2: Try generating I/O

   Generate random I/O like large find operations. Linux normally uses keyboard and mouse input to generate entropy on systems without random number generators, and this isn’t very handy for dedicated servers.

[user@hostname$ find / -name *.py -ls

[user@hostname$ cat /proc/sys/kernel/random/entropy_avail
536

For more  details on entropy and random : https://www.2uo.de/myths-about-urandom/

Comments

Popular Posts