如何在centos7上配置hadoop

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在centos7上配置hadoop相关的知识,希望对你有一定的参考价值。

参考技术A   1
解压hadoop,并配置环境变量
  2
使用which
hadoop命令,测试是否成功
  3
配置core-site.xml
  4
配置hdfs-site.xml
  5
配置yarn-site.xml(非必须,使用默认也可)
  6
配置mapred-site.xml
  7
配置mapred-env.sh里面的JAVA路径
  8
如上的配置完成后,需要新建几个文件夹,来提供HDFS的格式化底层一个是hadoop的tmp文件夹,另外的是namenode和datanode的文件夹,来分别存储各自的信息
  9
上面一切完成后,即可执行hadoop
namenode
-format
进行格式化
  10
然后启动伪分布式集群,执行命令sbin/start-all.sh
最后使用JPS查看JAVA进程
  11
配置本机的hosts文件,映射主机名信息
  下面来详细说下,各个步骤的具体操作:
  在这之前,最好配置好本机的SSH无密码登陆操作,避免hadoop进程之间通信时,需要验证。
  下面是各个xml文件的配置
  <!--
core-site.xml配置
-->
  <configuration>
  <property>
  <name>fs.default.name</name>
  <value>hdfs://192.168.46.28:9000</value>
  </property>
  <property>
  <name>hadoop.tmp.dir</name>
  <value>/root/hadoop/tmp</value>
  </property>
  </configuration>
  <!--
hdfs-site.xml配置
-->
  <configuration>
  <property>
  <name>dfs.replication</name>
  <value>1</value>
  </property>
  <property>
  <name>dfs.namenode.name.dir</name>
  <value>/root/hadoop/nddir</value>
  </property>
  <property>
  <name>dfs.datanode.data.dir</name>
  <value>/root/hadoop/dddir</value>
  </property>
  <property>
  <name>dfs.permissions</name>
  <value>false</value>
  

在CentOS上部署单机版Hadoop

本文记录如何在一台CentOS上部署单机版Hadoop。CentOS安装在Azure上。

安装CentOS

在Azure上新建一台虚拟机,选择操作系统CentOS6.8。记住主机名,比如centosforhd。主机名在后面设置中会用到。

安装好之后,用Putty工具登录到CentOS上。登录之后请转为root用户来操作下面的安装。(命令: sudo su

安装Java

1 下载JDK 

从Java官网下载最新的JDK。如果是在windows下下载,下载之后可以通过SSH Secure File Transfer Client工具拷贝到CentOS上。把下载好的JDK文件(jdk-8u131-linux-x64.tar.gz)放到 ~/java/文件夹下(临时存放)。

2 解压

在目录 /usr/lib/jvm 下解压JDK压缩文件: tar -zxvf ~/java/jdk-8u131-linux-x64.tar.gz

解压之后,通过ls命令可以看到目录 /usr/lib/jvm 下多了个目录 jdk1.8.0_131 。

3 设置环境变量

编辑 /etc/profile 设置环境变量。 vim /etc/profile

在文件末尾添加下面几行:

export JAVA_HOME=/usr/lib/jvm/java8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=$PATH:$JAVA_HOME/bin

 

然后运行命令让改动立刻生效: source /etc/profile

4 确认安装成功

运行命令 java -version,看是返回java版本号。

安装Hadoop

1 下载Hadoop Binary 

到Hadoop官网(http://hadoop.apache.org/)下载Hadoop binary。在CentOS下用命令wget http://apache.fayea.com/hadoop/common/hadoop-2.8.0/hadoop-2.8.0.tar.gz 下载到 ~/hadoop/ 目录下。

2 解压

把tar.gz解压缩到目录 /usr/bin/hadoop/ 下。在目录 /usr/bin/hadoop/ 下运行命令 tar -zxvf ~/hadoop/hadoop-2.8.0.tar.gz

解压之后,通过ls命令可以看到目录 /usr/lib/hadoop/ 下多了个目录 hadoop-2.8.0 。

3 设置环境变量

编辑 /etc/profile 设置环境变量。 vim /etc/profile

在文件末尾添加下面几行:

export HADOOP_HOME=/usr/lib/hadoop/hadoop-2.8.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

然后运行命令让改动立刻生效: source /etc/profile

4 配置ssh无密码登录

运行命令 ssh-keygen -t rsa

导入公钥,把id_rsa.pub追加到授权的key文件中: cat .ssh/id_rsa.pub >> .ssh/authorized_keys

5 更改设置文件

5.1 配置core-site.xml

vim /usr/lib/hadoop/hadoop-2.8.0/etc/hadoop/core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://centosforhd:9000</value>
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>/usr/lib/hadoop/hadoop-2.8.0/tmp</value>
</property>
</configuration>

注意上面红色部分,请替换成主机的名字。

5.2 配置hdfs-site.xml

vim /usr/lib/hadoop/hadoop-2.8.0/etc/hadoop/hdfs-site.xml

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

5.3 配置mapred-site.xml

先将mapred-site.xml.temporary 重命名为 mapred-site.xml :mv /usr/lib/hadoop/hadoop-2.8.0/etc/hadoop/mapred-site.xml.temporary /usr/lib/hadoop/hadoop-2.8.0/etc/hadoop/mapred-site.xml

再编辑: vim /usr/lib/hadoop/hadoop-2.8.0/etc/hadoop/mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

5.4 配置yarn-site.xml

vim /usr/lib/hadoop/hadoop-2.8.0/etc/hadoop/yarn-site.xml

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

6 格式化hdfs

在hadoop安装目录下(/usr/lib/hadoop/hadoop-2.8.0)下运行: ./bin/hdfs namenode -format

7 启动服务

在hadoop安装目录下(/usr/lib/hadoop/hadoop-2.8.0)下运行:./bin/start-all.sh

8 确认运行

输入命令 jps 查看java进程,看是否有 DataNode, SecondaryNameNode, NameNode。

 





以上是关于如何在centos7上配置hadoop的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop伪集群(单节点集群)安装(Centos7)

Hadoop伪集群(单节点集群)安装(Centos7)

Hadoop伪集群(单节点集群)安装(Centos7)

Hadoop伪集群(单节点集群)安装(Centos7)

Centos7普通用户安装Hadoop

Centos7安装hadoop