您的位置:首页 > 房产 > 建筑 > 荆州seo公司_台安人才网_互联网营销师报名官网_360竞价推广开户多少钱

荆州seo公司_台安人才网_互联网营销师报名官网_360竞价推广开户多少钱

2024/12/28 23:51:09 来源:https://blog.csdn.net/zcs2312852665/article/details/144203803  浏览:    关键词:荆州seo公司_台安人才网_互联网营销师报名官网_360竞价推广开户多少钱
荆州seo公司_台安人才网_互联网营销师报名官网_360竞价推广开户多少钱

文章目录

  • 前言
  • 一、Hadoop伪分布式部署(手动部署)
    • 1. 下载并上传hadoop安装包
      • 1.1 下载
      • 1.2 上传
    • 2. 解压hadoop安装包
    • 3. 配置hadoop配置文件
      • 3.1 修改 hadoop-env.sh 配置文件
      • 3.2 修改 core-site.xml 配置文件
      • 3.3 修改 hdfs-site.xml 配置文件
      • 3.4 修改 mapred-site.xml 配置文件
      • 3.5 修改 yarn-site.xml 配置文件
      • 3.6 修改 workers 配置文件
    • 4. 配置hadoop环境变量
    • 5. 格式化HDFS(Hadoop分布式文件系统)
    • 6. hadoop集群启动和停止
      • 6.1 启动 hadoop 集群
      • 6.2 停止 hadoop 集群
    • 注意
  • 二、使用shell脚本自动部署Hadoop伪分布式(选看)
    • 1. 下载并上传hadoop安装包
      • 1.1 下载
      • 1.2 上传
    • 2. 使用shell脚本自动部署Hadoop完全分布式
      • 2.1 创建 hadoop_install_config.sh 脚本文件并添加脚本内容
      • 2.2 添加可执行权限
      • 2.3 执行脚本
    • 3. 加载环境变量
    • 4. hadoop集群启动和停止
      • 4.1 启动 hadoop 集群
      • 4.2 停止 hadoop 集群


前言

本文将详细介绍Hadoop的伪分布式部署过程,包括手动部署和使用脚本自动部署两种方式。通过手动部署,读者将能够深入理解Hadoop的各个组件及其配置文件的作用,从而为后续的集群管理和优化打下坚实的基础。而使用脚本自动部署则能够提高安装效率,简化操作步骤,适合需要快速搭建Hadoop环境的用户。


一、Hadoop伪分布式部署(手动部署)

1. 下载并上传hadoop安装包

1.1 下载

点击下载hadoop3.3.0安装包:https://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

华为云镜像站下载:https://mirrors.huaweicloud.com/repository/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

1.2 上传

通过拖移的方式将下载的hadoop安装包hadoop-3.3.0.tar.gz上传至虚拟机hadoop的/export/software目录。

在这里插入图片描述

2. 解压hadoop安装包

上传完成后将hadoop安装包通过解压方式安装至/export/servers目录。

tar -zxvf /export/software/hadoop-3.3.0.tar.gz -C /export/servers/

解压完成如下图所示。

在这里插入图片描述

3. 配置hadoop配置文件

3.1 修改 hadoop-env.sh 配置文件

修改hadoop运行时环境变量配置文件/export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh,使用echo命令向hadoop-env.sh文件追加如下内容。

echo >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
echo 'export JAVA_HOME=/export/servers/jdk1.8.0_421' >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
echo 'export HDFS_NAMENODE_USER=root' >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
echo 'export HDFS_DATANODE_USER=root' >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
echo 'export HDFS_SECONDARYNAMENODE_USER=root' >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
echo 'export YARN_RESOURCEMANAGER_USER=root' >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh
echo 'export YARN_NODEMANAGER_USER=root' >> /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh

在这里插入图片描述

查看文件内容是否添加成功。

cat /export/servers/hadoop-3.3.0/etc/hadoop/hadoop-env.sh

在这里插入图片描述

3.2 修改 core-site.xml 配置文件

修改hadoop核心配置文件/export/servers/hadoop-3.3.0/etc/hadoop/core-site.xml,使用echo命令把配置内容重定向并写入到 /export/servers/hadoop-3.3.0/etc/hadoop/core-site.xml 文件。

