fedora18安装hadoop配置伪分布模式

一、安装配置java
1.下载rpmd对应版本
2.安装sudo yum 安装文件路径,安装后在fedora18下安装后路径在/usr/java下,目前sun的java最高版本1.7.0_21
3.配置环境变量
打开文件sudo gedit /etc/profile
4.添加内容,在unset i一句话上面,注意里面的配置需要和系统中实际路径配合,所以有时候按照网上方法就会配置失败
export JAVA_HOME=/usr/java/default
export JRE_HOME=/user/java/latest
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
5.注意一点,这个配置只对当前用户起效
二、配置SSH
SSH简介http://baike.baidu.com/view/16184.htm#sub5909252
1.确认是否已安装ssh服务
rpm -qa | grep openssh-server
2.安装sudo yum install openssh-server
3.启动服务sudo service sshd status
4.停止服务sudo service sshd stop
5.设置系统启动时开启服务# systemctl enable sshd.service
6.开启防火墙22端口(运行时配置和永久配置)
7.查看用户是否有ssh文件夹
ls -a /home/用户名
8.ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
~代表当前用户文件夹,ssh-keygen代表生成密钥;-t(注意区分大小写)表示指定生成的密钥类型;dsa是dsa密钥认证的意思,即密钥类型;-P用于提供密语;-f指定生成的密钥文件。这个命令会在.ssh文件夹下创建id_dsa及id_dsa.pub两个文件,这是SSH的一对私钥和公钥,类似于钥匙和锁.
9.把id_dsa.pub(公钥)追加到授权的key中去
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

这条命令的功能是把公钥加到用于认证的公钥文件中,这里的authorized_keys是用于认证的公钥文件。

10.修改/etc/ssh/sshd_config
找到以下内容,并去掉注释符"#"
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys
然后重启服务
11.修改文件authorized_keys的权限
chmod 600 /home/用户名/.ssh/authorized_keys

12.验证面密码登录本机
ssh localhost
出现下面的语句就表示成功了
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
在询问时回答yes注意区分大小写
如果曾经操作过此过程,但是没有起到效果,可以将.ssh文件夹清空再操作一次即可了
三、安装hadoop
1.使用rpm安装时会出现系统文件冲突,所以下载tar的版本
现在稳定版建议使用1.1.2作为生产环境搭建基础
研究和学习新一代的技术建议使用2.0.4版本
2.0以上版本采用了新的并行计算框架yarn,性能以及功能都有极大提高.
3.访问网址http://hadoop.apache.org/
4.下载
北京交通大学的镜像站,开源软件均可下载
 http://mirror.bit.edu.cn/apache/hadoop/common/stable/hadoop-1.1.2-1.x86_64.rpm
 http://mirror.bit.edu.cn/apache/hadoop/common/stable/hadoop-1.1.2.tar.gz
5.解压缩即可
四、hadoop配置
1.a. 单机模式. 单机模式是Hadoop的默认模。当配置文件为空时,Hadoop完全运行在本地。因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程。该模式主要用于开发调试MapReduce程序的应用逻辑。
b. 伪分布模式. Hadoop守护进程运行在本地机器上,模拟一个小规模的的集群。该模式在单机模式之上增加了代码调试功能,允许你检查内存使用情况,HDFS输入输出,以及其他的守护进程交互。
c. 全分布模式. Hadoop守护进程运行在一个集群上。
2.单机模式无需配置
3.伪分布模式配置
(1)修改hadoop-env.sh的如下内容:
             export JAVA_HOME=/usr/java/jdk1.7.0_21
(2)配置的是HDFS(Hadoop的分布式文件系统)的地址及端口号。注意更改防火墙
conf/core-site.xml:
<configuration>
     <property>
         <name>fs.default.name</name>
         <value>hdfs://localhost:9000</value>
     </property>
<property>        如果不配置的话每次重启电脑都需要格式化
         <name>hadoop.tmp.dir</name>
         <value>/home/wind/hadooptemp</value>
     </property>
</configuration>
(3)Hadoop中HDFS的配置,配置的备份方式默认为3,在单机版的Hadoop中,需要将其改为1
conf/hdfs-site.xml:
<configuration>
     <property>
         <name>dfs.replication</name>
         <value>1</value>
     </property>
</configuration>
(4)Hadoop中MapReduce的配置文件,配置JobTracker的地址及端口。注意更改防火墙
conf/mapred-site.xml:
<configuration>
     <property>
         <name>mapred.job.tracker</name>
         <value>localhost:9001</value>
     </property>
</configuration>
4.在启动Hadoop前,需要格式化Hadoop的文件系统HDFS。注意带有bin/意味着在命令端下处于hadoop根目录下
bin/Hadoop namenode –format
5.启动hadoop服务进程
bin/start-all.sh
停用hadoop服务进程
bin/stop-all.sh
查看进程状态
jps
会列出启动的服务以及进程id
6.验证Hadoop是否安装成功,都能查看,说明Hadoop已经安装成功
http://localhost:50030 (MapReduce的Web页面)
http://localhost:50070 (HDFS的Web页面)
7.单独启动服务
DFS(start-dfs.sh)
MapReduce(start-mapred.sh)
8.运行测试程序
(0)echo “Hello world hadoop” >>~/file1
(1)bin/hadoop fs -mkdir /tmp/input                   创建目录
(2)bin/hadoop fs –put ~/file1 /tmp/input        将文件输出到创建目录下
(3)bin/hadoop jar hadoop-examples-1.1.2.jar wordcount /tmp/input /tmp/out      注意输出路径不能已经存在,否则报错
(4)http://localhost:50030查看已经运行的任务
9.重启服务器后处理,(未作随机启动)
(1)启动ssh:service sshd start
(2)启动hadoop服务:bin/start-all.sh 
原文地址:https://www.cnblogs.com/AI001/p/3368905.html