CentOS上hadoop伪分布式配置
来源:互联网 发布:中核原子能公司 知乎 编辑:程序博客网 时间:2024/05/01 12:10
Hadoop是用作处理大数据用的,核心是HDFS、Map/Reduce。虽然目前工作中不需要使用这个,但是,技多不压身,经过虚拟机很多遍的尝试,终于将Hadoop2.5.2的环境顺利搭建起来了。
首先准备一个CentOS,将主机名改为master,并且在/etc/hosts里面加入master对应的本机ip地址。
Linux基本配置
vi
/etc/sysconfig/network
#编辑文件里面的HOSTNAME=master
vi
/etc/hosts
#添加
本机IP地址 master
然后关闭iptables并设置开机不启动。
service iptables stop
chkconfig iptables off
重启系统,接下来是配置ssh无密码登陆。配置这个的理由是在启动hadoop可以不用输入密码。
SSH无密码登陆
vi
/etc/ssh/sshd_config
#以下4行的注释需要打开
HostKey
/etc/ssh/ssh_host_rsa_key
RSAAuthentication
yes
PubkeyAuthentication
yes
AuthorizedKeysFile .
ssh
/authorized_keys
#保存,并重启sshd
service sshd restart
#生成免登陆秘钥
ssh
-keygen -t rsa
#一路回车就行。之后会在当前登陆用户主目录中的.ssh文件夹里生成2个文件。
#进入.ssh目录。
cat
id_rsa.pub >> authorized_keys
#现在可以用ssh无密码登陆系统了。
ssh
localhost
JDK安装配置(略)
使用的版本是jdk-7u79-linux-x64。
安装并配置Hadoop2.5.2
将下载好的tar.gz包上传至环境。
tar
-zxvf hadoop-2.5.2.
tar
.gz -C
/usr
vi
/etc/profile
#将以下内容放在最后面。
export
JAVA_HOME=
/usr/java/jdk1
.7.0_79
export
CLASSPATH=.:$JAVA_HOME
/lib/dt
.jar:$JAVA_HOME
/lib/tools
.jar
export
HADOOP_HOME=
/usr/hadoop-2
.5.2
export
PATH=$PATH:$JAVA_HOME
/bin
:$HADOOP_HOME
/bin
:$HADOOP_HOME
/sbin
export
HADOOP_COMMON_HOME=$HADOOP_HOME
export
HADOOP_HDFS_HOME=$HADOOP_HOME
export
HADOOP_MAPRED_HOME=$HADOOP_HOME
export
HADOOP_YARN_HOME=$HADOOP_HOME
export
HADOOP_CONF_DIR=$HADOOP_HOME
/etc/hadoop
export
HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME
/lib/native
export
HADOOP_OPTS=-Djava.library.path=$HADOOP_HOME
/lib
#保存,并执行source /etc/profile
#配置Hadoop
#创建hadoop的name与data目录
mkdir
-p
/usr/hdfs/name
mkdir
-p
/usr/hdfs/data
mkdir
-p
/usr/hdfs/tmp
cd
/usr/hadoop-2
.5.2
/etc/hadoop
设置以下文件的JAVA_HOME
hadoop-
env
.sh hadoop-yarn.sh
vi
core-site.xml
#在configuration节点里面加入以下配置,注意ip改为本机ip
<property>
<name>hadoop.tmp.
dir
<
/name
>
<value>
/usr/hdfs/tmp
<
/value
>
<description>A base
for
other temporary directories.<
/description
>
<
/property
>
<!--
file
system properties-->
<property>
<name>fs.defaultFS<
/name
>
<value>hdfs:
//192
.168.1.112:9000<
/value
>
<
/property
>
vi
hdfs-site.xml
#同样在configuration节点里面加入以下配置
<property>
<name>dfs.namenode.name.
dir
<
/name
>
<value>
/usr/hdfs/name
<
/value
>
<
/property
>
<property>
<name>dfs.datanode.data.
dir
<
/name
>
<value>
/usr/hdfs/data
<
/value
>
<
/property
>
<property>
<name>dfs.replication<
/name
>
<value>1<
/value
>
<
/property
>
<property>
<name>dfs.permissions<
/name
>
<value>
false
<
/value
>
<
/property
>
#从模板复制一份mapred-site.xml
cp
mapred-site.xml.template mapred-site.xml
vi
mapred-site.xml
#同样在configuration节点里面加入以下配置
<property>
<name>mapreduce.framework.name<
/name
>
<value>yarn<
/value
>
<
/property
>
vi
yarn-site.xml
#同样在configuration节点里面加入以下配置,注意将ip地址换成本机的。
<property>
<name>yarn.nodemanager.aux-services<
/name
>
<value>mapreduce_shuffle<
/value
>
<
/property
>
<property>
<description>The address of the applications manager interface
in
the RM.<
/description
>
<name>yarn.resourcemanager.address<
/name
>
<value>192.168.1.112:18040<
/value
>
<
/property
>
<property>
<description>The address of the scheduler interface.<
/description
>
<name>yarn.resourcemanager.scheduler.address<
/name
>
<value>192.168.1.112:18030<
/value
>
<
/property
>
<property>
<description>The address of the RM web application.<
/description
>
<name>yarn.resourcemanager.webapp.address<
/name
>
<value>192.168.1.112:18088<
/value
>
<
/property
>
<property>
<description>The address of the resource tracker interface.<
/description
>
<name>yarn.resourcemanager.resource-tracker.address<
/name
>
<value>192.168.1.112:8025<
/value
>
<
/property
>
至此,已经将Hadoop初步的环境配置好了,在启动之前还需要格式化namenode。
输入命令“hadoop namenode -format”;
启动命令:
start-dfs.sh
start-yarn.sh
停止命令:
stop-dfs.sh
stop-yarn.sh
启动完毕,打开浏览器输入 http://192.168.1.112:50070 与 http://192.168.1.112:18088 验证安装。
测试Hadoop
通过运行hadoop自带的wordcount来验证安装是否正确。
进入hadoop安装的目录,输入以下命令。
mkdir
example
cd
example
编辑file1.txt与file2.txt
vi
file1.txt
hello zhm
hello hadoop
hello cz
vi
file2.txt
hadoop is ok
hadoop is newbee
hadoop 2.5.2
cd
..
hadoop fs -
mkdir
/data
hadoop fs -put -f example
/file1
.txt example
/file2
.txt
/data
#运行wordcount例子
hadoop jar .
/share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2
.5.2-sources.jar org.apache.hadoop.examples.WordCount
/data
/output
#查看运行结果
hadoop fs -
cat
/output/part-r-00000
#结果如下:
2.5.2 1
cz 1
hadoop 4
hello 3
is 2
newbee 1
ok 1
zhm 1
到这里,环境就已经配置好了,下面就是搞使用Maven开发Hadoop项目了。
HDFS常用命令
创建HDFS文件夹
在根目录创建input文件夹
hdfs dfs -mkdir -p /input
在用户目录创建input文件夹
说明:如果不指定“/目录”,则默认在用户目录创建文件夹
hdfs dfs -mkdir -p input
#等同于 hdfs dfs -mkdir -p /user/hadoop/input
查看HDFS文件夹
查看HDFS根文件夹
hdfs dfs -ls /
查看HDFS用户目录文件夹
hdfs dfs -ls
查看HDFS用户目录文件夹下input文件夹
hdfs dfs -ls input
#等同与 hdfs dfs -ls /user/hadoop/input
复制文件到HDFS
hdfs dfs -put /usr/hadoop/etc/hadoop input
删除文件夹
hdfs dfs -rm -r input
10参考资料
单机伪分布式搭建教程:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SingleCluster.html
集群环境搭建教程:http://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/ClusterSetup.html
- CentOS上hadoop伪分布式配置
- centos配置hadoop伪分布式环境
- CentOS中Hadoop单机伪分布式配置
- hadoop伪分布式配置
- HADOOP伪分布式配置
- hadoop伪分布式配置
- hadoop伪分布式配置
- hadoop伪分布式配置
- Hadoop伪分布式配置
- Hadoop伪分布式配置
- Hadoop伪分布式配置
- Hadoop 伪分布式配置
- hadoop伪分布式配置
- Hadoop伪分布式配置
- Hadoop 伪分布式配置
- hadoop伪分布式配置
- 配置伪分布式Hadoop
- 配置 hadoop 伪分布式
- 高精度除法(大数相除)
- C++编译链接
- 网络编程知识(8)--使用Nginx搭建WEB服务器
- 派生类对象初始化构造过程顺序
- easyui的treegrid,只能出来父节点,子节点出不来
- CentOS上hadoop伪分布式配置
- java的UDP协议通讯的客户端
- MFC应用程序中处理消息的顺序以及对话框关闭步骤
- 点-圆-圆柱类族的设计 2
- Max Script|控制器-转换约束_link
- ./i2cdetect: line 1: syntax error: unexpected word (expecting ")")
- C++实验5--1数组分离
- ViewPager 详解(二)---详解四大函数 .
- Quartz之Hello World