hadoop-2.8.0完全分布式环境搭建

一、机器及环境准备。


1、jdk安装不用多说,安装完成配置环境变量即可。

export JAVA_HOME=/usr/java/latest
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH
运行 #source /etc/profile让环境变量生效

2、将下载的hadoop-2.8.0.tar.gz文件解压到指定目录/data/下,然后需要配置hadoop相关的环境变量,这里为了区别,特意做一个单独的配置文件,放到/etc/profile.d目录下,取名hadoop.sh,文件内容如下。


同样的为了让环境变量生效,需要运行# source /etc/profile

3、配置免密钥登录,这里需要在namenode节点上远程操作datanode节点,因此只需要在linux-node1上配置免密登录,然后将密钥拷贝到linux-node1,linux-node2,linux-node3上,linux-node1本机也需要免密登录,如果不配置这一步,在启动hdfs时,需要手动输入密码。

#ssh-keygen -t rsa -P ""
#cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
#ssh-copy-id linux-node2
#ssh-copy-id linux-node3

上面依次创建一对密钥,然后在linux-node1上将id_rsa.pub复制为authorized_keys,这样就实现了在本季免密登录。最后分别利用ssh-copy-id命令将密钥拷贝到linux-node2,linux-node3上。

说明一点:hadoop-2.8.0二进制安装包是在x64位机器上编译的,所以如果是64位虚拟机,无须下载源码编译来生成本地库,我们可以通过查看lib/native/libhadoop.so.1.0.0文件,来验证具体的编译信息。

[root@linux-node1 hadoop-2.8.0]# file lib/native/libhadoop.so.1.0.0 
lib/native/libhadoop.so.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=0x4f0a2f27e6f1a45560dad736ba475a8d7fb97a09, not stripped

二、准备配置文件。

core-site.xml

<configuration>
     <property>
             <name>fs.defaultFS</name>
             <value>hdfs://linux-node1:9000</value>
     </property>
     <property>
             <name>hadoop.tmp.dir</name>
             <value>file:/data/hadoop-2.8.0/tmp</value>
     </property>
</configuration>

根据配置文件,需要在hadoop安装目录下新建tmp目录。

hdfs-site.xml

<configuration>
     <property>
            <name>dfs.replication</name>
            <value>2</value>
     </property>
     <property>
            <name>dfs.namenode.secondary.http-address</name>
            <value>linux-node1:9001</value>
     </property> 
     <property>
            <name>dfs.namenode.name.dir</name>
            <value>file:/data/hadoop-2.8.0/hdfs/name</value>
     </property> 
     <property>
            <name>dfs.datanode.data.dir</name>
            <value>file:/data/hadoop-2.8.0/hdfs/data</value>
     </property> 
</configuration>

根据配置文件,需要在hadoop安装目录下新建hdfs/name,hdfs/data两个目录。

mapred-site.xml

<configuration>
     <property>
          <name>mapreduce.framework.name</name>
          <value>yarn</value>
      </property>
     <property>
          <name>mapreduce.jobhistory.address</name>
          <value>linux-node1:10020</value>
      </property>
     <property>
          <name>mapreduce.jobhistory.webapp.address</name>
          <value>linux-node1:19888</value>
      </property>
</configuration>

yarn-site.xml

<configuration>
      <property>
           <name>yarn.nodemanager.aux-services</name>
           <value>mapreduce_shuffle</value>
      </property>
      
      <property>
           <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
           <value>org.apache.hadoop.mapred.ShuffleHandler</value>
      </property>
      <property>
           <name>yarn.resourcemanager.address</name>
           <value>linux-node1:8032</value>
      </property>
      <property>
           <name>yarn.resourcemanager.scheduler.address</name>
           <value>linux-node1:8030</value>
      </property>
      <property>
           <name>yarn.resourcemanager.resource-tracker.address</name>
           <value>linux-node1:8031</value>
      </property>
      <property>
           <name>yarn.resourcemanager.admin.address</name>
           <value>linux-node1:8033</value>
      </property>
      <property>
           <name>yarn.resourcemanager.webapp.address</name>
           <value>linux-node1:8088</value>
      </property>
</configuration>

slaves

[root@linux-node1 hadoop]# cat slaves 
linux-node2
linux-node3

hadoop-env.sh(可选),如果安装jdk时,配置环境变量使用了软链的方式将jdk的安装目录映射到/usr/java/latest这样的目录,这里就需要将hadoop-env.sh中JAVA_HOME的值需要设置一下,否则在启动hdfs时会出现java_home未设置的错误,如果直接指定jdk的安装目录,则不用设置。

# The java implementation to use.
export JAVA_HOME=/usr/java/latest

配置文件准备好了之后,可以将hadoop-2.8.0安装包拷贝到linux-node2,linux-node3机器对应的目录下。

scp -r /data/hadoop-2.8.0 linux-node2:/data/
scp -r /data/hadoop-2.8.0 linux-node3:/data/

三、格式化和启动hdfs,yarn。

在主节点上运行以下命令:hdfs namenode -format,入下图所示,表示格式化成功。


sbin/start-dfs.sh//启动dfs文件系统,可以查看hdfs文件系统。


sbin/start-yarn.sh//启动yarn,可以运行mapreduce程序。

如果需要关闭,依次关闭yarn,hdfs

sbin/stop-yarn.sh

sbin/stop-dfs.sh

四、登录图形界面查看集群状态。

在浏览器中访问地址:http://192.168.61.21:50070

overview


datanode


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

luffy5459

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值