搭建Hadoop环境

操作系统:centos操作系统。

Hadoop 3.3:Java 8和Java 11

Hadoop 3.0.x~3.2.x:Java 8

Hadoop 2.7.x~2.10.x:Java 7和Java 8

步骤一:安装JDK

执行以下命令,下载JDK 1.8安装包。

wget https://download.java.net/openjdk/jdk8u41/ri/openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz

执行以下命令,解压下载的JDK 1.8安装包。
tar -zxvf openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz

执行以下命令,移动并重命名JDK安装包。

本示例中将JDK安装包重命名为java8,您可以根据需要使用其他名称。

sudo mv java-se-8u41-ri/ /usr/java8

执行以下命令,配置Java环境变量。

如果您将JDK安装包重命名为其他名称,需将以下命令中的java8替换为实际的名称。
sudo sh -c "echo 'export JAVA_HOME=/usr/java8' >> /etc/profile"
sudo sh -c 'echo "export PATH=\$PATH:\$JAVA_HOME/bin" >> /etc/profile'
source /etc/profile

执行以下命令,查看JDK是否成功安装。

java -version
返回类似如下信息,表示JDK已安装成功。

步骤二:安装Hadoop

执行以下命令,下载Hadoop安装包。
wget https://mirrors.bfsu.edu.cn/apache/hadoop/common/hadoop-3.2.4/hadoop-3.2.4.tar.gz

执行以下命令,将Hadoop安装包解压至/opt/hadoop。

sudo tar -zxvf hadoop-3.2.4.tar.gz -C /opt/
sudo mv /opt/hadoop-3.2.4 /opt/hadoop

执行以下命令,配置Hadoop环境变量。
sudo sh -c "echo 'export HADOOP_HOME=/opt/hadoop' >> /etc/profile"
sudo sh -c "echo 'export PATH=\$PATH:/opt/hadoop/bin' >> /etc/profile"
sudo sh -c "echo 'export PATH=\$PATH:/opt/hadoop/sbin' >> /etc/profile"
source /etc/profile

执行以下命令,修改配置文件yarn-env.sh和hadoop-env.sh。
sudo sh -c 'echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/yarn-env.sh'
sudo sh -c 'echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/hadoop-env.sh'

执行以下命令,测试Hadoop是否安装成功。
hadoop version

步骤三:配置Hadoop

修改Hadoop配置文件core-site.xml。

执行以下命令,进入编辑页面。

sudo vim /opt/hadoop/etc/hadoop/core-site.xml
输入i,进入编辑模式。

节点内,插入如下内容。

<property>
    <name>hadoop.tmp.dir</name>
    <value>file:/opt/hadoop/tmp</value>
    <description>location to store temporary files</description>
</property>
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
</property>

按Esc,退出编辑模式,并输入:wq保存并退出。

修改Hadoop配置文件hdfs-site.xml。

执行以下命令,进入编辑页面。

sudo vim /opt/hadoop/etc/hadoop/hdfs-site.xml
输入i,进入编辑模式。

节点内,插入如下内容。

<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/opt/hadoop/tmp/dfs/name</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/opt/hadoop/tmp/dfs/data</value>
</property>

按Esc,退出编辑模式,并输入:wq后保存并退出。

步骤四:配置SSH免密登录

执行以下命令,创建公钥和私钥。

ssh-keygen -t rsa
回显信息如下所示,表示创建公钥和私钥成功。

执行以下命令,将公钥添加到authorized_keys文件中。

cd .ssh
cat id_rsa.pub >> authorized_keys
chmod 0600 ~/.ssh/authorized_keys

步骤五:启动Hadoop

执行以下命令,初始化namenode 。

hadoop namenode -format
启动Hadoop。

执行以下命令,启动HDFS服务。

这个脚本会启动NameNode、SecondaryNameNode和DataNode等组件,从而启动HDFS服务。

start-dfs.sh

执行以下命令,启动YARN服务。

这个脚本会启动ResourceManager、NodeManager和ApplicationHistoryServer等组件,从而启动YARN服务。

start-yarn.sh
回显信息如下所示时,表示YARN服务已启动。

执行以下命令,可以查看成功启动的进程。

jps
成功启动的进程如下所示。

在本地浏览器地址栏输入http://IP:8088,访问YARN的Web UI界面。

通过该界面可以查看整个集群的资源使用情况、应用程序状态(比如MapReduce作业)、队列信息等。

在本地浏览器地址栏输入http://ip:9870,访问NameNode的Web UI界面。

该界面提供了有关HDFS文件系统状态、集群健康状况、活动节点列表、NameNode日志等信息。

显示如下界面,则表示Hadoop分布式环境已搭建完成。

步骤六:关闭防火墙:

查看防火墙状态
centos7
systemctl status firewalld.service
运行上述命令后,如果看到有绿色字样标注的“active(running)”,说明防火墙是开启状态。

开启防火墙
centos7
systemctl start firewalld.service
关闭防火墙
centos7
systemctl stop firewalld.service
关闭后,可查看防火墙状态,当显示disavtive(dead)的字样,说明CentOS 7防火墙已经关闭。
但要注意的是,上面的命令只是临时关闭了CentOS 7防火墙,当重启操作系统后,防火墙服务还是会再次启动。如果想要永久关闭防火墙则还需要禁用防火墙服务。

禁用防火墙服务
centos7
systemctl disable firewalld.service
查看防火墙规则
firewall-cmd –list-all
查询端口是否开放
centos7
firewall-cmd –query-port=8080/tcp
重启防火墙
firewall-cmd –reload
开放指定(如8080)端口
firewall-cmd –permanent –add-port=8080/tcp
(修改配置后需要重启防火墙)

移除某个防火墙开启的端口
firewall-cmd –permanent –remove-port=8080/tcp
(修改配置后需要重启防火墙)

参数解释:
firewall-cmd: 是Linux提供的操作firewall的一个工具;
–permanent:表示设置为持久;
–add-port:表示添加的端口。

posted @   angus2018  阅读(33)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示