cat >/export/servers/hadoop-3.3.0/etc/hadoop/core-site.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!-- 指定Hadoop集群的默认文件系统名称 --><property><name>fs.defaultFS</name><value>hdfs://hadoop:9000</value></property><!-- 设置Hadoop临时目录的位置,用于存储各种临时文件 --><property><name>hadoop.tmp.dir</name><value>/export/data/hadoop-3.3.0</value></property><!-- 当通过Web界面访问Hadoop集群时,默认的用户名 --><property><name>hadoop.http.staticuser.user</name><value>root</value></property><!-- 允许哪些主机上的用户可以作为代理用户执行操作 --><property><name>hadoop.proxyuser.root.hosts</name><value>*</value> <!-- * 表示任何主机 --></property><!-- 定义哪个组的用户可以作为代理用户执行操作 --><property><name>hadoop.proxyuser.root.groups</name><value>*</value> <!-- * 表示所有组的用户 --></property><!-- 设置回收站功能的保留时间间隔,单位为分钟 --><property><name>fs.trash.interval</name><value>1440</value> <!-- 1440分钟等于1天 --></property>
</configuration>
EOF

在这里插入图片描述

3.3 修改 hdfs-site.xml 配置文件

修改hdfs的配置文件/export/servers/hadoop-3.3.0/etc/hadoop/hdfs-site.xml,使用cat命令把配置内容重定向并写入到 /export/servers/hadoop-3.3.0/etc/hadoop/hdfs-site.xml 文件。

cat >/export/servers/hadoop-3.3.0/etc/hadoop/hdfs-site.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration>
<property><name>dfs.replication</name><value>1</value>
</property>
<property><name>dfs.namenode.secondary.http-address</name><value>hadoop:9868</value>
</property>
</configuration>
EOF

在这里插入图片描述

3.4 修改 mapred-site.xml 配置文件

修改mapreduce的配置文件/export/servers/hadoop-3.3.0/etc/hadoop/mapred-site.xml,使用cat命令把配置内容重定向并写入到 /export/servers/hadoop-3.3.0/etc/hadoop/mapred-site.xml 文件。

cat >/export/servers/hadoop-3.3.0/etc/hadoop/mapred-site.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration>
<property><name>mapreduce.framework.name</name><value>yarn</value>
</property>
<property><name>mapreduce.jobhistory.address</name><value>hadoop:10020</value>
</property>
<property><name>mapreduce.jobhistory.Webapp.address</name><value>hadoop:19888</value>
</property>
<property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=\${HADOOP_HOME}</value>
</property>
<property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=\${HADOOP_HOME}</value>
</property>
<property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=\${HADOOP_HOME}</value>
</property>
</configuration>
EOF

在这里插入图片描述

3.5 修改 yarn-site.xml 配置文件

修改yarn的配置文件/export/servers/hadoop-3.3.0/etc/hadoop/yarn-site.xml,使用cat命令把配置内容重定向并写入到 /export/servers/hadoop-3.3.0/etc/hadoop/yarn-site.xml 文件。

cat >/export/servers/hadoop-3.3.0/etc/hadoop/yarn-site.xml <<EOF
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration>
<property><name>yarn.resourcemanager.hostname</name><value>hadoop</value>
</property>
<property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value>
</property>
<property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value>
</property>
<property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value>
</property>
<property><name>yarn.log-aggregation-enable</name><value>true</value>
</property>
<property><name>yarn.log.server.url</name><value>http://hadoop:19888/jobhistory/logs</value>
</property>
<property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value>
</property>
</configuration>
EOF

在这里插入图片描述

3.6 修改 workers 配置文件

修改hadoop的从节点服务器配置文件/export/servers/hadoop-3.3.0/etc/hadoop/workers,使用cat命令把配置内容重定向并写入到 /export/servers/hadoop-3.3.0/etc/hadoop/workers 文件。

cat >/export/servers/hadoop-3.3.0/etc/hadoop/workers <<EOF
hadoop
EOF

在这里插入图片描述

4. 配置hadoop环境变量

使用echo命令向环境变量配置文件/etc/profile追加环境变量内容。

echo >> /etc/profile
echo 'export HADOOP_HOME=/export/servers/hadoop-3.3.0' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin' >> /etc/profile

配置环境变量后,需要使用如下命令加载环境变量配置文件/etc/profile,使用hadoop的环境变量生效。

source /etc/profile

在这里插入图片描述

5. 格式化HDFS(Hadoop分布式文件系统)

执行如下命令格式化Hadoop分布式文件系统HDFS。

hdfs namenode -format

格式化成功如下图所示,会提示我们存储目录 /export/data/hadoop-3.3.0/dfs/name 已经成功格式化
在这里插入图片描述

6. hadoop集群启动和停止

6.1 启动 hadoop 集群

方法一:执行如下命令同时启动 hdfs 和 yarn。

start-all.sh

注意:命令的全路径启动为/export/servers/hadoop-3.3.0/sbin/start-all.sh,之所以可以使用start-all.sh直接启动是因为我们设置了环境变量。

在这里插入图片描述

