Hadoop and hbase are almost the first time in use, so various problems are inevitable throughout the process. I have solved all the errors I have encountered, and the number of problems has increased.ArticleAnd then gradually increase. In the use of hadoop and hbase, log analysis is an essential part and is critical to solving the problem.
1. time synchronization between PCs (hbase)
Fatal Org. apache. hadoop. hbase. regionserver. hregionserver: Master rejected startup because clock is out of syncorg. apache. hadoop. hbase. clockoutofsyncexception: Org. apache. hadoop. hbase. clockoutofsyncexception: Server suc-PC, 60020,1363269953286 has been rejected;Reported time is too far out of sync with Master. Time Difference of 39375 MS> MAX allowed of 30000 ms
A small problem. At first glance, you will know where the error occurred. In hbase, a small time deviation is allowed, but the time deviation of 39 seconds is a little large. If you are connected to the Internet, you can use ntpdate219.158.14.130.219.158.14.130 is the time server of China Netcom Beijing. If not, you can use another server for synchronization.
2. zookeeper server is not set or/etc/hosts is set incorrectly (hbase)
19:41:08, 263 info org. Apache. zookeeper. clientcnxn: Opening socket connection to server localhost/127.0.0.1: 2181. Will not attempt to authenticate using SASL (unknown error)2013-03-11 19:41:08, 266 warn org. Apache. zookeeper. clientcnxn: Session 0x0 for server null, unexpected error,Closing socket connection and attempting reconnectjava.net. connectexception: reject connection at Sun. NiO. Ch. socketchannelimpl. checkconnect (native method) at Sun. NiO. Ch. socketchannelimpl. finishconnect (socketchannelimpl. Java:692) At org. Apache. zookeeper. clientcnxnsocketnio. dotransport (clientcnxnsocketnio. Java:350) At org. Apache. zookeeper. clientcnxn $ sendthread. Run (clientcnxn. Java:1068)
the appearance of this problem is accompanied by a very strange phenomenon. When start-all is started on the PC where the master is located, all regionservers are started. However, if you view masterip: 60010 , you will find that other regionservers are not started, and there is only one regionserver. Because a regionserver is already alive, hbase can still be used, which will confuse you. After you view the logs of other machines, you will find the above errors. Zookeeper was positioned at 127.0.0.1, Which is unscientific. Finally, you can see that the default local zookeeper server (used on a single machine) is set to hbase. zookeeper. Quorum ). This is simple. You only need to add this attribute.
<Property><Name>Hbase. zookeeper. Quorum</Name><Value>10.82.58.213</Value></Property>
At the same time, it is also found that a similar problem occurs if/etc/hosts is set incorrectly. In/etc/hosts, both localhost and local PC names must be 127.0.0.1, because the local PC name is 127.0.1.1 by default.
Reference: http://mail-archives.apache.org/mod_mbox/hbase-user/201106.mbox/%3CBANLkTimCgHr-1MDtdo3NETZMrQXkBJy=dA@mail.gmail.com%3E