Hadoop集群搭建

1.安装JDK

1.1.创建文件夹

        mkdir /usr/local/java

1.2.进入文件夹

        cd /usr/local/java

1.3.文件上传

        文件jdk-8u351-linux-x64.tar.gz上传到/usr/local/java中

1.4.解压JDK

         tar -zxvf jdk-8u351-linux-x64.tar.gz

1.5.配置环境变量

         修改配置文件/etc/profile

        export JAVA_HOME=/usr/local/java/jdk1.8.0_351

        export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/

        export PATH=$PATH:$JAVA_HOME/bin

        重新加载配置source /etc/profile

        查看安装情况

        

2.关闭防火墙

       systemctl stop firewalld   #关闭防火墙   

       systemctl disable firewalld #禁止防火墙开启自启

3.修改主机名称

        查询主机名 hostname

        修改主机名 hostnamectl set-hostname node01

        reboot生效

4.设置/etc/hosts

        修改文件 vi /etc/hosts 

        添加内容:

        192.168.0.166 node01

        192.168.0.167 node02

        192.168.0.168 node03

        测试一下,互相ping一下名字看是否能ping通

        

5.配置免密操作

5.1.生成公钥、私钥

         ssh-keygen #4个回车 生成公钥、私钥

5.2.公钥信任确认 

        执行以下命令,添加新的公钥并进行信任确认:

        ssh-keyscan -t rsa 主机名 >> ~/.ssh/known_hosts

        其中,”主机名”指代你要连接的远程主机名或IP地址。

5.3.公钥拷贝

        ssh-copy-id node01ssh-copy-id node02ssh-copy-id node03

        

5.4测试免密登录

        

6.集群时间同步

        yum -y install ntpdate

        ntpdate ntp4.aliyun.com

        

7.安装Hadoop

7.1.创建文件夹

        mkdir /usr/local/src/software

        mkdir /usr/local/src/server

7.2.下载解压Hadoop

        进入文件夹 cd /usr/local/src/software

       下载Hadoop 

        wget https://archive.apache.org/dist/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz

        解压Hadoop tar -zxvf hadoop-3.1.3.tar.gz -C /usr/local/src/server

        注:wget 未找到 输入以下命令:yum -y install wget

7.3配置环境变量

        修改配置文件/etc/profile

        export HADOOP_HOME=/usr/local/src/server/hadoop-3.1.3

        export PATH=$PATH:$HADOOP_HOME/bin

        export PATH=$PATH:$HADOOP_HOME/sbin

        重新加载配置source /etc/profile

   7.4.是否配置成功

        命令:hadoop version

        

8.集群信息配置

        创建文件夹:

                mkdir /usr/local/src/server/hadoop

                mkdir /usr/local/src/server/hadoop/tmp

                mkdir /usr/local/src/server/hadoop/dfs

        配置文件路径:/usr/local/src/server/hadoop-3.1.3/etc/hadoop

 8.1.hadoop-env.sh
#配置JAVA_HOME
export JAVA_HOME=/usr/local/java/jdk1.8.0_351
#设置用户以执行对应角色shell命令
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root 
8.2.core-site.xml
<configuration>
 <property>
     <name>fs.defaultFS</name>
     <value>hdfs://node01:9000</value>
 </property>
 <!-- 配置Hadoop存储数据目录,默认/tmp/hadoop-${user.name} -->
 <property>
     <name>hadoop.tmp.dir</name>
     <value>file:/usr/local/src/server/hadoop/tmp</value>
 </property>
  <property>
     <name>hadoop.http.staticuser.user</name>
     <value>root</value>
 </property>
 <!--  缓冲区大小,实际工作中根据服务器性能动态调整 -->
 <property>
     <name>io.file.buffer.size</name>
     <value>131072</value>
 </property>
 <!--  开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收,单位分钟 -->
 <property>
     <name>fs.trash.interval</name>
     <value>10080</value>
 </property>