方法二:单独启动 hdfs 和单独启动 yarn。
单独启动 hdfs

start-dfs.sh

单独启动 yarn

start-yarn.sh

hadoop集群启动之后使用如下命令查看对应进程是否正常。

jps

正常如下图所示。
在这里插入图片描述

访问 HDFS(NameNode)的 Web UI 页面
在启动hadoop集群后,在浏览器输入http://192.168.121.100:9870进行访问,如下图。
在这里插入图片描述

检查DataNode是否正常,正常如下图所示。
在这里插入图片描述

访问 HDFS(Secondary NameNode)的 Web UI 页面
在启动hadoop集群后,在浏览器输入http://192.168.121.100:9868进行访问,如下图。
在这里插入图片描述

访问 YARN 的 Web UI 页面
在启动hadoop集群后,在浏览器输入http://192.168.121.100:8088进行访问,如下图。
在这里插入图片描述

6.2 停止 hadoop 集群

方法一:如果需要停止 hadoop 集群运行,执行如下命令同时停止 hdfs 和 yarn。

stop-all.sh

在这里插入图片描述

方法二:如果需要停止 hadoop 集群运行,单独停止 hdfs 和单独停止 yarn。
单独启动 hdfs

stop-dfs.sh

单独启动 yarn

stop-yarn.sh

注意

如果安装出现问题,要重新格式化HDFS,需要执行如下命令删除生成的数据目录。

rm -rf /export/data/hadoop-3.3.0

二、使用shell脚本自动部署Hadoop伪分布式(选看)

1. 下载并上传hadoop安装包

1.1 下载

点击下载hadoop3.3.0安装包:https://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

华为云镜像站下载:https://mirrors.huaweicloud.com/repository/apache/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

1.2 上传

通过拖移的方式将下载的hadoop安装包hadoop-3.3.0.tar.gz上传至虚拟机hadoop的/export/software目录。

在这里插入图片描述

2. 使用shell脚本自动部署Hadoop完全分布式

2.1 创建 hadoop_install_config.sh 脚本文件并添加脚本内容

执行如下命令创建/export/shell/hadoop_install_config.sh脚本文件

touch /export/shell/hadoop_install_config.sh

添加如下内容:

