在 Ubuntu 上实现 Hadoop 资源管理,通常涉及以下几个关键组件和步骤:
首先,你需要在 Ubuntu 系统上安装 Hadoop。以下是基本步骤:
# 更新包列表
sudo apt update
# 添加 Hadoop 的官方 GPG 密钥
wget -qO - https://www.apache.org/dist/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.pub.key | sudo apt-key add -
# 添加 Hadoop 的 APT 仓库
echo "deb http://archive.apache.org/dist/hadoop/common/hadoop-3.3.1/ubuntu/ bionic main" | sudo tee /etc/apt/sources.list.d/hadoop.list
# 更新包列表
sudo apt update
# 安装 Hadoop
sudo apt install hadoop-3.3.1
Hadoop 的配置文件位于 $HADOOP_HOME/etc/hadoop 目录下。主要配置文件包括:
core-site.xml: 核心配置,如默认文件系统。hdfs-site.xml: HDFS 配置,如副本数、数据节点地址等。yarn-site.xml: YARN 配置,如 ResourceManager 和 NodeManager 的地址。mapred-site.xml: MapReduce 配置,如 JobHistory Server 地址。core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/path/to/namenode/dir</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/path/to/datanode/dir</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>localhost:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>localhost:19888</value>
</property>
</configuration>
启动 Hadoop 集群的步骤如下:
# 格式化 HDFS
hdfs namenode -format
# 启动 HDFS
start-dfs.sh
# 启动 YARN
start-yarn.sh
你可以通过以下命令检查 Hadoop 集群的状态:
# 检查 HDFS 状态
hdfs dfsadmin -report
# 检查 YARN 状态
yarn node -list
YARN 提供了资源管理功能,可以通过以下方式管理和监控资源:
http://<resourcemanager-host>:8088 查看集群资源使用情况。http://<nodemanager-host>:8042 查看节点资源使用情况。yarn top 或 yarn application -list 查看正在运行的应用程序和资源使用情况。你可以在 yarn-site.xml 中配置资源限制,例如每个容器的最大内存和 CPU 核心数:
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>1024</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>8192</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-vcores</name>
<value>1</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-vcores</name>
<value>4</value>
</property>
通过以上步骤,你可以在 Ubuntu 上实现 Hadoop 资源管理。根据实际需求,你可以进一步调整和优化配置。