大数据技术之HADOOP搭建

一、虚拟机的安装

二、CentOS的安装

记得选择镜像文件

请添加图片描述

如果报虚拟化错误,记得在BIOS操作系统界面开启一下。
安装的时候可以不用选择分区的设置。
中间的一些设置:
请添加图片描述
请添加图片描述请添加图片描述请添加图片描述请添加图片描述

如果你的虚拟机安装过程中老黑屏,试试如下设置。
请添加图片描述

安装成功后,不会出现图形化界面的。
请添加图片描述

三、讲解远程连接工具的使用

1、通过finalShell 远程连接Linux

FinalShell 可以远程输入Linux的命令操作,类似于Linux的黑窗口还可以远程将本地的文件上传给Linux,Linux下的文件也可以下载到本地电脑。
请添加图片描述请添加图片描述

2、通过NodePad++ 远程连接Linux

它只用于操作Linux中的文本文件。

请添加图片描述请添加图片描述
请添加图片描述请添加图片描述

当我需要修改Linux中的任何文本内容的时候,只需要双击就可以修改,修改完之后一定要报错才能上传至Linux.

四、虚拟机进行一些设置

1、设置网络为静态网络

先检查网络是否正常

ip addr 查看网络地址

请添加图片描述

ping www.baidu.com 如果ping的通,说明外网访问也没有问题

请添加图片描述设置IP地址为固定IP:
通过修改Linux中的某个配置文件,达到固定IP的作用。
找到 /etc/sysconfig/network-scripts/ifcfg-ens33 这个文件,双击
请添加图片描述一定记得不要写错单词,IPADDR 和 GATEWAY 修改成自己的,自己的IP在虚拟网络编辑器中。请添加图片描述修改完成后,记得重启网卡 : systemctl restart network

2、设置hostname

  1. 查看当前的主机名 hostname
  2. 临时修改主机名 hostname bigdata01
    3) 修改主机名 通过修改文件的形式修改主机名
    vi /etc/hostname 进行编辑即可。

请添加图片描述

3、关闭防火墙

关闭防火墙
查看防火墙状态: systemctl status firewalld
关闭: systemctl stop firewalld
为了防止下一次重启的时候防火漆再次开启,我们要设置开机不启动: systemctl disable firewalld

4、同步linux的时间

1) date 查看当前时间
2) 如果时间跟网络上的时间不一致,我们需要进行时间的同步
yum install -y ntpdate 安装软件
ntpdate -u ntp.api.bz 通过该软件进行时间的同步

五、在Linux上安装jdk

1) /root 下创建一个文件夹 software ,便于将来我把需要安装的安装包都先放在此文件夹下。
mkdir software
2)进入到software文件夹下,通过finalshell 将本地的jdk安装包拖拽到 software文件夹下
3)解压jdk
tar -xvf jdk-8u221-linux-x64.tar.gz -C /usr/local
4) 进入到 /usr/local 下查看一下
cd /usr/local/
5) 修改文件名
mv jdk1.8.0_221 jdk
请添加图片描述
6)进行环境变量的配置
修改 /etc/profile
在profile文件的最后,追加以下配置

export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin

7、刷新一下配置文件 source /etc/profile
8、验证jdk是否安装成功 java -version

请添加图片描述

六、Linux安装Hadoop

1、将Hadoop 的安装包,上传到 /root/software
2、解压该安装包到 /usr/local/

tar -xvf hadoop-2.7.6.tar.gz -C /usr/local

3、修改hadoop 的文件夹名字 mv hadoop-2.7.6 hadoop
4、配置环境变量 修改 /etc/profile

   export HADOOP_HOME=/usr/local/hadoop
   export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

5、刷新一下配置文件 source /etc/profile
6、验证配置是否生效
hadoop version
请添加图片描述

七、跑一个wordcount 案例

1、hadoop 环境安装好之后,创建三个文本文件 a.txt b.txt c.txt 存放在 /home/input
2、运行hadoop 自带的wordcount案例jar包
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount /home/input/ /home/output/
3、查看执行结果 ,进入/home/output 下 ,查看 cat /home/output/part-r-00000 这样一个统计的结果
请添加图片描述

八、搭建大数据平台

1、伪分布式搭建

伪分布式搭建 --> 伪分布式搭建,步骤完全按照分布式进行搭建,但是电脑只有一台,所有叫伪分布式搭建

准备工作:
1) 修改 /etc/hosts文件

  192.168.32.137 bigdata01
  192.168.32.138 bigdata02
  192.168.32.139 bigdata03

在这里插入图片描述

2)免密登录需要做好(为了将来搭建全分布式环境,电脑之间传递数据时方便)
ssh-keygen -t rsa 生成公钥和私钥,生成的公钥和私钥存放在 .ssh 文件夹下
ssh-copy-id root@localhost 通过该命令将产生的公钥拷贝到指定电脑上。
ssh 需要连接的IP(hostname) 就可以连接上。
开始进行伪分布平台的搭建: /usr/local/hadoop/etc/hadoop/ 此文件夹下是hadoop的配置文件

在这里插入图片描述

1、修改core-site.xml

<configuration>
   <property> 
      <name>fs.defaultFS</name> 
      <value>hdfs://localhost:8020/</value> 
   </property>
</configuration>

2、修改hdfs-site.xml

<configuration>
<property>
   <name>dfs.replication</name> 
   <value>1</value> 
</property>
</configuration>

3、修改hadoop-env.sh
请添加图片描述

4、namenode 的格式化
hdfs namenode -format
中间不能有任何的错误,格式化不成功,需要仔细看日志
5、启动hdfs start-dfs.sh
6、通过 jps 查看进程,如果出现三个,说明正确
请添加图片描述
7、通过浏览器可以查看图形化界面 http://192.168.32.137:50070

