今天是2020年4月8日,是一个平凡而又特殊的日子,武汉在经历了77天的封城之后,于今日0点正式解封。从1月14日放寒假离开武汉,到今天已近3个月,学校的花开了又谢了。随着疫情好转,春回大地,万物复苏,武汉这座城市又活了起来。想念桂子山!

在家里这段时间学习了JavaSE基础,学习了Linux的基本命令,安装Linux虚拟机,用Xshell远程登录Linux服务器,用Xftp在本地Windows系统和远程Linux系统之间上传下载文件,学习了大数据入门,对Hadoop生态系统有一个初步的了解,在Linux系统中安装Hadoop,安装jdk,安装hbase,另外还学习了MySQL基础,会简单的增删改查。然后从今天开始,希望在这里记录自己每天的学习,希望每天都有一点点进步。

言归正传,接下来对最近学习的Hadoop做一个总结。主要是从安装虚拟机到安装jdk和Hadoop这一部分内容。

具体步骤:

1、在VMware12上面安装Linux虚拟机(CentOS-6.10版本),并且能够联网,然后安装Vmware Tools,方便Linux和Windows之间复制粘贴,熟练掌握Linux文件系统的目录结构,学会Linux的基本指令和用户管理。

(安装 Vmware 和 centos6.10 可参考 https://blog.csdn.net/lx940112/article/details/80159509  和   https://www.cnblogs.com/cao-yin/p/11550178.html)

(安装Vmware Tools 可参考 https://www.cnblogs.com/yujianadu/p/10454915.html)

(学习Linux可参考 http://c.biancheng.net/linux_tutorial/)

2、安装XShell和XFTP5两个软件,分别用于远程登录和远程上传下载文件。

(安装 XShell 和 Xftp 可关注微信公众号:软件安装管家,并回复 xshell)

(在连接XShell之前,需要给Linux进行网络配置,参考 https://jingyan.baidu.com/article/76a7e409ed694dfc3a6e1548.html)

(XShell连接到Linux,参考 https://jingyan.baidu.com/article/36d6ed1f7520991bcf4883e6.html)

3、克隆虚拟机(Hadoop100克隆出Hadoop101 )(这一步伪分布式不是必须)

  第一步:在hadoop100中先创建hadoop用户,关闭防火墙。

  第二步:克隆

  第三步:进行Hadoop 101的相关设置:修改ip地址、配置网络、修改主机名称、关闭防火墙。(https://blog.csdn.net/qq_39192827/article/details/85952823)

  开机,登录root账号

(1)修改克隆机的ip地址

终端输入 vim  /etc/udev/rules.d/70-persistent-net.rules  然后三件事

第一件:删除(dd命令)父本克隆过来的网卡,即第一个SUBSYSTEM

第二件:把下面一个SUBSYSTEM中的网卡名(NAME)改为eth0

第三件:复制MAC地址,ATTR{address}==“复制这部分内容”

:wq  保存退出

(2)配置网络

终端输入 vim  /etc/sysconfig/networking-scripts/ifcfg-eth0  然后两件事

第一件:修改MAC地址,HWADDR=刚刚复制的MAC

第二件:修改IP地址,192.168.1.100 ----改为---> 192.168.1.101

(3)修改主机名称

终端输入 vim  /etc/sysconfig/network  然后

修改HOSTNAME=hadoop101

(4)配置主机名称映射,方便通信

终端输入  vim  /etc/hosts

在最后添加  192.168.1.100  hadoop100

192.168.1.102  hadoop102(如果有的话就添加)

注:在Windows系统中也可以添加主机名称映射,具体方法如下:

进入 C:\windows\System32\drivers\etc\hosts 最后同样方法添加 ip地址 主机名称

(5)reboot重启,ping测试通信

4、安装jdk并配置环境变量,安装Hadoop并配置环境变量。

(https://blog.csdn.net/SXY16044314/article/details/90550543)

准备工作

(1)给普通用户授予root权限

大部分和安全相关的命令,只有root用户才有权限执行,如果希望普通用户可以直接使用,又避免切换到root用户的麻烦操作,可以为普通用户赋予root权限。

首先了解 sudo 和sudoers  (https://blog.csdn.net/iteye_2642/article/details/82510194)

sudo是Linux下常用的允许普通用户使用超级用户权限的工具,sudo的配置文件是sudoers文件,该配置文件的位置是/etc/sudoers。

最简单的配置,让普通用户(用户名为support)具有所有的root权限,通过修改 /etc/sudoers,方法如下:

su  root   //需要在root用户

vim  /etc/sudoers     //去95行,G+95,复制一行,在下面再添加一条配置

support  ALL=(ALL)  ALL

然后esc,接着:wq保存退出

注:修改完毕,现在可以用support帐号登录,然后用命令 sudo ,即可获得root权限进行操作。  (super user do)

(2)关闭防火墙

(防止无法访问hdfs,需要使用sudo命令)

如果需要克隆虚拟机,那么在克隆之前就关闭,避免克隆之后给每台虚拟机关闭。

这里用到service后台服务管理:

service  + 服务名 + 命令

其中命令包括:start开启 / stop关闭 / restart 重启 / status查看服务状态

查看防火墙状态:sudo  service  iptables status

关闭防火墙:sudo service iptables stop

正式安装

(1)在/opt目录下面创建/software目录和/module目录

其中/software目录用于存放今后需要用到的安装压缩包jar包(jdk、hadoop、hbase等),即利用xftp软件将Windows里面的安装包直接传输到/software下面,然后将压缩包解压到/module目录下面。

注:可以利用以下命令更改文件夹的所有者和所在组:

sudo  chown  guan:guan  文件名  -R        // -R表示递归

解压命令为:

tar  -zxvf  文件名  -C  解压到的目录(这里是/opt/module)

(2)重命名

为了方便使用,可以用以下命令给文件重命名:

mv   hadoop-2.7.2   hadoop

mv   jdk-1.8.2  jdk

(3)配置环境变量

进入jdk目录,使用pwd命令查看路径,将此路径复制下来。

进入hadoo目录,使用pwd命令查看路径,将此路径复制下来。

然后 进入/etc,编辑profile文件  vim  profile

在profile中添加的内容如下:

###JAVA_HOME

export  JAVA_HOME=刚刚复制的jdk路径

export  PATH=$PATH:$JAVA_HOME/bin

###HADOOP_HOME

export  HADOOP_HOME=刚刚复制的hadoop路径

export  PATH=$PATH:$HADOOP_HOME/bin

export  PATH=$PATH:$HADOOP_HOME/sbin

然后 :wq   保存退出,至此环境变量配置好了。

(4)让刚刚配置的环境变量生效并测试

/etc下命令:  source  profile

测试是否安装成功:

java  -version

hadoop  version

至此jdk和Hadoop安装完成!

Hadoop安装完成之后,接下来就是本地模式、伪分布式和完全分布式的配置和使用。

Hadoop入门学习整理(一)的更多相关文章

  1. Hadoop入门学习整理(二)

    2020-04-15 在上一篇文章中介绍了Linux虚拟机的安装,Hadoop的安装和配置,这里接着上一篇的内容,讲Hadoop的简要介绍和简单使用, 以及HBase的安装和配置. 1.首先要了解Ha ...

  2. hadoop入门学习整理

    技术性网站 1.http://dongxicheng.org/ 2.http://www.iteblog.com/ 3.http://www.cnblogs.com/shishanyuan/p/414 ...

  3. Hadoop入门学习整理(三)

    1.Hive 的安装 下载tar包,并且要注意和Hadoop版本兼容. 下载  ----->  传输 -------> 解压     即可. 然后配置环境变量和相关配置信息.   参考: ...

  4. Hadoop入门学习笔记---part1

    随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...

  5. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  6. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  7. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  8. hadoop入门学习

    hadoop入门学习:http://edu.csdn.net/course/detail/1397hadoop hadoop2视频:http://pan.baidu.com/s/1o6uy7Q6HDF ...

  9. Hadoop入门学习路线

    走上大数据的自学之路....,Hadoop是走上大数据开发学习之路的第一个门槛. Hadoop,是Apache的一个开源项目,开发人员可以在不了解分布式底层细节,开发分布式程序,充分利用集群进行高速运 ...

随机推荐

  1. 运用sklearn进行线性判别分析(LDA)代码实现

    基于sklearn的线性判别分析(LDA)代码实现 一.前言及回顾 本文记录使用sklearn库实现有监督的数据降维技术——线性判别分析(LDA).在上一篇LDA线性判别分析原理及python应用(葡 ...

  2. MIT 6.828 | JOS | 关于虚拟空间和物理空间的总结

    Question: 做lab过程中越来越迷糊,为什么一会儿虚拟地址是4G 物理地址也是4G ,那这有什么作用呢? 解决途径: 停下来,根据当前lab的进展,再回头看上学期操作系统的ppt & ...

  3. GridBagConstraints详解

    名称 作用 默认值 常量 位置 gridx 行(x)的第一个单元格 0并且为非负数 RELATIVE(相对的) 紧跟前一个组件的后面 gridy 列(y)的第一个单元格 0并且为非负数 RELATIV ...

  4. mongodb在win10下的安装和配置

    一.准备 下载mongodb https://www.mongodb.com/download-center/community 该实例中使用的是:mongodb-win32-x86_64-2008p ...

  5. Jmeter 常用函数(15)- 详解 __StringFromFile

    如果你想查看更多 Jmeter 常用函数可以在这篇文章找找哦 https://www.cnblogs.com/poloyy/p/13291704.htm 作用 从文本文件读取字符串,每次一行 需要注意 ...

  6. Storm与SparkStreaming对比

    Storm与SparkStreaming对比 ◆ Spark Streaming 批处理的性能比Storm高出几十倍.◆ Streaming采用小批量模式,Storm是一条消息一条消息的计算.◆ St ...

  7. Thrift IDL基本语法

    简言:介绍Thrift的IDL基本语法,初次使用或多或少的会有很有"坑"要踩,但是我们要遇山挖山,遇海填海,在学习的道路上坚定的走下去,方可日后吹牛B! IDL Thrift 采用 ...

  8. django学习(一)

    1.django版本的选择问题 在学习django之前,我们先做一个基本问题的讨论,这个问题是关于django版本的问题.我们进入官网,可以查看django版本的情况. 关于django的版本的问题, ...

  9. Java中的判断实例

    .getClass().getName() 这是最常见的一种判断类型的方法 instanceof 用于判断 对象 是否为某个类的实例 Boolean值 各种is方法 isAnnotationPrese ...

  10. FormData格式的数据

    向服务器提交的是FormData格式的数据 || 必须添加以下两个配置项 contentType:false, processData:false,