Hadoop集群搭建(三台电脑)

电脑的操作系统是Ubuntu12.04 32位,ubuntu-12.04.4-desktop-i386.iso。

集群介绍:     

        三台电脑的用户名都为hadoop

       主机名:master    10.10.6.176

       服务机:slaver1     10.10.6.242;slaver2    10.10.6.131

一、配置

       以下是三台机器都要安装和相同配置

       在/etc/hostname下修改自己的机器名

       在/etc/hosts下将所有机器名和对应的IP添加

二、安装JDK

        三台机器都需要,我用的是jdk-7u71-linux-i586.tar.gz。

        2.1在usr/local目录下新建java目录,将解压后的jdk1.7.0_71放到java目录下

        2.2在/etc/profile里最后添加JAVA环境(sudo gedit /etc/profile)

              # for java

         export JAVA_HOME=/usr/local/java/jdk1.7.0_71

         export JRE_HOME=${JAVA_HOME}/jre

        export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib

        export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH

        2.3保存设置生效 ($ source /etc/profile

        2.4测试($ java -version

三、安装SSH并实现无密码访问

       3.1 安装SSH(sudo apt-get install ssh),包括openssh-server和openssh-client。

             安装过程一直默认就可以。三台机器都需要安装。

       3.2建立ssh无密码登录,采用rsa方式生成(ssh-keygen -t rsa)

              一直默认回车就可以,安装完cd .ssh 可以发现 id_rsa(密钥)和id_rsa.pub(公钥)两个文件。

     3.3无密码访问master本机

         将id_rsa.pub添加到authorized_keys(存放所有公钥)(cp id_rsa.pub  authorized_keys),   这时就可以无密码访问localhost (ssh localhost)。

     3.4无密码访问slaver1和slaver2

           将公钥复制到slaver1机器上:scp id_rsa.pub  hadoop@slaver1:~/.ssh/master_key

           将master_key 追加到slaver1和slaver2的authorized_keys文件里 cat master_key  >> authorized_keys(可以通过cat authorized_keys查看是否添加成功) 

四、安装Hadoop(三台相同) 

     我用的是hadoop-1.2.1.tar.gz

     4.1 将文件解压要目录

           sudo tar -zxf *.tag.gz,得到hadoop-1.2.1

     4.2 修改conf/hadoop-env.sh

          JAVA_HOME=/usr/local/java/jdk1.7.0_71(对应自己的jdk)

     4.3 修改conf目录下的配置文件masters,slaves,core-site.xml,mapred-site.xml,hdfs-site.xml

                masters文件       master               

                slaves文件         slaver1

                                          slaver2 

                修改core-site.xml文件                        

                                     <configuration>   

                                            <property>    

                                                <name>fs.default.name</name>    

                                                <value>hdfs://master:9000</value>    

                                         </property>    

                               </configuration> 

                修改mapred-site.xml文件             

                                  <configuration>   

                                          <property>   

                                                     <name>mapred.job.tracker</name>   

                                                    <value>master:9001</value>   

                                       </property>   

                            </configuration>

                修改hdfs-site.xml文件               

                                  <configuration>   

                                            <property>   

                                                     <name>dfs.replication</name>   

                                                    <value>3</value>   

                                       </property>   

                                 </configuration>  

      4.4测试

               格式化HDFS以做好数据存储   bin/hadoop namenode -format

               启动   bin/start-all.sh

               在master下[hadoop@master]$ jps后有4的进程 Jps、NameNode、JobTracker、SecondaryNameNode

               在slaves下[hadoop@slaver1]$ jps 后有3个进程 Jps、DataNode、TaskTracker

               停止  bin/stop-all.sh

 

     

 

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
集群规划: 主机名 IP 安装的软件 运行的进程 weekend01 192.168.1.201 jdk、hadoop NameNode、DFSZKFailoverController(zkfc) weekend02 192.168.1.202 jdk、hadoop NameNode、DFSZKFailoverController(zkfc) weekend03 192.168.1.203 jdk、hadoop ResourceManager weekend04 192.168.1.204 jdk、hadoop ResourceManager weekend05 192.168.1.205 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain weekend06 192.168.1.206 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain weekend07 192.168.1.207 jdk、hadoop、zookeeper DataNode、NodeManager、JournalNode、QuorumPeerMain 说明: 1.在hadoop2.0中通常由两个NameNode组成,一个处于active状态,另一个处于standby状态。Active NameNode对外提供服务,而Standby NameNode则不对外提供服务 仅同步active namenode的状态,以便能够在它失败时快速进行切换。 hadoop2.0官方提供了两种HDFS HA的解决方案,一种是NFS,另一种是QJM。这里我们使用简单的QJM。在该方案中,主备NameNode之间通过一组JournalNode同步元数据 信息,一条数据只要成功写入多数JournalNode即认为写入成功。通常配置奇数个JournalNode 这里还配置了一个zookeeper集群,用于ZKFC(DFSZKFailoverController)故障转移,当Active NameNode挂掉了,会自动切换Standby NameNode为standby状态 2.hadoop-2.2.0中依然存在一个问题,就是ResourceManager只有一个,存在单点故障,hadoop-2.4.1解决了这个问题,有两个ResourceManager,一个是Active,一个 是Standby,状态由zookeeper进行协调

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值