#!/bin/bash# 定义常量
HADOOP_DIR="/export/servers"
HADOOP_VER="3.3.0"
HADOOP_TAR="hadoop-${HADOOP_VER}.tar.gz"
HADOOP_SOFTWARE_DIR="/export/software"
JAVA_PATH="/export/servers/jdk1.8.0_421"
HADOOP_TMP_DIR="/export/data/hadoop-${HADOOP_VER}"
DATA_DIR="/export/data"
SOFTWARE_DIR="/export/software"
SERVERS_DIR="/export/servers"# 如果临时数据目录存在则删除
if [ -d "${HADOOP_TMP_DIR}" ]; thenecho "删除自动生成的临时数据目录 ${HADOOP_TMP_DIR}..."rm -rf ${HADOOP_TMP_DIR}
fi# 检查hadoop是否已解压
if [ -d "$HADOOP_DIR/hadoop-$HADOOP_VER" ]; thenecho "hadoop安装程序已存在,正在删除原安装程序目录..."rm -rf "$HADOOP_DIR/hadoop-$HADOOP_VER"
fi# 检查hadoop安装包是否存在
if [ -f $SOFTWARE_DIR/$HADOOP_TAR ]; thenecho "hadoop安装包存在,正在解压安装包..."# 解压Hadoop安装包tar -zxvf ${HADOOP_SOFTWARE_DIR}/${HADOOP_TAR} -C ${HADOOP_DIR}echo "解压 ${HADOOP_SOFTWARE_DIR}/${HADOOP_TAR}${HADOOP_DIR} 目录成功"
elseecho "hadoop安装包不存在,请先上传安装包到 ${HADOOP_SOFTWARE_DIR} 目录"exit 1
fi# 配置hadoop-env.sh
echo >>${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/hadoop-env.sh
echo \"
export JAVA_HOME=/export/servers/jdk1.8.0_421
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_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/hadoop-env.sh
echo "${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/hadoop-env.sh 配置文件修改成功"# 配置core-site.xml
cat >${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/core-site.xml <<EOF
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>fs.defaultFS</name><value>hdfs://hadoop:9000</value></property><property><name>hadoop.tmp.dir</name><value>${HADOOP_TMP_DIR}</value></property><property><name>hadoop.http.staticuser.user</name><value>root</value></property><property><name>hadoop.proxyuser.root.hosts</name><value>*</value></property><property><name>hadoop.proxyuser.root.groups</name><value>*</value></property><property><name>fs.trash.interval</name><value>1440</value></property>
</configuration>
EOF
echo "${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/core-site.xml 配置文件修改成功"# 配置hdfs-site.xml
cat >${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/hdfs-site.xml <<EOF
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>dfs.replication</name><value>1</value></property><property><name>dfs.namenode.secondary.http-address</name><value>hadoop:9868</value></property>
</configuration>
EOF
echo "${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/hdfs-site.xml 配置文件修改成功"# 配置mapred-site.xml
cat >${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/mapred-site.xml <<EOF
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>hadoop:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>hadoop:19888</value></property><property><name>yarn.app.mapreduce.am.env</name><value>HADOOP_MAPRED_HOME=\${HADOOP_HOME}</value></property><property><name>mapreduce.map.env</name><value>HADOOP_MAPRED_HOME=\${HADOOP_HOME}</value></property><property><name>mapreduce.reduce.env</name><value>HADOOP_MAPRED_HOME=\${HADOOP_HOME}</value></property>
</configuration>
EOF
echo "${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/mapred-site.xml 配置文件修改成功"# 配置yarn-site.xml
cat >${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/yarn-site.xml <<EOF
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration><property><name>yarn.resourcemanager.hostname</name><value>hadoop</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value></property><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value></property><property><name>yarn.log-aggregation-enable</name><value>true</value></property><property><name>yarn.log.server.url</name><value>http://hadoop:19888/jobhistory/logs</value></property><property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value></property>
</configuration>
EOF
echo "${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/yarn-site.xml 配置文件修改成功"# 设置workers文件
echo "hadoop" >${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/workers
echo "${HADOOP_DIR}/hadoop-${HADOOP_VER}/etc/hadoop/workers 配置文件修改成功"# 设置环境变量
echo >> /etc/profile
echo 'export HADOOP_HOME=/export/servers/hadoop-3.3.0' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin' >> /etc/profile# 格式化HDFS
echo "正在格式化HDFS..."
hdfs namenode -format
if [ $? -eq 0 ]; thenecho "格式化HDFS成功"
elseecho "格式化HDFS失败,请检查异常并解决后重新执行此脚本"exit 1
fiecho -e "\n-----hadoop伪分布式安装配置完成-----\n"
echo -e "1. 请手动在执行命令 source /etc/profile 加载环境变量\n"
echo "3. 启动hadoop命令:start-all.sh, 停止hadoop命令:stop-all.sh"exit 0

在这里插入图片描述

2.2 添加可执行权限

执行如下命令给脚本文件/export/shell/hadoop_install_config.sh添加可执行权限。

chmod +x /export/shell/hadoop_install_config.sh

在这里插入图片描述

2.3 执行脚本

执行脚本文件自动化安装配置hadoop伪分布式。

/export/shell/hadoop_install_config.sh

成功安装配置如下图所示。

在这里插入图片描述

3. 加载环境变量

根据使用shell脚本自动安装完成后的提示,执行如下命令加载环境变量。

source /etc/profile

在这里插入图片描述

4. hadoop集群启动和停止

4.1 启动 hadoop 集群

方法一:执行如下命令同时启动 hdfs 和 yarn。

start-all.sh

注意:命令的全路径启动为/export/servers/hadoop-3.3.0/sbin/start-all.sh,之所以可以使用start-all.sh直接启动是因为我们设置了环境变量。

在这里插入图片描述

方法二:单独启动 hdfs 和单独启动 yarn。
单独启动 hdfs

start-dfs.sh

单独启动 yarn

start-yarn.sh

hadoop集群启动之后使用如下命令查看对应进程是否正常。

jps

正常如下图所示。
在这里插入图片描述

访问 HDFS(NameNode)的 Web UI 页面
在启动hadoop集群后,在浏览器输入http://192.168.121.100:9870进行访问,如下图。
在这里插入图片描述

检查DataNode是否正常,正常如下图所示。
在这里插入图片描述

访问 HDFS(Secondary NameNode)的 Web UI 页面
在启动hadoop集群后,在浏览器输入http://192.168.121.100:9868进行访问,如下图。
在这里插入图片描述

访问 YARN 的 Web UI 页面
在启动hadoop集群后,在浏览器输入http://192.168.121.100:8088进行访问,如下图。
在这里插入图片描述

4.2 停止 hadoop 集群

方法一:如果需要停止 hadoop 集群运行,执行如下命令同时停止 hdfs 和 yarn。

stop-all.sh

在这里插入图片描述

方法二:如果需要停止 hadoop 集群运行,单独停止 hdfs 和单独停止 yarn。
单独启动 hdfs

stop-dfs.sh

单独启动 yarn

stop-yarn.sh

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com