Hadoop 安装

hadoop的核心:HDFS(负责数据存储)、MapReduce(计算模型)、YARN(资源调度管理)

事先需要安装JDK 和 ssh

  • 安装ssh

    sudo apt install openssh-server

  • 配置ssh无密登陆

    ssh-keygen -t rsa   # 一直回车
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  • 测试ssh无密登陆

    ssh localhost # 如果不提示输入密码则配置成功

1、下载

http://mirrors.hust.edu.cn/apache/hadoop/core/stable/

2、解压

tar -zxvf hadoop-2.7.4.tar.gz

3、配置环境变量

export HADOOP_HOME=/usr/panteng/hadoop-2.7.4
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

使生效:source /etc/profile

测试:hadoop version

输出对应的版本号

4、配置

进入到配置目录: cd etc/hadoop/   修改配置文件

<configuration>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>file:/usr/local/hadoop/tmp</value>
                <description>Abase for other temporary directories.</description>
        </property>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://localhost:9000</value>
        </property>
</configuration>
core-site.xml
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
hdfs-site.xml

5、nameNode初始化

进入bin目录:

hdfs namenode -format

如果出现环境问题,可以在 etc/hadoop/hadoop-env.sh里面修改  比如JAVA_HOME等

6、启动

进入sbin目录:

执行start-dfs.sh

涉及到ssh 密码,可以进行如下配置,取消密码:

1 cd ~/.ssh  # 如果找不到这个文件夹,先执行一下 "ssh localhost"
2 ssh-keygen -t rsa
3 cp id_rsa.pub authorized_keys

通过jps  查看进程

其中有9853 DataNode  和  9723 NameNode进程就OK

http://10.38.164.80:50070 查看WEB

至此hadoop算是启动了

7、配置YARN

<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
</configuration>
mapred-site.xml
<configuration>

<!-- Site specific YARN configuration properties -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>

</configuration>
yarn-site.xml

 8、启动

start-all.sh

# 启动历史服务器,以便在Web中查看任务运行情况

mr-jobhistory-daemon.sh start historyserver

测试:http://10.38.164.80:8088/cluster  查看运行情况

HDFS本身是一个系统,有自己的操作与管理方式,可能与linux的命令是不一样的,一般通过hdfs命令;具体可以使用hdfs --help查看

建立用户空间:hdfs dfs -mkdir /user

        hdfs dfs -mkdir /user/panteng 

查看用户空间:hadoop fs -ls /          hadoop fs -ls /user

上传文件到用户空间:hdfs dfs -put etc/hadoop/ /user/panteng/input

share/hadoop/mapreduce  目录下,执行:hadoop jar hadoop-mapreduce-examples-2.7.4.jar grep /user/panteng/input output 'dfs[a-z.]+'

产生ERROR: Permission denied: user=panteng, access=WRITE, inode="/user/root":root:supergroup:drwxr-xr-x  执行如下命令

hdfs dfs -chmod 777 /user/root

原文地址:https://www.cnblogs.com/tengpan-cn/p/7462950.html