这几天应老师要求,在三台机器上搭建hadoop环境与HBase环境,其中遇到不少问题,直到今日才基本运行成功。此处不讨论配置细节,只是把需要注意的问题列出作参考。
三台机器时间同步,防火墙(iptables)关闭
设置hostname。对于Debian,修改/etc/hostname;对于centos,修改/etc/sysconfig/network。
设置/etc/hosts文件。删除其中的127.0.0.1 主机名以及127.0.1.1 主机名(如果有的话);127.0.0.1 localhost可以保留。添加各台机器的IP地址及主机名。
设置每台机器之间的ssh无密码访问。必须保证两两机器之间无密码访问成功。
调整机器的限制。详情见此处(官网)
设置hadoop中的配置文件hadoop-env.sh,需设置JAVA_HOME
hbase中配置文件hbase-env.sh,需设置JAVA_HOME;由于使用自带zookeeper,需要设置HBASE_MANAGES_ZK=true。
core-site.xml、hdfs-site.xml、hbase-site.xml核心文件的配置。相关配置可见此处。
将hadoop与hbase部署到各结点中。注意保持每个节点中的配置文件一致性,以及有效性(比如JAVA_HOME路径,如果机器不同的话需要填写本地的Java路径;还有hdfs与zookeeper的本地存储路径)
先启动hdfs,再启动hbase。
此次搭建后在hbase-hadoop-master-psyDebian.out中以及创建表时都有警告:
是jar包重复问题。但如果我删除了hadoop中的或者hbase中的一个,在启动或停止时hadoop或hbase都会报错。目前并未解决该包重复问题,但似乎并不影响创建表等hbase的使用。