Hadoop(2) -- Hadoop搭建单机环境简单实践

资料:https://hadoop.apache.org/docs/r3.2.0/hadoop-project-dist/hadoop-common/SingleCluster.html

本次实践环境

  • CentOS7
  • JDK1.8_181
  • Hadoop-3.2.0

非 root 用户下操作

先决条件

  1. Java
  2. ssh

下载

http://www.apache.org/dyn/closer.cgi/hadoop/common/

配置

tar -xzvf hadoop-3.2.0.tar.gz

cd hadoop-3.2.0

  1. 配置 etc/hadoop/hadoop-env.sh

vi etc/hadoop/hadoop-env.sh

添加配置:

# set to the root of your Java installation
export JAVA_HOME=/usr/local/java/latest

提示:可以使用 echo $JAVA_HOME 查看 JAVA_HOME 的路径

  1. 配置环境变量

vi /etc/profile

HADOOP_HOME=/usr/local/hadoop
export $HADOOP_HOME
PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export PATH

source /etc/profile

  1. 请尝试以下命令

./bin/hadoop

伪分布式操作

  1. 配置 etc/hadoop/core-site.xml
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>
  1. 配置 etc/hadoop/hdfs-site.xml
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>
  1. 设置 ssh

ssh localhost

如果没有密码,则无法ssh到localhost,请执行以下命令进行配置:

ssh-keygen -t rsa -P ‘’ -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

  1. 格式化hdfs文件系统

bin/hdfs namenode -format

执行完此命令后,会在 /tmp 目录下生成三个文件:hadoop-morningcat 目录、hsperfdata_morningcat 目录、hadoop-morningcat-namenode.pid 文件

  1. 启动NameNode守护程序和DataNode守护程序

sbin/start-dfs.sh

输出日志:

Starting namenodes on [localhost]
Starting datanodes
Starting secondary namenodes [localhost.localdomain]

执行完此命令后,会在 /tmp 目录下生成三个文件: hadoop-morningcat-namenode.pid、hadoop-morningcat-datanode.pid、hadoop-morningcat-secondarynamenode.pid

hadoop守护程序日志输出写入 $HADOOP_LOG_DIR 目录 (默认 $HADOOP_HOME/logs).


访问 http://localhost:9870 ,浏览 NameNode 的 Web 界面;

CentOS 下关闭防火墙:stop firewalld.service

本机测试地址:http://172.16.206.129:9870


提示:若在重新执行 sbin/start-dfs.sh 时,nameNode 启动失败,可以尝试将 /tmp 目录下 hadoop-morningcat-namenode.pid、hadoop-morningcat-datanode.pid、hadoop-morningcat-secondarynamenode.pid 三个文件删除,然后重试。

  1. 创建执行 MapReduce 作业所需的 HDFS 目录:

bin/hdfs dfs -mkdir /user
bin/hdfs dfs -mkdir /user/morningcat

bin/hdfs dfs -ls /

  1. 将输入文件复制到分布式文件系统中

bin/hdfs dfs -mkdir input
bin/hdfs dfs -put etc/hadoop/*.xml input

bin/hdfs dfs -ls input

  1. 运行一些提供的示例

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.0.jar grep input output ‘dfs[a-z.]+’

将结果拷贝出来查看

bin/hdfs dfs -get output myoutput
cat myoutput/*

或直接查看 hdfs 文件内容

bin/hdfs dfs -cat output/*

  1. 停止 hdfs

sbin/stop-dfs.sh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值