Hadoop是一个开源框架,用于存储和处理大规模数据集。
打开终端并输入以下命令来更新您的系统:
apt update
Hadoop需要Java环境,我们将安装OpenJDK 8。
apt install openjdk-8-jdk
安装完成后,验证Java版本:
java -version
如果出现相应的版本信息说明已经安装成功了。
那么apt install的java安装的目录在哪里呢?
- # which java
- /usr/bin/java
- # ls -l /usr/bin/java
- /usr/bin/java -> /etc/alternatives/java
- # ls -l /etc/alternatives/java
- /etc/alternatives/java -> /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
也就是/usr/lib/jvm/java-8-openjdk-amd64就是java安装目录即JAVA_HOME,后面会用到配置。
首先,我们需要下载Hadoop 3.3.6的tar.gz文件。您可以从Apache官方网站下载。
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
文件比较大,大概600多M,需要下载一会。
下载完成后,解压缩文件到/usr/local
目录下:
tar -xzvf hadoop-3.3.6.tar.gz -C /usr/local
编辑/etc/profile
文件,添加Hadoop和Java的环境变量:
vim /etc/profile
在文件末尾添加:
- export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
- export HADOOP_HOME=/usr/local/hadoop-3.3.6
- export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
- export HDFS_NAMENODE_USER=root
- export HDFS_DATANODE_USER=root
- export HDFS_DATANODE_SECURE_USER=root
保存并退出,然后应用更改:
source /etc/profile
查看hadoop是否安装成功
hadoop version
看到版本说明已安装成功,下面继续配置hadoop
您需要编辑Hadoop的配置文件,这些文件位于$HADOOP_HOME/etc/hadoop
目录下。
core-site.xml
- <configuration>
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://10.9.2.86:9000</value>
- </property>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>file:/usr/local/hadoop/tmp</value>
- <description>Abasefor other temporary directories.</description>
- </property>
- </configuration>
hdfs-site.xml
- <configuration>
- <property>
- <name>dfs.namenode.name.dir</name>
- <value>file:/usr/local/hadoop/dfs/name</value>
- </property>
- <property>
- <name>dfs.datanode.data.dir</name>
- <value>file:/usr/local/hadoop/dfs/data</value>
- </property>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- </configuration>
在启动Hadoop之前,需要格式化HDFS文件系统:
hdfs namenode -format
使用以下命令启动Hadoop:
start-dfs.sh
使用jps命令检查Hadoop进程:
jps
能看到NameNode
、DataNode
、SecondaryNameNode
和NodeManager
等进程正在运行。
通过浏览器访问:http://10.9.2.86:9870/