hadoop安装和HDFS基础

  1. 点开始安装:
  • 安装的同时设置一下root密码(如果密码简单需要点击两次完成)

  • 等待,安装完成之后需要重启机器,点击重启后就可以用了

  1. 重启后:
  • 登录

  • 为了与Windows连接起来查看liunxIP

t:3.jpg

  1. 我们配置一个IPv4的地址,让他和Windows通讯:
  • 安装完VirtualBox之后我们的电脑上会出现:

t:4.jpg

  • 点击右键属性,下拉框中找到{Internet 协议版本}点进去,看到其IP地址为192.168.56.xxx(IP可随意更改),我们根据192.168.56网段来配置

  • 设置IP命令:

vim /ect/sysconfig/network-scripts/ifcfg-eth0

  • 没用的删掉,写入,保存 :

t:6.jpg

  • 设置网关命令:

vim /etc/sysconfig/network

  • 写网关IP可上网(不加#号去掉,#号是注释):

t:8.jpg

  1. 测试:
  • liunx:ping一下Windows机器:ping+IP地址

  • Windows:Windows ping一下liunx:ping+IP地址

  1. 将JDK和VirtualBox用Xshell上传到虚拟机。
  • 安装命令:rpm -ivh jdk-8u91-liunx-x64.rpm
  1. 验证java是否装好了
  • 出现了各个包的信息就是装好了

t:10.jpg

安装hadoop

===================================================================

  1. 解压:

命令:tar -xvf hadoop-2.7.3.tar.gz

  1. 配置hadoop

命令:vim hadoop-env.sh

为了告诉hadoop,JDK在那

  • 写入JDK的路径

在这里插入图片描述

  1. 将hadoop执行命令的路径加入到环境变量中
  • 命令:vim /etc/profileh

在最后一行插入

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

  • 执行一下:source /etc/profile要不然不起作用。
  1. 找到虚拟机图标右键复制即可复制虚拟机(全部复制)

需要将复制出来的三台机器的IP地址更改。

  1. 启动hadoop。
  • 在hadoop目录下有一个core-site.xml配置文件,对其进行配置是为了知道master位于那一台机器上被谁管理的

在这里插入图片描述

  • 在最后加入,加入后就可以启动hadoop了

t:14.jpg

  1. 我们修改一下host文件,(知道每台对应的IP)
  • 命令:vim /etc/host

t:15.jpg

  1. 启动master和slave
  • master(进程中看到nameNode就是启动了):

t:16.jpg

  • slace(进程中看到dateNode就是启动了):

t:17jpg

  • 逻辑关系:

t:18jpg

HDFS初识

=================================================================

  • 用来存文件的,有一台坏了的话,不会妨碍其他的对外提供服务

物理和逻辑架构

在这里插入图片描述

HDFS架构

在这里插入图片描述

启动集群

  1. 在master上启动hadoop-daemon.sh start namenode

  2. 在slave上启动hadoop-daemon.sh start datanode

  3. 用jps指令观察执行结果

  4. 用hdfs dfsadmin -report观察集群配置情况

  5. hadoop fs -rm/rilename

  6. 通过heep://192.168.56.100:50070界面观察集群运行情况

  7. 用hadoop-daemon.sh stop…手动关闭集群

对集群进行集中管理

  • 在/usr/local/hadoop/etc/hadoop 的目录下有一个 slave文件,他里面记录着当前这台namenode管理者多少台datanode,每台datanode式位于那台机器上,我们可以更改里面的内容,有多少台datanode就添加多少台

1.修改master上/etc/hadoop/slave文件,每一个slave占一行

2. 使用start-dfs.sh启动集群,并观察结果,使用stop-dfs.sh停止集群

3. 配置免密SSH远程登录

1.cd

2.is -la

3.cd .ssh

4.ssh-keygen -t rsa(四个回车)

5.会用rsa算法生成私钥id_rsa和公钥id_rsa.pub

6.ssh-copy-id slavex

7.再次ssh slave1

8.此时应该不在需要密码

4.重新使用start-dfs.sh启动集群

5.使用hdfs dfs 或者hadoop fs 命令对文件进行增删改查

  • hadoop fs -ls/

  • hadoop fs -put file/

  • hadoop fs -mkdir /dimame

  • hadoop fs -text /filename

  • hadoop fs -rm /filename

6.hadoop文件默认的存储位置

  • 但是tmp目录会不定时被系统进行清除,如果不自己指定存储位置的话,就会时而好用,时而不好用,所以真正程序需要建议更改,不然会丢失数据

cd /tmp(临时文件)

7.我们来写程序,做远程访问

  • 使用HTTP协议:

public static void main(String[] args) throws Exception{

URL url = new URL(“http://www.baidu.com”);

InputStream in = url.openStrean();

//4096指的是他的缓冲区是多大,

//true指的是读完输入流然后对他进行自动化的关闭

IOUtils.copyBytes(in,System.out,4096,true);

}

  • 使用HDFS协议:

public static void main(String[] args) throws Exception{

//FsUrlStreamHandlerFactory(),指明了如果遇到hdfs就讲URL地址交给他处理

URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());

URL url = new URL(“hdfs://192.168.56.100:9000/hello.txt”);

InputStream in = url.openStrean();

//4096指的是他的缓冲区是多大,

//true指的是读完输入流然后对他进行自动化的关闭

IOUtils.copyBytes(in,System.out,4096,true);

}

  • 实现增删改查

public static void main(String[] args) throws Exception{

configuration conf = new Configuration();

conf.set(“fs.defaultFS”,“hdfs://192.168.56.100:9000”);

fileSystem fileSystem = FileSystem.get(conf);

//mkdirs创建目录(在根目录下创建一个叫msb的目录)

boolean success = fileSystem.mkdirs(new Path(“/msb”));

System.out.println(success);

//判断文件是否存在

success = fileSystem.exists(new Path(“/hello.txt”));

System.out.println(success);

//删除目录

success = fileSystem.delete(new Path(“/msb”),true);

System.out.println(success);

//判断文件目录是否存在

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
且无助。**

因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

[外链图片转存中…(img-Mw8r53aq-1715689052209)]

[外链图片转存中…(img-ZkxW5CtR-1715689052209)]

[外链图片转存中…(img-RVsegygo-1715689052210)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值