[hadoop云计算实战]hadoop配置与实战

三 16th, 2013

Hadoop云计算实战读书笔记:第3章,p74~p80

linux下安装hadoop

  • 1. 安装java
  • 2. SSH安装 
  • sudo apt-get install ssh
    sudo apt-get install rsync
  • 3. 解压hadoop安装包  解压下载的hadoop包, tar -zxvf  hadoop-0.20.2.tar.gz
  • 4. 修改conf/hadoop-env.sh文件
  •       vi  conf/hadoop-env.sh
    添加: export  JAVA_HOME=/usr/java/jdk1.6.0

运行模式

1. 单机模式

    非分布式模式运行的独立java进程

2. 伪分布模式

    单节点上伪分布模式运行。用不同的java进程模拟分布式运行中的各类节点(NameNode,DataNode,JobTracker,TaskTracker,Secondary NameNode)

  • 2.1 配置hadoop:                                
  •           0.20.2以前版本的配置文件  conf/hadoop-default.xml . 之后的版本, core-site.xml, hdfs-site.xml(HDFS角度上的配置文件) , mapred-site.xml (站在MapReduce角度的配置文件)。

  • 2.2 设置免密码SSH               
  •           ssh-keygen -t rsa  按照默认的选型将生成的密钥对保持在 .ssh/id_ras 文件中,进入 .ssh 目录,执行下面的命令: cp  id_rsa.pub  authorized_keys

         然后执行  ssh  localhost命令  (实现用SSH连接并且不需要输入密码)

  • 2.3 运行hadoop                           
  •           a.格式化分布式文件系统: bin/hadoop namenode –format              

             b.启动hadoop守护进程: bin/start  -all.sh   成功后将在本地启动 NameNode,DataNode,JobTracker,TaskTracker,Secondary NameNode 5个新java进程             
             c.停止hadoop进程  : bin/stop-all.sh

3. 完全分布模式

   a. 对于Hadoop,不同的系统会有不同的节点划分方式。

   b. 在HDFS看来,节点分为NameNode和DataNode,NameNode只有一个,DataNode可以有多个。

   c. 在MapReduce看来,节点分为JobTracker和TaskTracker,JobTracker只有一个,TaskTracker可以有多个。

   d. NameNode和JobTracker可以部署在不同的机器上,也可以部署在同一个机器上。

    Demo:以3台机器的配置一个分布式模式,按下面的要求进行配置

  • 3.1  安装hadoop     [在每台机器创建一个相同的账号(以mapred 为账号)]             
  •                sudo   visudo  -f /etc/sudoers

              mapred  ALL=(ALL)ALL

        保存退出后以 mapred 账号登陆到每个节点上,在其主目录中为Hadoop创建目录 hadoopinstall,并将压缩包解压到该文件夹中。

        配置文件与安装目录分离: 将 /hadoop/conf/目录下的 hadoop_site.xml,masters,slaves,hadoop_env.sh 四个文件拷贝到 hadoop-config/目录中。

        并设置环境变量  $HADOOP_CONF_DIR指向配置文件存放的目录。在/home/mapred/.bashrc 和 /etc/profile2个文件中添加一行以下代码:

        export  HADOOP_CONF_DIR=/home/mapred/hadoopinstall/hadoop-config/

  • 3.2  配置Hadoop                    
  •      a.  node1 生成密码对:                 

                 ssh-keygen -t rsa

                    cp  id_rsa.pub  authorized_keys

         对于node2,node3,可使用如下命令:

                 mkdir  /home/mapred/.ssh

                 scp  authorized_keys  node2:/home/mapred/.ssh

          修改 authorized_keys 的访问权限,对所有者有读写权限,其他用户没有写权限。否则SSH不能正确工作。

                chmod  644  authorized_keys

          对sshd服务进行配置,去除密码验证,修改每台机器的/etc/ssh/sshd_config文件

                 PasswordAuthentication no AuthorizedKeysFile .ssh/authorized_keys

          重启sshd服务,可使用如下命令: sudo /etc/init.d/ssh  restart

     b.  配置   core-site.xml, hdfs-site.xml , mapred-site.xml ,分别拷贝到其他节点上。

     c.  将主节点NameNode的文件系统格式化为HDFS,该过程不会影响到各个节点现有的文件和程序。  hadoop  namenode  -format

     d.  启动 Hadoop守护进程 :  ./start  -all.sh





除非注明,本站文章均为原创。本文基于 BY-NC-SA 协议进行授权,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名 metaboy(包含链接).

本文链接地址: http://blog.wangyuxiong.com/archives/51908

订阅本站:http://www.wangyuxiong.com/feed

分类: 读书笔记         标签: ,
目前还没有任何评论.

无觅相关文章插件,快速提升流量