Hadoop伪分布式安装

1、下载3.1.1

https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.1.1/

2、上传Linux服务器(目录:/usr/local/big_data/hadoop)

tar -zxvf hadoop-3.1.1.tar.gz

3、配置Hadoop环境变量

vim /etc/profile

export HADOOP_HOME=/usr/local/big_data/hadoop/hadoop-3.1.1
PATH=$PATH:$HADOOP_HOME/bin

source /etc/profile

4、启动HDFS环境需要配置文件(http://archive.cloudera.com/cdh5

core-site.xml

<!-- NameNode URI -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://ip:9000</value>
        <description>hdfs://host:port/</description>
    </property>
    <!-- <property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
        <description>SequenceFiles文件中.读写缓存size设定(该属性值单位为KB,131072KB即为默认的64M)</description>
    </property> -->

hdfs-site.xml

<!-- 配置NameNode -->
    <property>
        <name>dfs.replication</name>
        <value>1</value>
        <description>分片数量,伪分布式将其配置成1即可</description>
    </property>
    <!-- <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/big_data/hadoop/tmp/dfs/namenode</value>
        <description>命名空间和事务在本地文件系统永久存储的路径</description>
    </property>
    <property>
        <name>dfs.blocksize</name>
        <value>268435456</value>
        <description>大文件系统HDFS块大小为256M,默认值为64M</description>
    </property>
    <property>
        <name>dfs.namenode.handler.count</name>
        <value>100</value>
        <description>更多的NameNode服务器线程处理来自DataNodes的RPCS</description>
    </property> -->
    <!-- 配置DataNode -->
    <!-- <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/big_data/hadoop/tmp/dfs/datanode</value>
        <description>DataNode在本地文件系统中存放块的路径</description>
    </property> -->

    <name>dfs.permissions.enabled</name>
        <value>false</value>
        <description>文件权限</description>
    </property>

hadoop-env.sh(启动HDFS报错可以根据报错配置一下内容)

# 给定 Java 安装的根目录hadoop-env.sh配置文件

export JAVA_HOME=/usr/local/jdk1.8.0_172

# hadoop-env.sh配置文件添加如下环境变量

export HDFS_DATANODE_USER=root

export HDFS_NAMENODE_USER=root

export HDFS_SECONDARYNAMENODE_USER=root

export YARN_RESOURCEMANAGER_USER=root

export YARN_NODEMANAGER_USER=root

启动HDFS各个进程

4.1、格式化NameNode(作用: 清空NameNode目录下的所有数据,生成目录结构,初始化一些信息文件

)

./hdfs namenode -format

进入cd /tmp/hadoop-root查看项目生成的内容

4.2、启动NameNode、DataNode、SecondaryNameNode

./start-dfs.sh

./sbin/hadoop-daemon.sh start namenode

./sbin/hadoop-daemon.sh start datanode

./sbin/hadoop-daemon.sh start secondarynamenode

4.3、访问

http://localhost:9870

9870是http协议的端口号,9000是Rpc tcp协议端口号

5、启动Yarn环境需要配置文件

mapred-site.xml

<!-- 使用哪个环境来进行分布式计算的,默认是local-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

yarn-site.xml

<!-- 跑什么样的作业 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

启动Yarn进程

5.1、启动ResoureManager、NodeManager

   ./start-yarn.sh

    或

    ./yarn-daemon.sh start resouremanager

   ./yarn-daemon.sh start nodemanager

5.2、访问

http://localhost:8080

注意:8032是RPC tcp协议端口号,8088是Http协议端口号

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1、查看免密码的ssh

ssh localhost

$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

$ chmod 0600 ~/.ssh/authorized_keys

2、免密码登录  cd /root/.ssh/

生成公私钥对

ssh-keygen -t rsa

生成 id_rsa id_rsa.pub

拷贝公钥到远程主机或本机authorized_keys文件

ssh-copy-id <主机名>  生成authorized_keys

可以直接连接第二个服务器无需密码,回来需要密码

ssh 主机名2

3、HDFS命令行

     3.1、bin/hdfs dfs 命令

             -help:显示命令的帮助信息

             -mkdir【-p】:创建目录,p可以创建不存在的父路径

             -ls(r):显示当前目录下的所有文件

             -put: 本地文件上传到HDFS上

             -copyFromLocal:本地文件复制到HDFS

             -moveFromLocal:本地文件移动到HDFS

             -du(s):显示目录中所有文件大小;只指定一个文件时,显示此文件大小

             -count(p):显示当前目录下的所有文件大小

             ------------------------------------------------------------------------------------------------

             -mv:移动文件/到目标目录

             -cp:复制文件/目录到目标目录

             -rm(r):删除文件/目录

             -get[-ignoreCrc]:复制文件到本地,可以忽悠crc校验

             -cat:在终端显示文件内容

             -text:在终端显示文件内容,将源文件输出为文本格式

             -copyToLocal[-ignoreCrc]:复制文件到本地

             -moveToLocal:移动文件到本地

     3.2、bin/hdfs dfsadmin 管理命令(主要用于运维开发不重要)

             -report:查看文件系统的基本信息和统计信息

             -safemode enter | leave | get |wait:安全模式命令

             -refreshNodes:重新读取host和exclude文件,在新增节点或者注销节点时用

             -finalizeUpgrade:终结HDFS的升级操作

             -setQuota <quota> <dirname> :为每个目录<dirname>设定配额<quota>

             -clrQuota <dirname> :为每个目录<dirname>清除配额设定

            

---------------------------------------------------------------------------------问题----------------------------------------------------------------------------------

1、./bin/hadoop jar /usr/local/big_data/hadoop/hadoop-3.1.1/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.1.jar wordcount file:/usr/local/big_data/hadoop/hadoop-3.1.1/LICENSE.txt file:/usr/local/big_data/hadoop/output报错

错误: 找不到或无法加载主类org.apache.hadoop.mapreduce.v2.app.MRAppMaster

命令行输入:hadoop classpath

vim etc/hadoop/yarn-site.xml

<property>
        <name>yarn.application.classpath</name>
        <value>hadoop classpath返回的值</value>
    </property>

重启./sbin/start-yarn.sh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值