请添加图片描述

2、全分布式项目搭建

如果我们是从伪分布式环境过渡多来的话,需要先进行一些处理。
1) 停止hdfs stop-dfs.sh
2) 删除namenode datanode 的临时文件夹
/tmp/hadoop-root
删除里面的全部内容 rm -rf /tmp/hadoop-root/*
操作完成后,将虚拟机停止,进行快照,并且克隆两份
先进行快照,选中虚拟机,右键,选择快照即可。
请添加图片描述请添加图片描述

请添加图片描述
请添加图片描述

克隆出来的系统跟原来的系统是一模一样的。
我们需要修改如下内容:
1、需要修改IP地址
需要将两台服务器,启动起来,通过vi 编辑器修改IP

vi /etc/sysconfig/network-scripts/ifcfg-ens33

修改里面的ipaddr 保存即可。
2、hostname 也一模一样
vi /etc/hostname 或者使用hostnamectl set-hostname 名称

3、搞几个脚本文件

请添加图片描述

jps-cluster.sh 用于查看多台电脑上的jps进程,省去了切换电脑的麻烦。
1、将以上脚本复制到 /usr/local/bin
2、给两个脚本文件赋可以执行的权限

 chmod u+x xcall.sh
 chmod u+x xsync.sh
 chmod u+x jps-cluster.sh

3、三台电脑安装rsync

yum install -y rsync

4、测试一下
给每台电脑都创建一个文件夹 xcall.sh mkdir jiaoben
查看每一个电脑上是否有该文件夹 xcall.sh ls
测试一下文件同步脚本 xsync.sh /etc/profile

4、搭建完全分布式的集群环境

进入到hadoop的安装路径 /usr/local/hadoop/etc/hadoop 中进行修改
1、修改core-site.xml

	<property>
        <name>fs.defaultFS</name>
        <value>hdfs://bigdata01:8020</value>
    </property>
     <!-- hdfs的基础路径,被其他属性所依赖的一个基础路径 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/tmp</value>
    </property>

2、修改hdfs-site.xml

<!-- namenode守护进程管理的元数据文件fsimage存储的位置-->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file://${hadoop.tmp.dir}/dfs/name</value>
    </property>
    <!-- 确定DFS数据节点应该将其块存储在本地文件系统的何处-->
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file://${hadoop.tmp.dir}/dfs/data</value>
    </property>
    <!-- 块的副本数-->
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <!-- 块的大小(128M),下面的单位是字节-->
    <property>
        <name>dfs.blocksize</name>
        <value>134217728</value>
    </property>
    <!-- secondarynamenode守护进程的http地址:主机名和端口号。参考守护进程布局-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>bigdata02:50090</value>
    </property>
    <!-- namenode守护进程的http地址:主机名和端口号。参考守护进程布局-->
  <property>
      <name>dfs.namenode.http-address</name>
      <value>bigdata01:50070</value>
  </property> 

3、mapred-site.xml (从一个模板拷贝过来的文件 cp mapred-site.xml.template mapred-site.xml)

<!-- 指定mapreduce使用yarn资源管理器-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <!-- 配置作业历史服务器的地址-->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>bigdata01:10020</value>
    </property>
    <!-- 配置作业历史服务器的http地址-->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>bigdata01:19888</value>
    </property>

4、yarn-site.xml

<!-- 指定yarn的shuffle技术-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
    </property>
    <!-- 指定resourcemanager的主机名-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>bigdata01</value>
    </property> 
    <!--下面的可选-->
    <!--指定shuffle对应的类 -->
  <property> 
  <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value> 
  </property><!--配置resourcemanager的内部通讯地址-->
  <property>
  <name>yarn.resourcemanager.address</name>
  <value>bigdata01:8032</value>
  </property><!--配置resourcemanager的scheduler的内部通讯地址-->
  <property>
  <name>yarn.resourcemanager.scheduler.address</name>
  <value>bigdata01:8030</value>
  </property><!--配置resoucemanager的资源调度的内部通讯地址-->
  <property>
  <name>yarn.resourcemanager.resource-tracker.address</name>
  <value>bigdata01:8031</value>
  </property><!--配置resourcemanager的管理员的内部通讯地址-->
  <property>
  <name>yarn.resourcemanager.admin.address</name>
  <value>bigdata01:8033</value>
  </property><!--配置resourcemanager的web ui 的监控页面-->
  <property>
  <name>yarn.resourcemanager.webapp.address</name>
  <value>bigdata01:8088</value>
  </property>

5、修改hadoop-env.sh 中的jdk路径

请添加图片描述
6、修改yarn-env.sh

请添加图片描述
7、修改slaves:

bigdata01
bigdata02
bigdata03

修改大概7个文件,然后每一台电脑上都需要修改。可以使用同步的脚本文件命令

xsync.sh /usr/local/hadoop/etc/hadoop/

同步以上文件夹。

8、测试免密登录没问题

请添加图片描述
9、格式化namenode
hdfs namenode -format
10、启动hdfs平台
start-dfs.sh
启动过程中的日志,都存储在截图位置上
请添加图片描述

运行脚本文件 jps-cluster.sh 查看所有电脑的进程,如图所示,表示成功了

请添加图片描述
11、启动yarn平台 start-yarn.sh
请添加图片描述

12、可以通过图形化的界面访问我们的hdfs以及yarn平台
hdfs平台的访问地址: 192.168.32.137:50070
请添加图片描述

访问yarn平台: 192.168.32.137:8088

请添加图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值