linux安装hadoop

目录

jdk安装配置

hadoop安装

hadoop配置

配置ssh免密登录

启动hadoop

实现文件上传下载

eclipse安装配置


jdk安装配置

1、删除centos自带的jdk

复制代码
yum list installed | grep java
yum remove *openjdk*

2、下载jdk安装包

复制代码
wget --no-check-certificate https://repo.huaweicloud.com/java/jdk/8u151-b12/jdk-8u151-linux-x64.tar.gz

3、解压安装包

复制代码
tar -zxvf jdk-8u151-linux-x64.tar.gz

4、移动并重命名

复制代码
mv jdk1.8.0_151/ /usr/java8

5、配置java环境变量

复制代码
echo 'export JAVA_HOME=/usr/java8' >> /etc/profile
echo 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profile

6、刷新配置

复制代码
source /etc/profile

7、检查

复制代码
java -version

hadoop安装

1、下载hadoop安装包

复制代码
wget --no-check-certificate https://repo.huaweicloud.com/apache/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz

2、解压到指定文件夹

复制代码
tar -zxvf hadoop-3.1.3.tar.gz -C /opt/

3、重命名

复制代码
mv /opt/hadoop-3.1.3 /opt/hadoop

4、配置hadoop环境变量

复制代码
echo 'export HADOOP_HOME=/opt/hadoop/' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/bin' >> /etc/profile
echo 'export PATH=$PATH:$HADOOP_HOME/sbin' >> /etc/profile

5、刷新配置

复制代码
source /etc/profile

6、修改yarn-env.sh和hadoop-env.sh配置文件

复制代码
echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/yarn-env.sh
echo "export JAVA_HOME=/usr/java8" >> /opt/hadoop/etc/hadoop/hadoop-env.sh

7、检查

复制代码
hadoop version

hadoop配置

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

复制代码
vim /opt/hadoop/etc/hadoop/core-site.xml

在<configuration></configuration>节点内插入如下内容:

复制代码
<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>

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

复制代码
vim /opt/hadoop/etc/hadoop/hdfs-site.xml

在<configuration></configuration>节点内插入如下内容:

复制代码
<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>

配置ssh免密登录

1、生成秘钥:ssh-keygen -t rsa

2、私钥存在本机~/.ssh目录下,公钥改名为authorized_keys

3、检查:ssh可以免密登录

(如果一台机子有多个公钥,需要都放在authorezed_keys文件中)


启动hadoop

1、修改配置文件hadoop-env.sh

复制代码
vim /opt/hadoop/etc/hadoop/hadoop-env.sh
将export JAVA_HOME改成export JAVA_HOME=/usr/java8

2、修改配置文件start-dfs.sh和stop-dfs.sh

复制代码
vim /opt/hadoop/sbin/start-dfs.sh

在头部添加如下内容

复制代码
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

在stop-dfs.sh配置文件头部也添加同样的内容。

3、修改配置文件start-yarn.sh和stop-yarn.sh

复制代码
vim /opt/hadoop/sbin/start-yarn.sh

在头部添加如下内容:

复制代码
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root

4、初始化namenode

复制代码
hadoop namenode -format

5、启动hadoop

复制代码
start-dfs.sh
start-yarn.sh

(也可以直接start-all.sh)

6、产看启动成功的进程

复制代码
jps

如果出现namenode、datanode、nodemanager、jps说明启动成功

7、访问端口:8042和9870、8088

如果拒绝访问,可以关闭防火墙,或者配置防火墙策略。


实现文件上传下载

1、先在hdfs文件系统根目录下新建work1目录,用于管理文件的上传和下载:

复制代码
hadoop fs -mkdir /work1

2、产看目录是否建立成功:

复制代码
hadoop fs -ls /

3、将服务器上的/opt/hd/a.txt文件上传到hdfs:

复制代码
hadoop fs -put /opt/hd/a.txt /work1

4、查看文件是否上传成功:

访问:192.168.100.131:9870:

进入work1目录:

点击download即可下载:


eclipse安装配置

1、下载eclipse-jee-2024-09-R-linux-gtk-x86_64.tar.gz压缩包放到/usr/local/eclipse目录下解压:

复制代码
cd /usr/local/eclipse
tar -xvf eclipse-jee-2024-09-R-linux-gtk-x86_64.tar.gz

2、下载hadoop-eclipse-plugin-2.6.0.jar包,放到eclipse的plugin目录下

3、运行eclipse:

复制代码
cd /usr/local/eclipse/eclipse
./eclipse

打开软件后,workspace选择默认即可:

安装配置完成



相关推荐
大聪明-PLUS2 分钟前
在 Linux 上使用实时调度策略运行应用程序
linux·嵌入式·arm·smarc
Awkwardx6 分钟前
Linux网络编程—应用层自定义协议与序列化
linux·网络
java_logo14 分钟前
Kubernetes Dashboard Docker 容器化部署指南
运维·mysql·docker·云原生·容器·kubernetes·php
编织幻境的妖41 分钟前
Docker底层工作原理
运维·docker·容器
TDengine (老段)1 小时前
TDengine IDMP 赋能新能源:光伏电站智能运维实践
大数据·运维·数据库·物联网·时序数据库·tdengine·涛思数据
小武~1 小时前
#嵌入式Linux电源管理实战:深入解析CPU调频governor原理与优化
linux
gcfer1 小时前
Docker 介绍和常用命令
运维·docker·容器
i***48613 小时前
Nginx中$http_host、$host、$proxy_host的区别
运维·nginx·http
Fɪʀᴇᴡᴏʀᴋs3 小时前
Oceanbase数据库—基于社区版本的数据库集群管理
运维·数据库·oceanbase
HalvmånEver3 小时前
Linux:基础开发工具(五)
linux·运维·服务器