如何在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的主要内容,如果未能解决你的问题,请参考以下文章