birk 发表于 2018-10-31 10:27:32

Hadoop 开发平台搭建

  【安装JDK】
  首先,从http://www.oracle.com/technetwork/java/javase/downloads/index.html中下载jdk,我的版本是jdk1.6.0_24,我下载的是bin文件,我将下载的jdk1.6.0_24.bin文件置于/usr/lib/jvm/openjdk中,然后,在shell中执行。
  $ sudo chmod u+x /usr/lib/jvm/openjdk/jdk1.6.0_12.bin
  修改bin文件权限,使其可执行。然后,执行
  $ sudo /usr/lib/jvm/java/jdk1.6.0_12.bin
  安装完毕。
  配置下列文件
  $ sudo gedit /etc/environment
  增加
  PATH="......:/usr/lib/jvm/openjdk/jdk1.6.0_24/bin"
  CLASSPATH=.:/usr/lib/jvm/openjdk/jdk1.6.0_24/lib
  JAVA_HOME=/usr/lib/jvm/openjdk/jdk1.6.0_24
  $ sudo gedit /etc/profile
  增加
  export JAVA_HOME=/usr/lib/jvm/openjdk/jdk1.6.0_24
  export JRE_HOME=/usr/lib/jvm/openjdk/jdk1.6.0_24/jre
  export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
  export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
  最后注销当前用户,登录后执行
  $ java -version
  检测版本
  【Hadoop 分布式计算环境搭建】
  一、软件环境: 集群机系统-Ubuntu10.10
  jdk1.6.0_24
  hadoop-0.20.2
  二、集群环境:
  1.用户名:dic,环境:UBUNTU10.10,IP:10.13.30.79,作用:mater
  2.用户名:dic,环境:UBUNTU10.10,IP:10.13.30.35,作用:slave1
  解释:相同的用户名是为了保证hadoop的目录结果一样(只有这个是hadoop要求的,ssh与jdk的目录是各异的),都是,hdfs目录是。
  【1】SSH无密码验证配置
  步骤:
  [master]
  A. 安装SSH,并生成id_rsa私钥和id_rsa.pub公钥(~/.ssh)
  $ sudo apt-get install ssh
  $ ssh-keygen -t rsa
  B. master(10.13.30.79)公钥传给slaver1(10.13.30.35)
  $ scp /home/dic/.ssh/id_rsa.pub dic@10.13.30.35:/home/dic/.ssh/10.13.30.79
  
  A. 安装SSH,同master
  B. slaver1(10.13.30.35)公钥传给master(10.13.30.79)
  $ scp /home/dic/.ssh/id_rsa.pub dic@10.13.30.79:/home/dic/.ssh/10.13.30.35
  C. 把生成的 id_ras.pub 文件改名为 authorized_keys
  $ cp id_ras.pub >> authorized_keys
  $ cat 10.13.30.79 >> authorized_keys
  D. 重启
  $ ssh-agent
  $ sudo /etc/init.d/sshd restart
  [master]
  C. 把生成的 id_ras.pub 文件改名为 authorized_keys
  $ cp id_ras.pub >> authorized_keys
  $ cat 10.13.30.35 >> authorized_keys
  D. 重启
  $ ssh-agent
  $ sudo /etc/init.d/sshd restart
  【2】配置/etc/hosts文件,添加主机名与ip集群中主机名与ip的映射关系
  [master]
  $ sudo vi /etc/hosts
  添加
  10.13.30.35 qlee-desktop
  
  $ sudo vi /etc/hosts
  添加
  10.13.30.79 cl-desktop
  【3】Hadoop配置
  这里只叙述如何配置master。slaves的配置方法是,将master的[~/hadoop-0.20.2]文件传给所有的slave1,置于slaves的相同位置。
  3.1 conf/hadoop-env.sh
  $ export JAVA_HOME=/usr/lib/jvm/java-6-sun
  3.2 配置masters文件和slaves文件
  conf/masters
  cl-desktop
  conf/slaves
  qlee-desktop
  cl-desktop
  注:伪分布式中这里的slaves还是10.13.30.79
  3.3 配置conf/core-site.xml,确定 HDFS 主节点,它定义namenode的主机和端口,如果作为namenode启动,是需要读入此配置的。
  
  hadoop.tmp.dir
  /home/dic/hadooptmp
  A base for other temporary directories.
  
  
  
  fs.default.name
  hdfs://cl-desktop:9000
  
  3.4 配置conf/hdfs-site.xml 定义默认数据副本
  
  
  dfs.replication
  2
  
  
  3.5 配置mapred-site.xml-- jobtracker
  
  mapred.job.tracker
  cl-desktop:9001
  
  3.6 copy master的hadoop文件夹到各个slave,完成配置
  [master]
  $ scp /home/dic/hadoop-0.20.2 dic@10.13.30.35:/home/dic/hadoop-0.20.2
  【4】Hadoop启动[master]
  4.1 格式化名称节点
  $ bin/hadoop namenode -format
  $ bin/start-all.sh
  $ jps
  注:可以不使用start-all.sh,分开分别调用start-dfs.sh start-mapred.sh。如下图:
  每个节点的启动脚本和守护进程的关系
  4.2 验证与测试
  4.2.1
  验证启动进程--jps
  dic@cl-desktop:~# jps
  7367 NameNode
  7842 JobTracker
  7938 Jps
  7522 SecondaryNameNode
  dic@qlee-desktop:~# jps
  7785 DataNode
  8114 Jps
  7991 TaskTracker
  查看集群状态--hadoop dfsadmin -report
  测试 HDFS
  hadoop-0.20 fs -ls /
  hadoop-0.20 fs -mkdir test
  hadoop-0.20 fs -ls test
  hadoop-0.20 fs -rmr test
  hadoop-0.20 fsck /
  4.3 Web 管理界面
  namenode
  http://localhost:50070/
  jobtracker
  http://localhost:50030/
  【5】执行一个 MapReduce 作业[master]
  5.1 生成输入数据
  $ hadoop fs -mkdir input
  $ hadoop fs -put /home/dic/input/163 input
  $ hadoop fs -put /home/dic/input/sina input
  $ hadoop-0.20 fs -ls input
  5.2 在集群上运行 MapReduce wordcount 作业
  $ hadoop jar ~/hadoop-0.20.2/hadoop-0.20.2-examples.jar wordcount input output
  5.3检测 MapReduce 作业的输出
  $ hadoop fs -ls/user/dic/output
  $ hadoop fs -cat /user/dic/output/part-r-00000
  参考网站:
  http://www.ibm.com/developerworks/cn/linux/l-hadoop-1/
  http://www.ibm.com/developerworks/cn/linux/l-hadoop-2/
  http://www.ibm.com/developerworks/cn/linux/l-hadoop-3/
  http://bxyzzy.blog.51cto.com/854497/352692
  【安装eclipse】
  (官方下载地址:http://www.eclipse.org/downloads/)
  首要说明:Linux(继承自Unix)的文件系统构架中,用户手动选择安装目录是不必要的。
  有人就问了,不能自己做主,这样不是不好吗? 这套系统是很聪明滴,她很更了解什么东西该放在什么位置,根本不用操心。若是非要操心,非要自己指定位置,指错了说不定会出故障欧!——因为提供软件的人 也信任这套系统最佳,呵呵~这种规范已经实行几十年了,事实证明这就是最好的!所以就不需要我们操心安装位置了(事实上安装时也没提示你选择安装目录)
  通常情况下,linux会这样放软件的组件:
  程序的文档->/usr/share/doc; /usr/local/share/doc
  程序->/usr/share; /usr/local/share
  程序的启动项->/usr/share/apps; /usr/local/share
  程序的语言包->/usr/share/locale; /usr/local/share/locale
  可执行文件->/usr/bin; /usr/local/bin
  而有的软件为了和系统组件分隔开,选择栖息于 /opt,但目录结构往往是一样的,把/usr或/usr/local 替换为了/opt/"软件名"
  基于以上说明,我们将eclipse拷贝至/opt。此外,为了方面以后安装使用自己的软件,更改当前用户(非root用户)对/opt操作权限。
  chmod 777 /opt -R   //本文转自:http://www.lunwenroom.com/jisuanjilei/123.html

页: [1]
查看完整版本: Hadoop 开发平台搭建