如何在 Linux Ubuntu 上通过分步配置安装 Hadoop
在本教程中,我们将引导您完成在 Linux 系统(Ubuntu)上安装 Apache Hadoop 的分步过程。这是一个分两部分的过程。
有两个先决条件
第一部分)下载和安装 Hadoop
步骤 1) 使用以下命令添加一个 Hadoop 系统用户
sudo addgroup hadoop_
sudo adduser --ingroup hadoop_ hduser_
输入您的密码、姓名和其他详细信息。
注意:在此设置和安装过程中,可能会出现以下错误。
“hduser 不在 sudoers 文件中。此事件将被报告。”
可以通过以 root 用户身份登录来解决此错误
执行命令
sudo adduser hduser_ sudo
Re-login as hduser_
步骤 2) 配置 SSH
为了管理集群中的节点,Hadoop 需要 SSH 访问权限
首先,切换用户,输入以下命令
su - hduser_
此命令将创建一个新密钥。
ssh-keygen -t rsa -P ""
使用此密钥启用对本地机器的 SSH 访问。
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
现在,通过以“hduser”用户身份连接到 localhost 来测试 SSH 设置。
ssh localhost
注意:请注意,如果响应‘ssh localhost’时看到以下错误,则可能意味着该系统上未安装 SSH-
要解决此问题 -
使用以下命令清除 SSH,
sudo apt-get purge openssh-server
在开始安装之前清除是个好习惯
使用以下命令安装 SSH-
sudo apt-get install openssh-server
步骤 3) 下一步是下载 Hadoop
选择稳定版
选择 tar.gz 文件(不是带 src 的文件)
下载完成后,导航到包含 tar 文件的目录
输入,
sudo tar xzf hadoop-2.2.0.tar.gz
现在,将 hadoop-2.2.0 重命名为 hadoop
sudo mv hadoop-2.2.0 hadoop
sudo chown -R hduser_:hadoop_ hadoop
第二部分)配置 Hadoop
步骤 1) 修改 ~/.bashrc 文件
将以下行添加到 ~/.bashrc 文件的末尾
#Set HADOOP_HOME export HADOOP_HOME=<Installation Directory of Hadoop> #Set JAVA_HOME export JAVA_HOME=<Installation Directory of Java> # Add bin/ directory of Hadoop to PATH export PATH=$PATH:$HADOOP_HOME/bin
现在,使用以下命令源此环境变量配置
. ~/.bashrc
步骤 2) 与 HDFS 相关的配置
在 $HADOOP_HOME/etc/hadoop/hadoop-env.sh 文件中设置 JAVA_HOME
使用
$HADOOP_HOME/etc/hadoop/core-site.xml 中有两个需要设置的参数-
1. ‘hadoop.tmp.dir’ – 用于指定 Hadoop 存储其数据文件的目录。
2. ‘fs.default.name’ – 指定默认文件系统。
要设置这些参数,请打开 core-site.xml
sudo gedit $HADOOP_HOME/etc/hadoop/core-site.xml
将以下行复制到 <configuration></configuration> 标签之间
<property> <name>hadoop.tmp.dir</name> <value>/app/hadoop/tmp</value> <description>Parent directory for other temporary directories.</description> </property> <property> <name>fs.defaultFS </name> <value>hdfs://:54310</value> <description>The name of the default file system. </description> </property>
导航到目录 $HADOOP_HOME/etc/Hadoop
现在,创建 core-site.xml 中指定的目录
sudo mkdir -p <Path of Directory used in above setting>
授予目录权限
sudo chown -R hduser_:Hadoop_ <Path of Directory created in above step>
sudo chmod 750 <Path of Directory created in above step>
步骤 3) Map Reduce 配置
在开始这些配置之前,让我们设置 HADOOP_HOME 路径
sudo gedit /etc/profile.d/hadoop.sh
然后输入
export HADOOP_HOME=/home/guru99/Downloads/Hadoop
接着输入
sudo chmod +x /etc/profile.d/hadoop.sh
退出终端并重新启动
键入 echo $HADOOP_HOME。以验证路径
现在复制文件
sudo cp $HADOOP_HOME/etc/hadoop/mapred-site.xml.template $HADOOP_HOME/etc/hadoop/mapred-site.xml
打开 mapred-site.xml 文件
sudo gedit $HADOOP_HOME/etc/hadoop/mapred-site.xml
在 <configuration> 和 </configuration> 标签之间添加以下设置行
<property> <name>mapreduce.jobtracker.address</name> <value>localhost:54311</value> <description>MapReduce job tracker runs at this host and port. </description> </property>
如下打开 $HADOOP_HOME/etc/hadoop/hdfs-site.xml,
sudo gedit $HADOOP_HOME/etc/hadoop/hdfs-site.xml
在 <configuration> 和 </configuration> 标签之间添加以下设置行
<property> <name>dfs.replication</name> <value>1</value> <description>Default block replication.</description> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/hduser_/hdfs</value> </property>
创建上述设置中指定的目录-
sudo mkdir -p <Path of Directory used in above setting>
sudo mkdir -p /home/hduser_/hdfs
sudo chown -R hduser_:hadoop_ <Path of Directory created in above step>
sudo chown -R hduser_:hadoop_ /home/hduser_/hdfs
sudo chmod 750 <Path of Directory created in above step>
sudo chmod 750 /home/hduser_/hdfs
步骤 4) 在首次启动 Hadoop 之前,使用以下命令格式化 HDFS
$HADOOP_HOME/bin/hdfs namenode -format
步骤 5) 使用以下命令启动 Hadoop 单节点集群
$HADOOP_HOME/sbin/start-dfs.sh
上述命令的输出
$HADOOP_HOME/sbin/start-yarn.sh
使用 ‘jps’ 工具/命令,验证所有 Hadoop 相关进程是否正在运行。
如果 Hadoop 成功启动,则 jps 命令的输出应显示 NameNode、NodeManager、ResourceManager、SecondaryNameNode、DataNode。
步骤 6) 停止 Hadoop
$HADOOP_HOME/sbin/stop-dfs.sh
$HADOOP_HOME/sbin/stop-yarn.sh