官网地址:https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html
1.准备工作
--- pdsh安装 ---
# wget工具安装(已安装可忽略)
yum install wget
# 解压工具安装(已安装可忽略)
yum -y install bzip2
# 下载安装包
wget https://github.com/chaos/pdsh/releases/download/pdsh-2.34/pdsh-2.34.tar.gz
# 解压
tar -zxvf pdsh-2.34.tar.gz
# 编译安装
cd pdsh-2.34
make && make install
# 验证
pdsh -V
--- yumJDK安装 (已安装JDK8忽略)---
# 查看当前系统jdk版本
java -version
# 查看yum库中的java安装包
yum -y list java*
# 安装需要的jdk版本的所有java程序
yum -y install java-1.8.0-openjdk*
#(安装完之后,默认的安装目录是在: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64)
1.1配置免密登录自己
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
# 配置pdsh默认使用ssh,在/etc/profile中添加
vi /etc/profile
# 追加配置
export PDSH_RCMD_TYPE=ssh
# 使配置生效
source /etc/profile
1.2 hadoop安装及jdk配置
# 下载安装包
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
# 解压
tar -zxvf hadoop-3.3.1.tar.gz
# 解压后目录 /opt/hadoop-3.3.1
# 配置hadoop和java环境
vi /etc/profile
# 在文件最后追加
export HADOOP_HOME=/opt/hadoop-3.3.1
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64
# 使配置生效
source /etc/profile
2.Hadoop配置文件修改
# 1.编辑hadoop-env.sh文件
cd /opt/hadoop-3.3.1/etc/hadoop
vi hadoop-env.sh
# 修改JAVA_HOME
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64
# 2.修改core-site.xml
vi core-site.xml
# configuration标签内添加配置
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
# 3.修改hdfs-site.xml
vi hdfs-site.xml
# configuration标签内添加配置
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
# 4.其它配置
cd /opt/hadoop-3.3.1
# 修改sbin/start-dfs.sh 第一行添加
vi sbin/start-dfs.sh
HDFS_NAMENODE_USER=root
HDFS_DATANODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
3.执行(完全按照官网)
# 1.格式化文件系统:
bin/hdfs namenode -format
# 2.启动 NameNode 守护进程和 DataNode 守护进程:
sbin/start-dfs.sh
# hadoop 守护进程日志输出被写入$HADOOP_LOG_DIR目录(默认为HADOOP_HOME/logs)
#3.浏览 NameNode 的 Web 界面;默认情况下,它在以下位置可用:
NameNode - http://localhost:9870/
# 4.创建执行 MapReduce 作业所需的 HDFS 目录:
bin/hdfs dfs -mkdir /user
bin/hdfs dfs -mkdir /user/root
# 5.将输入文件复制到分布式文件系统中:
bin/hdfs dfs -mkdir input
bin/hdfs dfs -put etc/hadoop/*.xml input
# 运行提供的一些示例:
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.1.jar grep input output 'dfs[a-z.]+'
# 检查输出文件:将输出文件从分布式文件系统复制到本地文件系统并检查它们:
bin/hdfs dfs -get output output
cat output/*
# 或者
# 查看分布式文件系统上的输出文件:
bin/hdfs dfs -cat output/*
# 完成后,停止守护进程:
sbin/stop-dfs.sh
网友评论