共计 6674 个字符,预计需要花费 17 分钟才能阅读完成。
个人历时 3 天遭遇各种问题才安装好,虽然网上很多教程,但是还是自己写一个总结一下
1.实验环境
Ubuntu12.04
Hadoop1.2.1
Java1.6.0_13
2.实验准备
1. 在所有机器上安装 ubuntu12.04,过程不赘述。
在安装过程中命名所有的用户名是 hadoop,机器名分别为 minglaihan,node1,node2,其中 minglaihan 作为主节点,其他两个是从节点。
2. 在所有机器上执行:
sudo gedit etc/hosts
添加如下地址:
192.168.1.104 minglaihan
192.168.1.109 node1
192.168.1.110 node2
3. 保证你的用户拥有 root 级别
用 gedit 或者 vim,
sudo gedit etc/sudoers
在 root ALL=(ALL:ALL) ALL 下添加 hadoop ALL=(ALL:ALL) ALL。
3.安装过程
安装 java
三台机器上都执行:
指令:cd ~/java
unzip jdk-6u13-linux-i586.zip
chmod +x jdk-6u13-linux-i586.bin
sudo ./ jdk-6u13-linux-i586.bin
接下来按 Enter 以及 yes 就可以了
Java 安装好之后,在 bash.bashrc 里添加 java 路径
sudo gedit etc/bash.bashrc
添加:export JAVA_HOME=/home/hadoop/java/jdk1.6.0_13
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
然后就可以查看 java –version。
安装 ssh
三台机器上都执行:
sudo apt-get install ssh
安装完成后执行 ssh localhost 即可登录自身的 ssh,
exit 退出
配置 ssh 无密码登陆
Ssh 的一个重要特点就是可以远程访问,接下来我们实现相互访问不需要密码。
在所有机器上执行:
cd ~/.ssh
ssh-keygen -t rsa -P“”之后一直按回车,然后可以看见提示生成密钥。
将 id_rsa.pub 追加到 authorized_keys 授权文件中
cat id_rsa.pub >> authorized_keys
然后在主节点 minglaihan 上执行:
进入 /home/hadoop/.ssh 目录中,复制 authorized_keys 到 node1 的.ssh 文件夹中
scp authorized_keys hadoop@node1:/home/hadoop/.ssh
scp authorized_keys hadoop@node2:/home/hadoop/.ssh
接下来使用 ssh node1 和 ssh node2 就可以无密码访问了
安装 hadoop
首先在所有机器上执行解压缩操作
tar zxvf hadoop-1.2.1.tar.gz
然后开始修改 hadoop/conf 里面的配置文件
① core-sie.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-1.2.1/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://minglaihan:9000</value>
<description>
The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uri’s scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri’s authority is used to determine the host, port, etc. for a filesystem.
</description>
</property>
</configuration>
② hadoop-env.sh
添加:export JAVA_HOME=/home/hadoop/java/jdk1.6.0_13
接下来请看第 2 页精彩内容:http://www.linuxidc.com/Linux/2013-10/91991p2.htm
相关阅读:
Hadoop 2.0 安装向导 (0.23.x) http://www.linuxidc.com/Linux/2012-05/61463.htm
Hadoop 1.2.1 单节点安装 (Single Node Setup) 步骤 http://www.linuxidc.com/Linux/2013-08/89377.htm
在 CentOS 上安装 Hadoop http://www.linuxidc.com/Linux/2013-08/88600.htm
Ubuntu 12.04 安装 Hadoop http://www.linuxidc.com/Linux/2013-08/88187.htm
CentOS 6.3 x86_64 安装与配置 Hadoop-1.0 http://www.linuxidc.com/Linux/2013-07/87959.htm
Hadoop 入门 –Hadoop2 伪分布式安装 http://www.linuxidc.com/Linux/2013-06/86403.htm
③ hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
<description>
Default block replication. The actual number of replications can be specified when the file is created. The default is used if replication is not specified in create time.
</description>
</property>
<property>
<name>dfs.name.dir</name>
<value>/home/Hadoop/hadoop-1.2.1/hdfs/name</value>
<description>
</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hadoop-1.2.1/hdfs/data</value>
<description>
</description>
</property>
</configuration>
④ mapred-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
<description>
Default block replication. The actual number of replications can be specified when the file is created. The default is used if replication is not specified in create time.
</description>
</property>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/hadoop-1.2.1/hdfs/name</value>
<description>
</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/hadoop-1.2.1/hdfs/data</value>
<description>
</description>
</property>
</configuration>
⑤ master
minglaihan
⑥ slaves
node1
node2
启动 hadoop
cd ~/hadoop-1.2.1
首先格式化 namenode
bin/hadoop namenode –format
然后启动所有节点
bin/start-all.sh
用 jps 查看当前 hadoop 启动的进程
jps
如果如果有 Namenode,SecondaryNameNode,TaskTracker,DataNode,JobTracker,Jps 六个进程表示已经启动成功。
当然我在这一步卡了很久,始终有各种各样的问题,在这个过程中也会学到很多,所以遇到有 namenode 或者 datanode 没启动,主要的处理方法就是清除 tmp 和 logs 文件夹,然后每次格式化后查看 logs,根据报错查找问题。
stop-all.sh 停止所有进程
此时在浏览器中查看 minglaihan:50030, 可以看到 hadoop 的 mapreduce 管理界面
wordcount 测试
在 home 主目录下创建一个装有无数单词的文本,例如 test.txt
将 test.txt 传输到 hdfs 系统的 input 里,
bin/hadoop fs -copyFromLocal home/hadoop/test.txt input
在 hadoop 文件夹下执行:
hadoop jar hadoop-examples-1.2.1.jar wordcount input output
将输出结果传到 output 里
此时 mapreduce 会显示执行信息,执行完毕后,用指令查看
hadoop fs –cat output/part-r-00000
显示计算单词结果
至此,hadoop 环境基本安装,期间遇到各种问题不要放弃。。。
更多 Ubuntu 相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13
个人历时 3 天遭遇各种问题才安装好,虽然网上很多教程,但是还是自己写一个总结一下
1.实验环境
Ubuntu12.04
Hadoop1.2.1
Java1.6.0_13
2.实验准备
1. 在所有机器上安装 ubuntu12.04,过程不赘述。
在安装过程中命名所有的用户名是 hadoop,机器名分别为 minglaihan,node1,node2,其中 minglaihan 作为主节点,其他两个是从节点。
2. 在所有机器上执行:
sudo gedit etc/hosts
添加如下地址:
192.168.1.104 minglaihan
192.168.1.109 node1
192.168.1.110 node2
3. 保证你的用户拥有 root 级别
用 gedit 或者 vim,
sudo gedit etc/sudoers
在 root ALL=(ALL:ALL) ALL 下添加 hadoop ALL=(ALL:ALL) ALL。
3.安装过程
安装 java
三台机器上都执行:
指令:cd ~/java
unzip jdk-6u13-linux-i586.zip
chmod +x jdk-6u13-linux-i586.bin
sudo ./ jdk-6u13-linux-i586.bin
接下来按 Enter 以及 yes 就可以了
Java 安装好之后,在 bash.bashrc 里添加 java 路径
sudo gedit etc/bash.bashrc
添加:export JAVA_HOME=/home/hadoop/java/jdk1.6.0_13
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
然后就可以查看 java –version。
安装 ssh
三台机器上都执行:
sudo apt-get install ssh
安装完成后执行 ssh localhost 即可登录自身的 ssh,
exit 退出
配置 ssh 无密码登陆
Ssh 的一个重要特点就是可以远程访问,接下来我们实现相互访问不需要密码。
在所有机器上执行:
cd ~/.ssh
ssh-keygen -t rsa -P“”之后一直按回车,然后可以看见提示生成密钥。
将 id_rsa.pub 追加到 authorized_keys 授权文件中
cat id_rsa.pub >> authorized_keys
然后在主节点 minglaihan 上执行:
进入 /home/hadoop/.ssh 目录中,复制 authorized_keys 到 node1 的.ssh 文件夹中
scp authorized_keys hadoop@node1:/home/hadoop/.ssh
scp authorized_keys hadoop@node2:/home/hadoop/.ssh
接下来使用 ssh node1 和 ssh node2 就可以无密码访问了
安装 hadoop
首先在所有机器上执行解压缩操作
tar zxvf hadoop-1.2.1.tar.gz
然后开始修改 hadoop/conf 里面的配置文件
① core-sie.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-1.2.1/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://minglaihan:9000</value>
<description>
The name of the default file system. A URI whose scheme and authority determine the FileSystem implementation. The uri’s scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri’s authority is used to determine the host, port, etc. for a filesystem.
</description>
</property>
</configuration>
② hadoop-env.sh
添加:export JAVA_HOME=/home/hadoop/java/jdk1.6.0_13
接下来请看第 2 页精彩内容:http://www.linuxidc.com/Linux/2013-10/91991p2.htm
相关阅读:
Hadoop 2.0 安装向导 (0.23.x) http://www.linuxidc.com/Linux/2012-05/61463.htm
Hadoop 1.2.1 单节点安装 (Single Node Setup) 步骤 http://www.linuxidc.com/Linux/2013-08/89377.htm
在 CentOS 上安装 Hadoop http://www.linuxidc.com/Linux/2013-08/88600.htm
Ubuntu 12.04 安装 Hadoop http://www.linuxidc.com/Linux/2013-08/88187.htm
CentOS 6.3 x86_64 安装与配置 Hadoop-1.0 http://www.linuxidc.com/Linux/2013-07/87959.htm
Hadoop 入门 –Hadoop2 伪分布式安装 http://www.linuxidc.com/Linux/2013-06/86403.htm