没啥事折腾一下装个单节点的,为得是方便学习和调试。
0.jdk安装,很简单在本博可以找到。
(我直接用root玩了,你也可以不这么搞)
在终端窗口里面输入: sudo -s.然后输入普通用户登陆的密码,回车即可进入 root用户权限模式。
然后执行: vim /etc/lightdm/lightdm.conf.
增加 greeter-show-manual-login=true allow-guest=false . 修改完的整个配置文件是
[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
greeter-show-manual-login=true #手工输入登陆系统的用户名和密码
allow-guest=false #不允许guest登录
1.下载hadoop-2.2.0.tar.gz(从Apache官方可以下载)
Hadoop路径配置
$sudo chown kevin:kevin /opt
tar xzvf hadoop-2.2.0.tar.gz
$ mv hadoop-2.2.0 /opt/hadoop
ssh本地互通
sudo apt-get install openssh-client
sudo apt-get install openssh-server
cd /root
ssh-keygen -t rsa -P "" (回车)
$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys用命令验证一下是否可以免密码链接localhost
然后执行以下命令:
$ ssh localhost
全局变量
在/etc/profile的末尾加入:
vim /etc/profile
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
确保可以在任意位置执行hadoop命令。
然后将配置文件启用:
$ source /etc/profile
目录配置
创建Hadoop的数据存储目录,并修改属主权限(我这用的root可以不需要这写)
$ sudo mkdir /hadoop
$ sudo chown krvin:kevin /hadoop
$ mkdir /hadoop/dfs
$ mkdir /hadoop/tmp
配置Hadoop
配置hadoop-env.sh
$ cd /opt/hadoop/etc/hadoop
$ vim hadoop-env.sh
将默认的JAVA_HOME修改为:/opt/jdk1.6.0_35
配置core-site.xml
修改core-site.xml文件:
$cd /opt/hadoop/etc/hadoop
$vim core-site.xml
在<configuration>标签中(即嵌套在该标签中)加入以下内容:
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop/tmp</value>
<description>temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.1.100:9000</value>
<description>The name of the defaultfile system. Either the literal string "local" or a host:port forNDFS.
</description>
<final>true</final>
</property>
更多配置信息,参考:
http://hadoop.apache.org/docs/r2.2.0/hadoop-project-dist/hadoop-common/core-default.xml
配置hdfs-site.xml
修改hdfs-site.xml
$ vim hdfs-site.xml
在<configuration>标签中(即嵌套在该标签中)加入以下内容:
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hadoop/dfs/name</value>
<description>Determineswhere on the local filesystem the DFS name node should store the name table.</description>
<final>true</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hadoop/dfs/data</value>
<description>Determineswhere on the local filesystem an DFS data node should store its blocks.
</description>
<final>true</final>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
更多hdfs-site.xml的配置信息,参考:
http://hadoop.apache.org/docs/r2.2.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml配置mapred-site.xml
默认不存在此文件,需要创建:
$ cp mapred-site.xml.template mapred-site.xml
$ vim mapred-site.xml
在<configuration>标签中(即嵌套在该标签中)加入以下内容:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapred.system.dir</name>
<value>file:/hadoop/mapred/system</value>
<final>true</final>
</property>
<property>
<name>mapred.local.dir</name>
<value>file:/hadoop/mapred/local</value>
<final>true</final>
</property>
配置yarn-site.xml
执行以下命令:
$ vim yarn-site.xml
在<configuration>标签中(即嵌套在该标签中)加入以下内容:
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
<description>shuffle service that needsto be set for Map Reduce to run </description>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>192.168.1.100</value>
<description>hostanem of RM</description>
</property>
yarn.resourcemanager.hostname配置后,其他端口号将使用默认。详见:
http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-common/yarn-default.xml初始化
格式化NameNode:
$ hdfs namenode -format
启动DFS
$ hadoop-daemon.sh start namenode
$ hadoop-daemon.sh start datanode
使用jps查看进程是否启动
$ jps
并在以下网页检查:
http://localhost:50070/dfshealth.jsp
启动Yarn
$ yarn-daemon.sh start resourcemanager
$ yarn-daemon.sh start nodemanager
异常处理
$ rm -rf /hadoop/dfs/*
$ rm -rf /hadoop/tmp/*
$ hdfs namenode -format
转载于:https://blog.51cto.com/minghuang/1355014