安装前的建议:
- 将vm虚拟机连上网络后,在xshell6中连接ubuntu,然后进行编写,因为xshell6可以直接复制windows代码,如果在ubuntu桌面就必须纯手打代码,无法将外部浏览器的内容复制进去。
- 利用xftp6可以进行windows与linux文件传输,比如在windows系统安装了jdk1.8要上传到linux系统,则需要用到xftp6,(前提也是xftp6要连接到Linux)
- 点我下载xshell6与xftp6
- 如果没有下载xshell6和xftp6也可以完成文件的传输,在windows系统中下载好jdk1.8然后登陆QQ邮箱发送给自己,然后进入ubuntu中的firefox浏览器登陆邮箱进行下载,下载好之后利用linux命令移动到 /usr/local/java(具体目录看jdk安装教程)
一、创建hadoop用户
$ sudo useradd -m hadoop -s /bin/bash #创建hadoop用户,并使用/bin/bash作为shell $ sudo passwd hadoop #为hadoop用户设置密码,之后需要连续输入两次密码 $ sudo adduser hadoop sudo #为hadoop用户增加管理员权限 $ su - hadoop #切换当前用户为用户hadoop $ sudo apt-get update #更新hadoop用户的apt,方便后面的安装
二、安装SSH,设置SSH无密码登陆
$ sudo apt-get install openssh-server #安装SSH server $ ssh localhost #登陆SSH,第一次登陆输入yes $ exit #退出登录的ssh localhost $ cd ~/.ssh/ #如果没法进入该目录,执行一次ssh localhost $ ssh-keygen -t rsa
输入完 $ ssh-keygen -t rsa 语句以后,需要连续敲击三次回车,如下图
其中,第一次回车是让KEY存于默认位置,以方便后续的命令输入。第二次和第三次是确定passphrase,相关性不大。两次回车输入完毕以后,如果出现类似于下图所示的输出,即成功:
然后继续输入:
$ cat ./id_rsa.pub >> ./authorized_keys #加入授权 $ ssh localhost #此时已不需密码即可登录localhost,并可见下图。如果失败则可以搜索SSH免密码登录来寻求答案
在此之前先将jdk安装好
三、安装hadoop-2.6.0
点我下载hadoop-2.7.6.tar.gz
下载好以后进行安装。
(也可以在linux中安装,利用wget \ 命令)
$ sudo tar -zxvf hadoop-2.6.0.tar.gz -C /usr/local #解压到/usr/local目录下 $ cd /usr/local $ sudo mv hadoop-2.6.0 hadoop #重命名为hadoop $ sudo chown -R hadoop ./hadoop
安装好后,在hadoop用户下给hadoop配置环境变量,若用户不是hadoop则输入 su – hadoop切换用户
切换完成后输入 vi /etc/profile(权限要求root)
在文件底部添加
export HADOOP_HOME=/usr/local/hadoop export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
:wq 保存文件后执行source /etc/profile使设置生效。
!这一步容易将PATH路径覆盖,导致linux命令无法使用,所以要小心一点。
安装完成后输入 hadoop version 查看
出现以上图片情况表示hadoop安装完成。
四、伪分布式配置
1、先将jdk1.8的路径添加到hadoop-env.sh中,若权限不够则进入到hadoop-env.sh上级目录后再开始添加。或者输入vi hadoop-env.sh 进入到此文件,在底部添加:export JAVA_HOME=/usr/java/jdk1.8(这是我的路径,若不知道jdk1.8装在哪里,则输入echo $JAVA_HOME 回车查询)然后wq进行保存。
2、接下来修改core-site.xml文件:
<configuration> <property> <name>hadoop.tmp.dir</name> <value>file:/usr/local/hadoop/tmp</value> <description>Abase for other temporary directories.</description> </property> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
wq保存
3、接下来修改配置文件 hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> </configuration>
4、配置完成后,执行 NameNode 的格式化
./bin/hdfs namenode -format
权限不够的话则进入到上一级目录
然后启动namenode和datanode进程,并查看启动结果
$ ./sbin/start-dfs.sh $ jps
启动完成后,可以通过命令 jps 来判断是否成功启动,若成功启动则会列出如下进程: “NameNode”、”DataNode” 和 “SecondaryNameNode”
全部启动成功后,进入ubuntu-Firefox中输入http://localhost:50070,若出现以下画面,则代表hadoop配置成功
——————————————————————————————————————————————————————
额外配置yarn(非必须)
进入到/usr/local/hadoop目录,输入
$ cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
然后修改etc/hadoop/mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
修改etc/hadoop/yarn-site.xml
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
最后启动资源管理器
$ ./sbin/start-yarn.sh $ ./sbin/mr-jobhistory-daemon.sh start historyserver #查看历史任务
ps:这一步可能会有问题,输入./sbin/start-yarn.sh会显示权限不够
则输入 sudo chmod 777 sbin
进行赋权限
777表示最高权限
当所有都配置完成后,输入jps可以看到:
表示配置成功
最后关闭资源管理器
$ ./sbin/stop-yarn.sh $ ./sbin/mr-jobhistory-daemon.sh stop historyserver
原文链接:https://blog.csdn.net/qq_42970173/article/details/88847398