一、准备工作
1. 安装 Linux 操作系统
可以选择常见的 Linux 发行版,如 Ubuntu、CentOS 等。
2. 安装 JDK
Hadoop 是基于 Java 开发的,因此需要安装 JDK。
创建目录用于存放软件,例如:mkdir -p /export/servers。
下载并解压 JDK 安装包,如 tar -zxvf jdk-8u161-linux-x64.tar.gz -C /export/servers/。
配置环境变量,编辑 /etc/profile 文件,添加以下内容:export JAVA_HOME=/export/servers/jdk
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
使配置生效:source /etc/profile。
检查是否安装成功:java -version。
3. 配置 SSH 免密登录
在主节点上执行命令创建公钥和私钥。
将公钥添加到 authorized_keys 文件中。
如果报错,可尝试设置环境变量:export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
确保可以从主节点免密登录到其他节点。
二、安装 Hadoop
1. 下载 Hadoop
访问 Hadoop 官方网站(https://hadoop.apache.org/),选择适合系统的稳定版本进行下载。
2. 解压 Hadoop
将下载的文件移动到目标目录,如 /usr/local/,然后解压:
tar -xzvf hadoop-X.X.X.tar.gz -C /usr/local/
。
3. 配置环境变量
编辑 /etc/profile 文件,添加以下内容:
export HADOOP_HOME=/usr/local/hadoop-X.X.X
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
使配置生效:source /etc/profile。
4. 配置 Hadoop
进入 Hadoop 配置目录:cd /usr/local/hadoop-X.X.X/etc/hadoop/。
(1)配置 hadoop-env.sh
编辑 hadoop-env.sh 文件,将以下代码行:
export JAVA_HOME=${JAVA_HOME}
修改为实际的 JDK 路径,如:
export JAVA_HOME=/export/servers/jdk
。
(2)配置 core-site.xml
编辑 core-site.xml 文件,添加以下内容:
。
(3)配置 hdfs-site.xml
编辑 hdfs-site.xml 文件,添加以下内容:
。
(4)配置 yarn-site.xml
编辑 yarn-site.xml 文件,添加以下内容:
。
三、启动 Hadoop
1. 格式化 HDFS
运行以下命令初始化 NameNode:
hdfs namenode -format
。
2. 启动 Hadoop
运行以下命令启动 HDFS 和 YARN:
start-dfs.sh
start-yarn.sh
。
3. 验证安装
运行以下命令检查 Hadoop 是否成功启动:
jps
如果一切正常,应该能够看到 NameNode、DataNode、ResourceManager 和 NodeManager 等进程。
四、常见问题及解决方法
1. DataNode 进程未启动
确保 hadoop.tmp.dir 指定的目录存在且有权限。
检查 dfs.datanode.data.dir 指定的目录是否存在,如果不存在则创建。
2. 权限问题
确保 Hadoop 安装目录和数据目录的权限正确,可以使用 chmod 命令调整。
3. 网络问题
确保所有节点之间的网络连接正常,可以通过 ping 命令测试。
五、后续操作
1. 访问 Hadoop 管理界面
打开浏览器,访问以下地址:
HDFS 管理界面:http://<主节点IP>:50070。
YARN 管理界面:http://<主节点IP>:8088。
2. 运行 Hadoop 示例程序
Hadoop 自带了一些示例程序,可以运行以下命令测试:
hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep ./input ./output 'dfs[a-z.]+'
。