hadoop集群配置、问题解决办法

来源:互联网 发布:软件开发部门经理招聘 编辑:程序博客网 时间:2024/06/14 11:14
概述:hadoop集群,1台namenode,一台secondnamenode,一台jobtracker和台datanode,具体安装方法网上有太多,下面只是自己搭建的实验环境和碰到的问题解决方法。
1、配置ip对应的主机名
/etc/hosts配置namenode和datanode,形如:

192.168.1.1 namenode

192.168.1.2 secondnamenode

192.168.1.3 jobtracker

192.168.1.4 datanode1

192.168.1.5 datanode2

192.168.1.6 datanode3
2、配置java和hadoop环境变量(此处省略),其中hadoop环境可以在namenode里配置好后用命令发布到其它节点
3、配置机器感知
要将hadoop机架感知的功能启用,在namenode所在机器的hadoop-site.xml配置文件中配置一个选项: 

<property>

    <name>topology.script.file.name</name>

    <value>/opt/modules/hadoop/hadoop-1.0.4/conf/RackAware.py</value>

</property>
4、安全模式启动报错
The ratio of reported blocks 1.0000 has reached the threshold 0.9990. Safe mode will be turned off automatically in 18 seconds.
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirsInternal(FSNamesystem.java:2055)
        at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirs(FSNamesystem.java:2029)
        at org.apache.hadoop.hdfs.server.namenode.NameNode.mkdirs(NameNode.java:817)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:563)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1388)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1384)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:396)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1382)
        at org.apache.hadoop.ipc.Client.call(Client.java:1070)
        at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:225)
        at com.sun.proxy.$Proxy1.mkdirs(Unknown Source)
解决办法:
只要在Hadoop的目录下输入:
$bin/hadoop dfsadmin -safemode leave
也就是关闭Hadoop的安全模式,这样问题就解决了。
5、mysql安装后解决办法
vi /usr/my.cnf 
添加skip_grant_tables
sevice mysql restart。
可以查看安全文件,如下:
cat  .mysql_secret文件
6、hive无法运行,原因是没配置hive环境变量
(1)配置hive环境变量
    export HIVE_HOME=/opt/modules/hive/hive-0.10.0/
    export PATH=$PATH:$HIVE_HOME/bin
 (2)将原始安装包文件命名并设置环境变量

   cp /opt/modules/hive/hive-0.9.0/conf/hive-env.sh.template /opt/modules/hive/hive-0.9.0/conf/hive-env.sh

export HADOOP_HEAPSIZE=64 (默认1024,虚拟机内存比较小一定要改掉)

HADOOP_HOME=/opt/modules/hadoop/hadoop-1.0.4/

export HIVE_CONF_DIR=/opt/modules/hive/hive-0.9.0/conf

0 0
原创粉丝点击