hadoop 伪分布式部署


1.linux系统选择
 deban 和 redhat 都差不多配置 我的是fedora ,但是推荐大家用centos (自己学习下sudo配置和基础命令,文档需要的邮件发送: linux常用命令.pdf)

2.java环境
 java环境比较重要,比较高版本的jdk hadoop支持不是很好,建议选择相对稳定的1.6.34 (jdk-6u34-linux-x64.bin 需要的邮件发送或自己下载 )
 环境配置很简单tar后配置一下环境变量javahome jrehome classpath path 不会的话只能去百度google了 这里不是重点。
 记得给文件夹提权,(命令: chmod 664  jdk路径/jdk-6u34-linux-x64/ ) 后面参数是jdk解压路径
3.Hadoop
 我用的是hadoop1.0.3
 tar -xzvf hadoop-1.0.3-bin.tar.gz 解压出来
 配置环境变量sudo vim /etc/environment然后是配置Hadoop的环境变量,跟之前JAVA环境变量类似。
 sudo vim /etc/environment
PATH中添加":/解压路径/hadoop/hadoop-1.0.3/bin"。(注意是path中追加 不是修改!!!)

然后要配置ssh无密码登录localhost,在这之前需要确认ssh和rsync已经安装
伪分布式
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa  # 生成秘钥
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys #把秘钥追加到 authorized_keys中 如果是集群 就要将所有集群中的主机秘钥都加入authorized_keys

ssh localhost #无密码登录

重点学习下公钥私钥是什么!!! ssh靠这个认证主机用的
(无密码登陆 上次培训时提到可以不用配置 但是每次ssh都要输入密码 介意先配置了 如果不明白百度google一下)

接下来是Hadoop的配置
 首先是JAVA路径,修改hadoop-1.0.3/conf/hadoop-env.sh文件中的JAVA_HOME=/usr/lib/jvm/jdk1.6.0_34为自己的jdk路径

 然后是修改conf下面的几个xml文件
1- vim core-site.xml
<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
  </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/本地hadoop路径/hadoop-1.0.3/datatmp/hadoop-${user.name}</value>
  </property>
</configuration>
2- vim hdfs-site.xml
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>
3- vim mapred-site.xml
<configuration>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
</configuration>
至此一个伪分布式的Hadoop就配置好了 可以运行一下测试脚本
查看版本 hadoop version

格式化一个namenode(之后不要轻易格式化,否则namenode的ID变化会比较麻烦)
hadoop namenode -format
然后启动各项服务。
 start-all.sh(服务全部开启 :慎用)
最后停止服务 命令:
 stop-all.sh(服务全部停止 :慎用)

这样就可以在浏览器中查看相应信息啦。
NameNode - http://localhost:50070/
JobTracker - http://localhost:50030/
等datanode启动好,就可以把文件复制到分布式系统
上传文件命令:hadoop fs -put conf input

查看测试结果 命令:
 hadoop fs -cat output/*

 


有感兴趣的同事可以一起学习hadoop hive hbase+zookepper sqoop mapreduce mahout

 

 


 

你可能感兴趣的:(mapreduce,hadoop,hive,hbase,sqoop,zookepper)