zoukankan      html  css  js  c++  java
  • Hadoop伪分布式搭建实验总结

    实验1:

    启动一个AWS实例,并且将它改变大小,以及对其进行监控和管理。

    1. 创建EC2实例
    2. 观察实例的参数
    3. 更新安全组协议,增加web服务(http协议)
    4. 重新定义实例大小:实例的类型和EBS卷
    5. 探索EC2的限制
    6. 尝试终止保护

    实验2:

    创建一个Amazon弹性存储块(Amazon EBS),将EBS挂载到一个EC2实例上,在EBS上创建并配置文件系统,以及用快照实现EBS的备份和恢复。

    1. 新建EBS卷
    2. 连接卷到一个实例
    3. 登陆到创建的实例
    4. 创建并配置文件系统
    5. 创建一个EBS快照
    6. 恢复EBS快照

    实验3:

    在VPC中启动了一个EC2实例,在实例中运行着一个web server,对外提供web服务。

    1. 创建自己的私有云
    2. 创建附加子网
    3. 创建一个私有云的安全组
    4. 登陆到第一个web服务实例

    实验4:

             添加了mysql关系型数据库并配置了相应的子网和安全组,通过web server使用数据库进行数据的存储。

    1. 为RDS 数据库实例创建一个VPC安全协议组
    2. 创建一个数据库子网组
    3. 创建一个RDS数据库实例
    4. 访问上述创建的数据库

    关键问题分析与解决:

    在实验一中的任务1安装你的亚马逊EC2实例,在填写下面的命令时直接复制粘贴的,导致在任务3中无法进行。询问研究生学长后,得知可能是复制导致的问题,建议自己手打一边。一次我重新做了一边任务1,将命令自己手打进去,重新将IPV4地址拷贝进浏览器,回车后运行成功。仔细分析可能是复制命令时会将一些多余的空格复制进去,导致命令出错。

    图 1实验一

             在实验二中,因为之前的密钥文件没有保存,导致实验无法进行下去,不得不重新创建一个实例。还有就是获取PPK文件的时候需要通过pem文件转换,下载专门的软件。实验过程中需要通过PUTTY来访问云端,同时需要将云端实例的安全组里SSH端口打开。

             实验三执行遇到了一点小问题,做到“Name tag: Type: Public Subnet 2”处时出现了点小错误。后来发现是实验指导书上的错误,这个地方的子网应该是私有的才对。

             实验四做到任务四时后出现报错,原因是创建数据库时没有选择Only enable options eligible for RDS Free Usage Tier Info。重新建立数据库并正确操作,室验成功。

     

     

     

    Hadoop伪分布安装

    实验环境:

    VMware workstation Pro.exeubuntu-18.04.1-desktop-amd64.isohadoop-0.20.2.tar.gz(在课件上的网站已经没有此版本了,因此我只能到官网上下载)。

    前期准备:

             修改镜像源,换成国内的镜像源,这样下载速度还快;安装vim,方便后期编辑文件。

    实验步骤及遇到的问题:

    1、安装jdk和配置java环境变量

    首先在官网上下载jdk压缩包,本次实验所用的是jdk-8u191-linux-x64.tar.gz版本。将压缩包解压到虚拟机,然后配置环境变量,使用vi /etc/profile添加以下信息:

    export JAVA_HOME=/java/jdk1.8.0_191

    export JRE_HOME=$JAVA_HOME/jre

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

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

    最后重启系统,在终端输入Java –version,显示如下信息,jdk安装成功。

    图 2 JDK安装成功

    2、安装ssh

    安装过程中,不知道是什么故障,执行sudo apt-get install ssh会报错,报错如下:

    图 3 ssh安装报错

    但是我换了条安装命令sudo apt-get install openssh-server后就可以,具体原因还没有搞清楚。

    通过which shh和which shhd查看ssh是否安装;通过ps aux | grep ssh查看ssh是否安装;通过sudo ufw status查看防火墙是否已关闭;通过sudo netstat -tunlp | grep ssh查看ssh连接端口。检查完毕,安装成功。

    图 4 检查ssh安装

    3、安装Hadoop

    这一步比较简单,直接将下载好的压缩包拷贝到虚拟机里即可。

    4、配置Hadoop

    这一步按照课件里面的说明,先修改hadoop-env.sh文件,添加java的环境变量;然后依次修改core-site.xml、hdfs-site.xml和mapred-site.xml文件。

    5、免密码SSH设置

    首先通过ssh-keygen –t rsa命令生成密钥对,执行过程中一路回车,选择默认设置。

    图 5 ssh生成密钥

     

             然后进入.ssh目录下,执行命令cp id_rsa.pub authorized_keys。

    图 6 ssh配置

             到此为止,所有的伪分布安装基本完成,下面进行测试,检验是否安装成功。

    6、结果测试

    首先需要先格式化分布式文件系统,执行命令bin/hadoop namenode –format。

    图 7 格式化

             然后执行bin/start-all.sh启动namenode守护进程,启动Hadoop的五个进程。

    图 8 启动Hadoop

             到此Hadoop已经启动运行。

             可以在终端输入命令jps查看。

    图 9 jsp命令查看

             也可以通过在浏览器输入网址localhost:50070和localhost:50030查看。

    图 10 localhost:50030浏览器查看

     

    图 11  localhost:50070浏览器查看

     

             下面来运行一个wordcount实例来进一步熟悉Hadoop。

             首先在Hadoop目录下建立input文件夹,里面写有两个txt文件,text1.txt写有hello wangjian, text2.txt写有hello hadoop。将本地系统中的input目录复制到HDFS的根目录下,重新命名为in,运行Hadoop自带的WordConut实例。Out为数据处理完后的输出目录,默认为在Hadoop的根目录下,运行之前必须清空或者删除out目录,否则会报错。

             任务执行完毕,实验结果如下:

    图 12 WordConut分词

    也可以把输出文件从Hadoop分布式文件系统复制到本地文件系统查看。

    图 13 结果复制到本地文件系统

             到此,伪分布式实验大功告成。执行bin/stop-all.sh停止Hadoop守护进程。

    实验总结:

             在Hadoop伪分布式的安装配置过程中,遇到许许多多的问题,安装Java jdk,配置环境变量,安装ssh等等,出现问题就到百度和csdn上寻找解决方法。同时在本次实验中认识到了自己的不足,对Linux系统不够熟悉,在以后的学习中需要进一步努力。

             实验考验是一个人的耐心,实验步骤要一步一步地做,每一步都要严谨认真。

             通过本次实验,只是简单掌握了Hadoop伪分布式的搭建过程,对于完全分布式没有做成功,也是很遗憾,因为时间紧张,在截至提交实验报告前,完全分布式遇到了点问题,到现在还没有解决。因为笔记本配置比较低,硬盘内存不够,只能搭建两台虚拟机。打算用wangjian这台作为namenode,wangjian1这台作为datanode。但是搭建两台以后,只能一台联网。具体问题还在研究。

    图 14 分布式配置中修改hosts文件

  • 相关阅读:
    vue 仿IOS 滚轮选择器
    一道题目学ES6 API,合并对象id相同的两个数组对象
    Express中间件原理详解
    webpack原理与实战
    LS522 体积小低电压低成本的13.56MHz非接触式读写卡芯片,集成了在13.56MHz下所有类型的被动非接触式通信方式和协议,支持ISO14443A/B的多层应用( PIN对PIN MFRC522 )
    SP213EEA-L/TR +5V高性能RS232收发器
    多速率SDI集成接收器 SDI解码芯片 GS2971A-IBE3
    低电容3.3V TVS管 R CLAMP3304N.TCT
    高ESD耐压/TVS二极管 UCLAMP2804L.TCT
    高性能正电压稳压管SC4215HSETRT
  • 原文地址:https://www.cnblogs.com/wangjianupc/p/10587202.html
Copyright © 2011-2022 走看看