Hadoop3.1.2运行InvertedIndex程序报错Please check whether your etc/hadoop/mapred-site.xml contains the below configuration: <property> <name>yarn.app.mapreduce.am.env</name> <value>HADOOP_MAPRED_HOME=${full path of your hadoop distribution directory}</value> </property> <property> <name>mapreduce.map.env</name> <value>HADOOP_MAPRED_HOME=${full path of your hadoop distribution directory}</value> </property> <property> <name>mapreduce.reduce.env</name> <value>HADOOP_MAPRED_HOME=${full path of your hadoop distribution directory}</value> </property>
时间: 2023-05-17 14:06:17 浏览: 222
这个错误提示是因为在运行InvertedIndex程序时,Hadoop无法找到正确的环境变量。你需要检查etc/hadoop/mapred-site.xml文件中是否包含上述配置,并将${full path of your hadoop distribution directory}替换为你的Hadoop安装目录的完整路径。
相关问题
hadoop3.1.2安装与配置第四步具体怎么实现
第四步:配置Hadoop
1. 配置Hadoop的环境变量
在终端输入以下命令:
```
sudo gedit ~/.bashrc
```
在打开的文件中,添加以下内容:
```
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
```
保存并关闭文件。
2. 配置Hadoop的HDFS
在终端输入以下命令:
```
sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml
```
在打开的文件中,添加以下内容:
```
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
```
保存并关闭文件。
在终端输入以下命令:
```
sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml
```
在打开的文件中,添加以下内容:
```
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/hadoop_data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/hadoop_data/hdfs/datanode</value>
</property>
</configuration>
```
保存并关闭文件。
3. 配置Hadoop的YARN
在终端输入以下命令:
```
sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml
```
在打开的文件中,添加以下内容:
```
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.local-dirs</name>
<value>/usr/local/hadoop/hadoop_data/yarn/local</value>
</property>
<property>
<name>yarn.nodemanager.log-dirs</name>
<value>/usr/local/hadoop/hadoop_data/yarn/logs</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>2048</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>2048</value>
</property>
</configuration>
```
保存并关闭文件。
4. 启动Hadoop
在终端输入以下命令:
```
start-all.sh
```
这个命令会启动Hadoop的所有组件(包括HDFS和YARN)。
5. 检查Hadoop是否正常工作
在浏览器中输入以下地址:
```
http://localhost:50070/
```
如果Hadoop正常工作,你应该能够看到HDFS的web界面。
在浏览器中输入以下地址:
```
http://localhost:8088/
```
如果Hadoop正常工作,你应该能够看到YARN的web界面。
至此,Hadoop的安装和配置完成。
Hive on Spark 搭建过程(hvie-3.1.2 spark-2.4.5 hadoop-3.1.3)
以下是 Hive on Spark 搭建过程的详细步骤:
1. 下载 Hadoop、Spark 和 Hive 的压缩包,并解压到指定目录下。
2. 配置环境变量,将 Hadoop、Spark 和 Hive 的 bin 目录添加到 PATH 路径中。
3. 修改 Hadoop 和 Spark 的配置文件。
- Hadoop 的配置文件:$HADOOP_HOME/etc/hadoop/core-site.xml、$HADOOP_HOME/etc/hadoop/hdfs-site.xml、$HADOOP_HOME/etc/hadoop/mapred-site.xml、$HADOOP_HOME/etc/hadoop/yarn-site.xml。
- Spark 的配置文件:$SPARK_HOME/conf/spark-env.sh、$SPARK_HOME/conf/spark-defaults.conf。
4. 配置 Hive on Spark。
- 将 $HIVE_HOME/lib 下的 spark 相关 jar 包复制到 $SPARK_HOME/jars 目录下。
- 修改 $HIVE_HOME/conf/hive-site.xml 文件,添加以下配置:
```
<property>
<name>hive.execution.engine</name>
<value>spark</value>
</property>
<property>
<name>spark.master</name>
<value>local[*]</value>
<description>Master URL for the cluster manager.</description>
</property>
<property>
<name>spark.submit.deployMode</name>
<value>client</value>
<description>Whether to launch the driver program locally ("client") or on one of the worker machines inside the cluster ("cluster")</description>
</property>
```
5. 启动 Spark 集群。
- 启动 Hadoop 集群。
- 启动 Spark 集群,可以使用以下命令:
```
$SPARK_HOME/sbin/start-all.sh
```
6. 启动 Hive on Spark。
- 启动 HiveServer2,可以使用以下命令:
```
$HIVE_HOME/bin/hiveserver2 --service metastore &
```
- 启动 beeline 或 hive 命令行客户端,连接 HiveServer2。
7. 测试 Hive on Spark 是否正常运行。
- 在 beeline 或 hive 命令行客户端中执行以下命令:
```
CREATE TABLE test_spark(id INT, name STRING) USING org.apache.spark.sql.parquet OPTIONS (PATH '/tmp/test_spark');
INSERT INTO test_spark VALUES(1, 'test');
SELECT * FROM test_spark;
```
如果查询结果正确,说明 Hive on Spark 搭建成功。
希望这些步骤能够帮助到你。
阅读全文