Chinaunix首页 | 论坛 | 博客
  • 博客访问: 550973
  • 博文数量: 154
  • 博客积分: 4055
  • 博客等级: 上校
  • 技术积分: 1381
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-01 14:26
文章分类

全部博文(154)

文章存档

2014年(2)

2013年(2)

2011年(2)

2010年(11)

2009年(9)

2008年(35)

2007年(22)

2006年(71)

我的朋友

分类: 云计算

2013-07-13 23:21:18

新搭建的hadoop环境,使用起来还不错
1、修改主机信息
 每个node节点需要修改/etc/hosts文件
 192.168.1.xxx master
 192.168.1.xxx node1
 192.168.1.xxx node2
2、修改自动登录设置
 每个节点均操作
  ssh-keygen -t rsa
  将生成的id_rsa.pub密码信息输入到authorized_keys
 将所有节点的authorized_keys合并到一个文件中,然后把合并之后的文件覆盖到每个节点的.ssh目录下
 每个节点赋予权限
 chmod 644 ~/.ssh/authorized_keys
3、关闭防火墙
     各机器加入iptables策略:
  [master-/root]iptables -I INPUT -s 192.168.1.0/255.255.255.0 -j ACCPET
  [master-/root]service iptables save
4、安装jdk
  每个节点均操作,仅支持JDK1.6之上的版本
  1、解压jdk文件,并且设置java_home和path环境变量
 2、修改环境变量
   编辑三台机器的/etc/profile,增加如下内容
   export JAVA_HOME=/hadoop/jdk
   export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
   export HADOOP_HOME=/hadoop/hadoop
   export HBASE_HOME=/hadoop/hbase
   PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin
  [master-/hadoop]vi /hadoop/.bashrc
  增加
  export HADOOP_CONF_DIR=/hadoop/hadoop-config
  export HBASE_CONF_DIR=/hadoop/hbase-config
5、安装hadoop
    下载hadoop tar包
  [master-/hadoop]tar -zxvf hadoop-0.20.2.tar.gz
  [master-/hadoop]ln -s hadoop-0.20.2 hadoop
  由于上述目录中hadoop的配置文件和hadoop的安装目录是放在一起的,这样一旦日后升级hadoop版本的时候所有的配置文件都会被覆盖,因 此将配置文件与安装目录分离,一种比较好的方法就是建立一个存放配置文件的目录,/hadoop/hadoop-config/,然后将 /hadoop/hadoop/conf/目录中的core-site.xml,slaves,hadoop-env.sh,masters, hdfs-site.xml,mapred-site.xml,这6个文件拷贝到 /hadoop/hadoop-config/目录中,并指定环境变量$HADOOP_CONF_DIR指向该目录。环境变量在/root/.bashrc 中设定。
  [master-/hadoop]mkdir /hadoop/hadoop-config
  [master-/hadoop]cd /hadoop/hadoop/conf/
  [master-/hadoop]cp core-site.xml slaves hadoop-env.sh masters hdfs-site.xml mapred-site.xml /hadoop/hadoop-config
6、修改hadoop环境变量
    masters:
  master
  
  slaves:
  slave1
  slave2
  
  #切忌不要创建:/hadoop/hadoop/tmp
  hadoop-env.sh:
  export JAVA_HOME=/hadoop/jdk
  export HADOOP_PID_DIR=/hadoop/hadoop/tmp
  
  core-site.xml:
  
  
  
  
  
     fs.default.name
     hdfs://master:54310
  

  

  
  #切忌不要创建:/hadoop/hadoop/name
  [master-/hadoop]mkdir /hadoop/hadoop/data
  hdfs-site.xml:
   
   
   
   
   
   dfs.name.dir
   /hadoop/hadoop/name/ #hadoop的name目录路径    
   

   
   dfs.data.dir
   /hadoop/hadoop/data/ #hadoop的data目录路径
   

   
      dfs.replication
      3     #指定 HDFS 中每个 Block 被复制的次数,起数据冗余备份的作用。在典型的生产系统中,这个数常常设置为3
   

   

  
  mapred-site.xml:
   
   
   
   
   
      mapred.job.tracker
      hdfs://master:54311/
   

   

  3、格式化namenode
  [master-/hadoop]cd /hadoop/hadoop/bin
  [master-/hadoop]./hadoop namenode -format
  [master-/hadoop]cd /hadoop
  [master-/hadoop]scp -r ./*
  [master-/hadoop]scp -r ./*
  到slave1和slave2上,分别重做软链接
  [master-/hadoop]cd /hadoop
  [master-/hadoop]rm -rf hadoop
  [master-/hadoop]ln -s hadoop-0.20.2 hadoop

  4、启动所有hadoop守护进程
    [master-/hadoop/hadoop/bin]./start-all.sh
    说明:
    在bin/下面有很多启动脚本,可以根据自己的需要来启动。
    * start-all.sh 启动所有的Hadoop守护。包括namenode, datanode, jobtracker, tasktrack
    * stop-all.sh 停止所有的Hadoop
    * start-mapred.sh 启动Map/Reduce守护。包括Jobtracker和Tasktrack
    * stop-mapred.sh 停止Map/Reduce守护
    * start-dfs.sh 启动Hadoop DFS守护.Namenode和Datanode
    * stop-dfs.sh 停止DFS守护
    [root@master bin]# jps
    6813 NameNode
    7278 Jps
    7164 JobTracker
    7047 SecondaryNameNode
    出现4个这样的进程,且datanode没有error,同时访问ui正常才算成功。
    ui: --web UI for HDFS name node(s)
        --web UI for MapReduce job tracker(s)
           --web UI for task tracker(s)
  
  5、hdfs简单测试
  [master-/hadoop/hadoop/bin]./hadoop dfs -mkdir testdir
  [master-/hadoop/hadoop/bin]./hadoop dfs -put /root/install.log testdir/install.log-dfs
  将/root/install.log 存储到hdfs中的testdir中,重命名为install.log-dfs
  [master-/hadoop/hadoop/bin]./hadoop dfs -ls
  [master-/hadoop/hadoop/bin]./hadoop dfs -ls testdir

 

阅读(2912) | 评论(0) | 转发(2) |
7

上一篇:IT十余年心得

下一篇:hbase 环境部署

给主人留下些什么吧!~~