安装过程主要参考参考https://blog.youkuaiyun.com/hliq5399/article/details/78193113及一些其他资料,感谢。
1.Linux安装
2.Jdk安装,配置环境变量
添加环境变量有2种方法:
//1,使用export命令
export PATH=$PATH:/opt/software/node-v8.9.3-linux-x64/bin/node
//export使用方法为 export PATH=$PATH:路径1:路径2:路径n;$PATH为系统变量,表示之前所有设置的路径,如果不加则之前所有的路径都失效。所以必须加上。
//2,修改配置文件/etc/profile
vi /etc/profile
在里面加入:export PATH=$PATH:/opt/software/node-v8.9.3-linux-x64/bin/node
//如果是修改用户主目录下的.bash_profile,则添加的环境变量只对该用户有效,修改/etc/profile对所有用户都生效。也可以修改/etc/rc.local文件和/root/.bashrc文件。
//修改好配置文件后执行source /etc/profile 或者 source /root/.bashrc使配置文件生效
3.本地模式部署
Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found.
解决办法:
修改/etc/hadoop/hadoop-env.sh中设JAVA_HOME。
应当使用绝对路径。
export JAVA_HOME=$JAVA_HOME //错误,不能这么改
export JAVA_HOME=/usr/java/jdk1.6.0_45 //正确,应该这么改
4.伪分布模式
(1)创建用户问题,改写sudoers 给新建用户sudo权限
(2)配置安装完成后 jsp未正常显示,但hadoop管理网站可以连接,
原因是java程序启动以后,会在/tmp目录下生成一个hsperfdata_username的文件夹,这个文件夹的文件,就是以java进程的pid命名。因此使用jps查看当前进程的时候,其实就是把/tmp/hsperfdata_username中的文件名遍历一遍之后输出。如果/tmp/hsperfdata_username的文件所有者和文件所属用户组与启动进程的用户不一致的话,在进程启动之后,就没有权限写/tmp/hsperfdata_username,所以/tmp/hsperfdata_username是一个空文件,理所当然jps也就没有任何显示。检查hadoop目录权限是否为当前用户。
----------
(3)启动yarn后运行wordcount实例错误,不断重试连接
解决方法 mapred-site.xml下将
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
改成
<property>
<name>mapreduce.job.tracker</name>
<value>hdfs://192.168.1.120:8001</value>
<final>true</final>
</property>
其中ip是master地址
5.其他
http://localhost:50070/windows访问不了 Linux可以
localhost改为linux地址
重新初始化要删除原有文件