Hadoop2.6.0伪分布式搭建
环境:
1、Ubuntu14.04
首先要在linux系统上新建一个账户,比如就叫做hadoop,用于专门运行hadoop。
2、配置jdk
我是使用的版本是jdk1.8。
解压:创建/usr/java目录,把下载好了的linux版本的jdk解压到次目录下。
环境变量配置:
命令sudo vim /etc/profile
在文件末端添加如下内容
保存退出后执行 source /etc/profile更新配置。然后执行java -version如果有如下信息就表示jdk配置成功。
3 配置ssh免密码登录:
首先是下载安装openssh-server服务,执行如下命令:
sudo apt-get install openssh-server
输入如下图命令,就可以配置好ssh免密码登陆了,不过注意一点是第一行命令改成:
ssh-keygen -t rsa
一路回车就行了
这样会在/home/当前用户(比如我的是/home/hadoop)目录产生一个新的目录叫 .ssh,进入发现多了两个文件分别是id_rsa和id_rsa.pub,分别是RSA的私钥和公钥,然后执行如下命令:
cat id_rsa.pub>>authorized_keys
把公钥内容复制并且添加进authorized_keys文件(设置本机ssh免密码登录)
4、hadoop配置
将下载的hadoop2.6.0安装包解压到/usr/local目录下,并且重命名为hadoop。
修改hadoop目录的权限
sudo chown -R hadoop ./hadoop
进入hadoop/etc/hadoop目录,ls一下能看到如下这些配置文件:
下面挨个配置:
hadoop-env.sh配置
下图用红框框住的一行,“=”之后是你的jdk的绝对路径(我后来把jdk改成1.8了,这个版本仅供参考,大家按照自己系统的具体情况写就好了)。
hdfs-site.xml配置
<property> <name>dfs.permissions</name> <value>false</value> </property> <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>
core-site.xml
<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://master:9000</value> </property>
mapred-site.xml
<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapred.job.tracker</name> <value>master:9001</value> </property> <property> <name>mapred.local.dir</name> <value>/usr/local/hadoop/mapred/local</value> </property> <property> <name>mapred.system.dir</name> <value>/tmp/hadoop/mapred/system</value> </property>
yarn-site.xml
<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property>
这就大功告成了。