第一关 配置开发环境 - JavaJDK的配置
首先讲述主要问题,不让兄弟姐妹们白做,必须在做完第一关后立刻做第二关,否则第一关配置好的JDK文件、app目录找不到。具体问题如图:
任务描述
本关任务:配置JavaJDK
。
相关知识
配置开发环境是我们学习一门IT
技术的第一步,Hadoop
是基于Java
开发的,所以我们学习Hadoop
之前需要在Linux
系统中配置Java
的开发环境。
1.首先在右侧命令行中创建一个/app
文件夹,我们之后的软件都将安装在该目录下。
命令:mkdir /app
然后,切换到/opt
目录下,来查看一下提供的压缩包。
mkdir /app
cd /opt
2.解压JDK文件并移动到 /app文件夹,输入以下命令。
tar -zxvf jdk-8u171-linux-x64.tar.gz
mv jdk1.8.0_171/ /app
3.输入以下代码编辑配置文件。
vim /etc/profile
4.打开文本编辑后的使用方法,按 “i” 进入输入代码模式,将以下代码输入到最后一行,此代码不包含空格。输入完成后按ESC键,然后按shift + :后输入wq即可返回命令行。
JAVA_HOME=/app/jdk1.8.0_171
CLASSPATH=.:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
5.返回命令行后输入以下代码使配置成功。
source /etc/profile
6.输入以下来验证是否配置成功,若配置成功会出现下面图片内容。
java -version
第二关 配置开发环境 - Hadoop安装与伪分布式集群搭建
此关务必在做完第一关后立刻完成第二关,否则在第一关创建的app目录找不到,以及最后启动的时候找不到JDK配置好的文件。
1. 在第一关后,已经配置好JDK文件,也存在app文件夹,将Hadoop压缩包解压后移动到/app目录下。
cd /opt
ll
tar -zxvf hadoop-3.1.0.tar.gz -C /app
2.切换app目录修改名字,按以下代码逐条修改
cd /app
ll
mv hadoop-3.1.0/ hadoop3.1
ll
3.输入以下代码设置免密登录。在第一条命令输入完成后要继续按一次enter,然后再输入第二条指令。如图所示:
ssh-keygen -t rsa -P ''
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
4.不需要重新启动,继续修改以下六个文件内容。
- hadoop-env.sh;
- yarn-env.sh ;
- core-site.xml;
- hdfs-site.xml;
- mapred-site.xml;
- yarn-site.xml。
首先先切换到hadoop目录下
cd /app/hadoop3.1/etc/hadoop/
vim hadoop-env.sh
打开文本编辑器后按上面叙述的方法,在文件最后一行输入以下代码,并按shift + :输入wq返回命令行。
# The java implementation to use.
#export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/app/jdk1.8.0_171
5.修改yarn-env.sh
vim yarn-env.sh
加入以下代码:
export JAVA_HOME=/app/jdk1.8.0_171
6.core-site.xml文件
vim core-site.xml
将以下代码添加到<configuration></configuration>之间。
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
<description>HDFS的URI,文件系统://namenode标识:端口号</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
<description>namenode上本地的hadoop临时文件夹</description>
</property>
7.hdfs-site.xml文件,添加到上面相同位置。
<property>
<name>dfs.name.dir</name>
<value>/usr/hadoop/hdfs/name</value>
<description>namenode上存储hdfs名字空间元数据 </description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/hadoop/hdfs/data</value>
<description>datanode上数据块的物理存储位置</description>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
8.mapred-site.xml文件
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
9.yarn-site.xml文件
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>192.168.2.10:8099</value>
<description>这个地址是mr管理界面的</description>
</property>
10.根据以下命令逐条输入建立文件夹
mkdir -p /usr/hadoop/tmp
mkdir /usr/hadoop/hdfs
mkdir /usr/hadoop/hdfs/data
mkdir /usr/hadoop/hdfs/name
11.将Hadoop添加到环境变量中,输入vim /etc/profile,打开后添加以下代码
#set Hadoop Environment
export HADOOP_HOME=/app/hadoop3.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
12.输入命令行 source /etc/profile修改生效
13.在/hadoop3.1/sbin
路径下: cd /app/hadoop3.1/sbin
。 将start-dfs.sh
,stop-dfs.sh
两个文件顶部添加以下参数。打开两个文件的方式都是vim+文件名
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
14.start-yarn.sh
,stop-yarn.sh
顶部也需添加以下:
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root