mac OS X安装配置hadoop3.3.0

Mac OS使用brew安装Hadoop3.x及环境配置

#Java/Hadoop安装

以下内容针对的是macOS X系统下安装配置Hadoop,参考了其他前辈的经验以及尚硅谷的大数据培训视频

Hadoop安装

1.1安装准备一:Java安装

Hadoop是基于Java开发的,所以安装Hadoop前需要安装好Java,也即JDK。直接在Java官网下载DMG安装包,安装步骤安装即可,结束后在终端输入命令测试是否安装成功。

$ java -version

1.2安装准备二:homebrew安装

终端输入命令:

/bin/zsh -c “$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)”

(速度较快,中文指引)
参考链接:HomeBrew Mac OS X 的包管理器

安装速度要看当前网络状况好坏,一般5-10分钟即可。

安装brew完成。

1.3安装Hadoop

采用homebrew安装,终端输入:

brew install hadoop

至此,Hadoop安装成功。Hadoop环境变量也无需设置。运行Hadoop测试:

hadoop version

没有报错即安装成功。

2.测试Hadoop是否安装成功

Hadoop有三种安装模式:单机模式,伪分布式模式,分布式模式。
分布式模式需要在多台电脑上面测试,这里只测试前面两种,即单机模式和伪分布式模式。

2.1测试单机模式

2.1.1 grep官方案例:
  1. 打开Hadoop文件夹
    终端输入cd /usr/local/Cellar/hadoop/3.3.0
$ mkdir input
$ cp libexec/etc/hadoop/*.xml input/
$ bin/hadoop jar libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.0.jar grep input/ output 'dfs[a-z.]+'
$ cat output/*

部分截图如下:

注意:Hadoop/3.3.0目录下事先不能有output文件夹,否则会报文件已存在异常FileAlreadyExistsException

2.1.2 官方WordCount案例

单词计数wordcount是最简单也是最能体现MapReduce思想的程序之一,可以称为MapReduce版”Hello World”,单词计数主要完成功能是:统计一系列文本文件中每个单词出现的次数.

  1. 创建wcinput目录
$ cd /usr/local/Cellar/hadoop/3.3.0
$ mkdir wcinput 
  1. 在wcinput文件夹下创建wc.input文件
$ cd wcinput
$ touch wc.input
  1. 编辑wc.input文件
    $ vim wc.input
    在文件中键入如下内容(可输入任意单词)
hadoop yarn
hadoop mapreduce
atguigu
atguigu

保存退出
:wq
4. 回到hadoop/3.3.0目录,执行程序

$ hadoop jar libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.0.jar wordcount wcinput/ wcoutput
  1. 查看结果
$ cd wcoutput
$ cat part-r-00000
atguigu 2
hadoop 2
mapreduce 1
yarn 1

2.2 测试伪分布式模式

2.2.1 设置远程登录(此步可跳过)
  1. 网络共享设置
    准备ssh链接localhost
    参考链接:MacOS-SSH连接LocalHost

“远程登录“选择”所有用户“。
1.终端输入:ssh-keygen
然后一直回车即可。

输入命令后,第一个提示问你存在哪里,默认就好,直接回车。第二个问题让你输入一个密码,这个密码就是以后别人在拥有私钥的情况下,进入你主机需要的密码。输入完再输入一次,就会生成一个钥匙跟一把锁。
d_rsa叫私钥,也就是钥匙,id_rsa.pub叫公钥。
这里需要注意的一点是,在建立钥匙的过程中,一直按enter就可以了,如果你输入了密码,之后,在SSH连接的时候,依然还要输入这个密码,非常麻烦,因为这次配SSH是为了在mac上单Hadoop的伪分布式,要的效果就是不输入任何东西,直接连接。所以,请一直enter,默认或者用户目录下创建 .ssh文件夹,里面放着公钥和密钥。
2.终端输入:

cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys

没有返回任意值即表示成功,再次输入:ssh localhost
没有提示输入密码即表示配置成功。

  1. java_home环境变量配置(此步可跳过)
    (在macOS X上不需要单独配置java_home环境变量。)
翻译:
从技术上讲,唯一需要的环境变量是JAVA_HOME。
其他的都是可选的。然而,默认的情况可能不是这样
优先。许多网站在Hadoop之外配置这些选项,
比如在/etc/profile.d中

要使用的java实现。默认情况下,这个环境变量在除OS X之外的所有平台上都是必需的!
2.2.2配置相关文件
  1. 配置:core-site.xml
    可以直接在/usr/local/Cellar/hadoop/3.3.0/libexec/etc/hadoop文件夹下找到该xml文件,用任意文本编辑器修改内容,我自己用的sublime。而后再用终端vim命令打开文件,不做修改保存退出即可。
<configuration>
<!-- 指定HDFS中NameNode的地址 -->
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://localhost:9000</value>
	</property>
	<!-- 指定Hadoop运行时产生的文件的存储目录 -->
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/usr/local/Cellar/hadoop/3.3.0/data/tmp</value>
	</property>
</configuration>
  1. 配置hdfs-site.xml
<configuration>
	<!-- 指定HDFS副本上数量 -->
	<property>
		<name>dfs.replication</name>
		<value>1</value>
	</property>
</configuration>
  1. 启动集群
    3.1 格式化NameNode(第一次启动时格式化,以后不要总格式化)
    $ bin/hdfs namenode -format
    3.2 启动NameNode,在Hadoop/3.3.0/目录下
    $ sbin/hadoop-daemon.sh start namenode
    3.3 使用jps查看是否启动成功
    3.4 启动datanode
    $ sbin/hadoop-daemon.sh start datanode
    3.5 使用jps查看是否启动成功

    若namenode启动不成功,可以尝试3.1步多次格式化namebode。

3.6查看集群
用浏览器打开http://localhost:9870
(Hadoop2.x默认端口是50070,3.x默认端口是9870)

部署成功。

参考链接:
Mac 下安装和配置 Hadoop
macOS 安装Hadoop教程-单机-伪分布式配置

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值