Hadoop3.3.4伪分布式环境搭建

Hadoop 3.3.4伪分布式环境搭建


前言

hadoop学习——伪分布式环境——普通用户搭建


一、准备

1. 下载Hadoop

2. 配置环境变量

vi ~/.bash_profile

# 增加如下配置
export HADOOP_HOME=/home/install/hadoop-3.3.4
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

# 使配置生效
source ~/.bash_profile

3. 配置免密

二、Hadoop配置

配置的目录是$HADOOP_HOME/etc/hadop

1. hadoop-env.sh

修改JAVA_HOME,设置为JDK所在的位置

# Linux命令行输出 JDK 位置
echo $JAVA_HOME

2. hdfs-site.xml

<!--指定数据冗余份数-->
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <name>dfs.http.address</name>
    <value>hadoop01:50070</value>
</property>

3. core-site.xml

 <!--hadoop01是机器名  hostname-->
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://hadoop01:9000</value>
</property>
<!-- hadoop临时目录 -->
<property>
    <name>hadoop.tmp.dir</name>
    <value>/home/install/data/hadoop/HADOOP_TMP_DIR</value>
    <description>Abase for other temporary directories.</description>
</property>
<!--所有用户可访问-->
<property>
    <name>hadoop.proxyuser.hduser.groups</name>
    <value>*</value>
</property>
<!--设置buffer size-->
<property>
    <name>io.file.buffer.size</name>
    <value>131072</value>
</property>
<!--任何IP可访问-->
<property>
    <name>hadoop.proxyuser.hduser.hosts</name>
    <value>*</value>
</property>

4. mapred-site.xml

<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>
<property>
    <name>mapreduce.job.counters.max</name>
    <value>1200000</value>
</property>
<property>
    <name>mapreduce.map.memory.mb</name>
    <value>4096</value>
</property>
<property>
    <name>mapreduce.reduce.memory.mb</name>
    <value>8192</value>
</property>
<property>
    <name>mapreduce.map.java.opts</name>
    <value>-Xmx3072m</value>
</property>
<property>
    <name>mapreduce.reduce.java.opts</name>
    <value>-Xmx6144m</value>
</property>

5. yarn-site.xml

<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop01</value>
</property>
<property>
    <name>yarn.nodemanager.vmem-pmem-ratio</name>
    <value>4</value>
</property>
<property>
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
</property>
<property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>20480</value>
</property>
<property>
    <name>yarn.scheduler.minimum-allocation-mb</name>
    <value>1024</value>
</property>
<property>
    <name>yarn.scheduler.maximum-allocation-mb</name>
    <value>20480</value>
</property>

三、格式化

hadoop namenode -format

四、启动

# 懒一点的方式
start-all.sh

五、访问web页面

http://localhost:50070
如果没有配置,默认端口是9870


问题似乎涉及两个不同的主题:一个是关于 `NULL` 的本质解析,另一个是在 Ubuntu 上搭建 Hadoop 伪分布式环境的详细步骤。以下是针对后者的专业解答。 ### 在 Ubuntu 上搭建 Hadoop 伪分布式模式 #### 环境准备 在开始之前,确保已经安装并配置好 Java 开发环境以及 SSH 工具。Hadoop 需要依赖这些工具运行[^2]。 可以通过以下命令验证是否已正确安装 JDK 和 SSH: ```bash java -version ssh localhost ``` 如果未安装 JDK 或 SSH,则可以分别通过以下命令完成安装: ```bash sudo apt update sudo apt install openjdk-8-jdk ssh ``` #### 下载与解压 Hadoop 下载最新版本的 Hadoop 并将其解压缩到指定目录下。例如: ```bash wget https://downloads.apache.org/hadoop/common/stable/hadoop-3.3.4.tar.gz tar -xzvf hadoop-3.3.4.tar.gz -C /usr/local/ ln -s /usr/local/hadoop-3.3.4/ /usr/local/hadoop export PATH=$PATH:/usr/local/hadoop/bin ``` 上述操作会将 Hadoop 安装至 `/usr/local/hadoop` 路径,并更新系统的路径变量以便全局调用其命令[^3]。 #### 修改核心配置文件 进入 Hadoop 解压后的 `etc/hadoop` 文件夹,编辑如下几个主要配置文件: 1. **hadoop-env.sh** 设置 JAVA_HOME 变量以指向当前系统中的 JDK 安装位置。 ```bash export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 ``` 2. **core-site.xml** 添加以下 XML 片段用于定义默认文件系统名称节点的位置。 ```xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> ``` 3. **hdfs-site.xml** 将副本因子设置为单机测试所需的最低值 (即 1),同时指定临时数据存储路径。 ```xml <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.name.dir</name> <value>/home/user/data/namenode</value> </property> <property> <name>dfs.data.dir</name> <value>/home/user/data/datanode</value> </property> </configuration> ``` 4. **mapred-site.xml** 如果该文件不存在,请先复制模板文件再修改 MapReduce 框架的相关属性。 ```bash cp mapred-site.xml.template mapred-site.xml ``` 编辑内容如下所示: ```xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` 5. **yarn-site.xml** 对 YARN 进行基础参数调整优化性能表现。 ```xml <configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> </configuration> ``` #### 初始化 NameNode 并启动服务 执行初始化命名空间的操作后即可开启集群各组件的服务进程。 ```bash hdfs namenode -format start-dfs.sh start-yarn.sh jps ``` 最后一步用来确认所有必要的守护线程均已成功加载运行状态良好[^4]。 --- ### 关于 NULL 的补充说明 对于 C/C++ 中宏定义形式实现出来的特殊常量——`NULL`而言,它本质上是一个零值整型数或者空指针字面量的表现形态之一,在不同上下文中可能被解释成数值意义上的零或者是特定平台架构下的绝对首地址单元标记位串序列化表达方式如 `(void *)0x00000000` 所指示的内容[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值