一、安装JDK
tar –zxvf jdk-8u111-linux-x64.tar.gz /Users/wyd/software
- 配置JDK环境变量
vim ~/.bash_profile
文件中添加(注意看自己的安装路径)
export JAVA_HOME= /usr/local/jdk1.8.0_111/
export PATH=$JAVA_HOME/bin:$PATH
- 使用 source 命令使环境变量生效
source ~/ .bash_profile
- 验证环境变量是否正确
java -version
图片.png
二、修改主机名
- 修改主机名
sudo scutil --set HostName name
查看
hostname
image
- 配置host文件,终端输入
vim /etc/hosts
image
文件中加入
127.0.0.1 master
执行source /etc/hosts 使文件失效
source /etc/hosts
image
三、免密钥登录配置
<p>问:为何要配置免密匙登录?
<p>答:远程登录的时候需要验证,你要是不嫌麻烦每次启动hadoop集群的时候输入密码,反正我懒,所以配置下
- 生成私钥和公钥
ssh-keygen -t rsa
通过 ssh-keygen 命令来生成密钥对在.ssh 目录下(会有提示,回车即可)
此命令执行后,会在~/.ssh 目录下生成私钥 id_rsa 和公钥 id_rsa.pub)
- 将 id_rsa.pub 中的公钥信息保存到authorized_keys 中
cat id_rsa.pub >> authorized_keys
图片.png
- 修改文件授权
chmod 600 ./authorized_keys
图片.png
4、验证是否成功
ssh master
image
三、 Hadoop 配置部署
- 新建一个文件夹用来放所有关于大数据安装环境,我这里叫software,你随意开心就好。
mkdir software
图片.png
提取码: e65w
- 解压安装包
tar -zvxf hadoop-2.7.3.tar.gz
图片.png
- 新建文件夹存储hadoop相关数据就叫bigdata
mkdir bigdata
-
此时就到修改配置文件了,进入hadoop安装目录,直接上图
图片.png - 配置环境变量 core-site.xml
执行:vim core-site.xml
把以下代码复制到 core-site.xml(注意下图中标红的地方,一定不能出错,切记!切记!切记!)
<configuration>
<property>
<!-- 指定 hadoop 运行时产生文件的存储路径 -->
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<!-- hdfs namenode 的通信地址 -->
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.proxyuser.wyd.groups</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.wyd.hosts</name>
<value>*</value>
</property>
</configuration>
image
7、配置文件系统 hdfs-site.xml(注意下图标红的地方不能出错,切记!切记)
该文件指定与 HDFS 相关的配置信息。需要修改 HDFS 默认的块的副本属性,因为 HDFS 默认情况下每个数 据块保存 3 个副本,而在伪分布式模式下运行时,由于只有一个数据节点,所以需要将副本个数改为 1;
vim hdfs-site.xml
图片.png
<configuration>
<property>
<!-- 指定 HDFS 存储数据的副本数目,默认情况下是 3 份-->
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<!-- name node 存放 name table 的目录 -->
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<!--datanode 存放数据 block 的目录 -->
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
图片.png
- 配置计算框架 mapred-site.xml,指定MapReduce 作业相关的配置属性
文件中是mapred-site.xml.template 将其重命名为 mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<configuration>
<property>
<!-- 指定 mapreduce 编程模型运行在 yarn 上 -->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.done-dir</name>
<value>/user/history/done</value>
</property>
<property>
<name>mapreduce.jobhistory.intermediate-done-dir</name>
<value>/user/history/done_intermediate</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
image
- 配置文件系统 yarn-site.xml,注意下图中标红的地方,和你主机名称保持一致
vim yarn-site.xml
<configuration>
<property>
<!-- mapreduce 执行 shuffle 时获取数据的方式 -->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>
</configuration>
image
10、Hadoop namenode 格式化
hdfs namenode -format
看到successfully formatted" 和 "Exitting with status 0" 的提示,如果是"Exitting with status 1"则表示失败,我这里格式化了就不再操作
11、启动hadoop集群
start-all.sh
12、查看进程是否正常,是否有这几个进程
namenode、secondarynamenode、datanode、resourcemanager、nodemanager
jps
如图标红的进程,其余不用管
image
13、查看webUI是否正常
浏览其中输入
http://master:50070/
如图则表示正常:
image到这里hadoop集群就搭建好了,如有问题欢迎指正,谢谢!
网友评论