</configuration>
8.3.hdfs-site.xml
<configuration>
 <!-- namenode存储hdfs名字的空间的元数据文件目录 -->
 <property>
     <name>dfs.namenode.name.dir</name>           
     <value>file:/usr/local/src/server/hadoop/dfs/name</value>
 </property>
 <!-- datanode上的一个数据块的物理的存储位置文件 -->
 <property>
     <name>dfs.datanode.data.dir</name>         
     <value>file:/usr/local/src/server/hadoop/dfs/data</value>
 </property>
 <!-- 指定HDFS保存数据副本的数量 -->
 <property>
     <name>dfs.replication</name>
     <value>3</value>
 </property>
 <!-- 设置一个block的大小:128M-->
 <property>
     <name>dfs.blocksize</name>
     <value>134217728</value>
 </property>
 <!-- 设置HDFS的文件权限-->
 <property>
     <name>dfs.permissions</name>
     <value>false</value>
 </property>
 <!-- 指定DataNode的节点配置文件 -->
 <property>
     <name>dfs.hosts</name>
     <value>/usr/local/src/server/hadoop-3.1.3/etc/hadoop/workers</value>
 </property>
</configuration>
8.4.mapred-site.xml
<configuration>
 <!-- 指定 MapReduce 程序运行在 Yarn 上,表示MapReduce使用yarn框架 -->
 <property>
     <name>mapreduce.framework.name</name>
     <value>yarn</value>
 </property>
 <!-- 开启MapReduce小任务模式 -->
 <property>
     <name>mapreduce.job.ubertask.enable</name>
     <value>true</value>
 </property>
 <!-- 设置历史任务的主机和端口 -->
 <property>
     <name>mapreduce.jobhistory.address</name>
     <value>node01:10020</value>
 </property>
 <!-- 设置网页访问历史任务的主机和端口 -->
 <property>
     <name>mapreduce.jobhistory.webapp.address</name>
     <value>node01:19888</value>
 </property>
 </configuration>
8.5. yarn-site.xml
<configuration>
 <!-- yarn集群主角色RM运行机器。-->
 <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>node01</value>
 </property>
 <!-- NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MR程序。-->
 <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
 </property>
 <!-- 每个容器请求的最小内存资源(以MB为单位)。-->
 <property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>512</value>
 </property>
 <!-- 每个容器请求的最大内存资源(以MB为单位)。-->
 <property>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>2048</value>
 </property>
 <!-- 容器虚拟内存与物理内存之间的比率。-->
 <property>
    <name>yarn.nodemanager.vmem-pmem-ratio</name>
    <value>4</value>
 </property>
</configuration>
8.6.workers
node01
node02
node03
8.7.同步Hadoop安装包

        在node1机器上将Hadoop安装包scp同步到其他机器

        scp -r hadoop-3.1.3 root@node02:/usr/local/src/server/

        scp -r hadoop-3.1.3 root@node03:/usr/local/src/server/

9.启动Hadoop集群

9.1.格式化操作

        命令:hdfs namenode -format

        首次启动HDFS时,必须对其进行格式化操作。 format本质上是初始化工作,进行HDFS清理和准备工作。

        注:如果集群是第一次启动,需要在Namenode所在节点格式化NameNode,非第一次不用执行格式化 Namenode 操作。

9.2.启动集群

        进入 /usr/local/src/server/hadoop-3.1.3/sbin目录下执行

        ./start-all.sh

9.3.JPS查看结果

         

        

      9.4.Hadoop Web UI页面-HDFS集群

        地址:http://namenode_host:9870   

         其中namenode_host是namenode运行所在机器的主机名或者ip

        

9.5.Hadoop Web UI页面-HDFS文件系统

        

9.6.Hadoop Web UI页面-YARN集群

        地址:http://resourcemanager_host:8088     

        其中resourcemanager_host是resourcemanager运行所在机器的主机名或者ip

        

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值