在Linux下搭建Hadoop有哪些阁楼搭建注意事项项

Hadoop集群安装注意事项_服务器应用_Linux公社-Linux系统门户网站
你好,游客
Hadoop集群安装注意事项
来源:Linux社区&
作者:Linux
(日)近日在网上找到两篇关于下单机和集群安装的文章,英文的
可以用来参考一下:
1. http://www./tutorials/running-hadoop-on-ubuntu-linux-single-node-cluster/
2. http://www./tutorials/running-hadoop-on-ubuntu-linux-multi-node-cluster/
总体来说,跟单机版的差不多,只是配置文件需要做些修改,以及各个服务器之间可以无密码ssh切换。现在简单描述一下:
1. 所有机器的安装目录要保持一致,比如都是在~/hadoop/目录下,将hadoop添加到环境变量当中去,修改.bashrc,在后面添加:
export HADOOP_HOME=/home/user/hadoop/hadoop
export PATH=${HADOOP_HOME}/bin:${PATH}
export HADOOP_CONF_DIR=$HADOOP_HOME/conf
CLASSPATH=.:$HADOOP_HOME/lib
2. 修改hadoop-env.sh
export JAVA_HOME=$JAVA_HOMEexport HADOOP_CLASSPATH="$HADOOP_CLASSPATH"export HADOOP_HEAPSIZE=2048
3. 设置masters内容&& & machine1 (/etc/hosts里面需要配置好的,具体查看这个文件)&& 4. 设置slaves内容&& & machine1&& & machine2&& 5. 设置core-site.xml&&configuration&&
&property&&&name&hadoop.tmp.dir&/name&& & & & &value&/home/user/hadoop/hadoop/tmp&/value&&
&/property&&
&property&&&name&fs.default.name&/name&& & & & &value&hdfs://machine1:9000&/value&&
&/property&&/configuration&&&6. 设置hdfs-site.xml&&configuration&& & &property&&&name&dfs.replication&/name&& & & & &value&2&/value&& & &/property&&/configuration&&&7. 设置mapred-site.xml&&configuration&&
&property&&&name&mapred.job.tracker&/name&&&value&machine1:9001&/value&&
&/property&&
&property&& & &name&mapred.child.java.opts&/name&& & &value&-server -Xmx1g -Djava.net.preferIPv4Stack=true&/value&& &/property&&/configuration&&&注:mapred.child.java.opts是执行task的时候新建的子JVM虚拟机最大内存的指定,默认是640M&所以也可以不设置,只有当你运行任务内存不够的时候设置这个值。&将hadoop-env.sh,core-site.xml,hdfs-site.xml,mapred-site.xml,masters,slaves文件分发到其它hadoop node, 依然是通过start-dfs.sh start-mapred.sh启动hadoop, 启动好之后,master机器上的进程还是跟单机版的一样有namenode, datanode, secondaryNameNode,jobtracker, tasktracker, slave机器上有两个进程,一个是datanode , 一个tasktracker进程。
更多Hadoop相关信息见 专题页面
相关阅读:
Hadoop 2.0 安装向导 (0.23.x)
Hadoop 1.2.1 单节点安装(Single Node Setup)步骤
在上安装Hadoop
Ubuntu 12.04安装Hadoop
CentOS 6.3 x86_64安装与配置Hadoop-1.0
Hadoop入门--Hadoop2伪分布式安装
相关资讯 & & &
& (12/08/:37)
& (09/22/:19)
& (12/16/:01)
& (12/06/:04)
& (09/09/:58)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款博客访问: 552461
博文数量: 99
博客积分: 2544
博客等级: 少校
技术积分: 1665
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: 服务器与存储
&& &&& &&& &&&&&& 在linux系统上安装hadoop
&& 我的系统是centos 5.4
1, 添加hadoop管理账号 hadoop-user
useradd hadoop-user
2, 修改主机名
vi /etc/hosts
192.168.0.4 master
192.168.0.3 node1
192.168.0.5 node2
3, 开启ssh服务,并把ssh设置成无密码登录。
注意要使用用户hadoop-user启动,才不会出问题。不能用root启动。
(1)在NameNode 上实现无密码登录本机:
$ ssh-keygen
直接回车,完成后会在~/.ssh/生成两个文件:id_dsa 和id_dsa.pub。这两个是成对
出现,类似钥匙和锁。再把id_dsa.pub 追加到授权key 里面(当前并没有authorized_keys
文件):$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys。完成后可以实现无密码
登录本机:$ ssh localhost。
(2)实现NameNode 无密码登录其他DataNode:
把NameNode 上的id_dsa.pub 文件追加到dataNode 的authorized_keys 内( 以
192.168.0.3 节点为例):
a. 拷贝NameNode 的id_dsa.pub 文件:
$ scp id_dsa.pub hadoop-user
b. 登录192.168.0.3,执行$ cat id_dsa.pub >> .ssh/authorized_keys
其他的dataNode 执行同样的操作。
注意:如果配置完毕,如果namenode 依然不能访问datanode,可以修改datanode 的
authorized_keys:$ chmod 600 authorized_keys。
注意,如果还是提示登陆,则一般是权限问题,把 权限改成这样就一般能够解决:
chmod 700 ./ssh
chmod 700 /home/username
chmod 600 ./ssh/authorized_keys
4, 关闭防火墙
/etc/init.d/iptables stop
5, 安装jdk
5.1, 下载jdk
/javase/downloads/widget/jdk6.jsp
选中接收协议规定。 可能需要注册一个免费的账号,没关系,注册一个账号即可。
我这里选择的是 : jdk-6u14-linux-i586-rpm.bin这个包。
5.2, 安装jdk
把jdk-6u14-linux-i586-rpm.bin 放到一个目录中,并添加可执行权限:
chmod a+x jdk-6u14-linux-i586-rpm.bin
./jdk-6u14-linux-i586-rpm.bin
按照提示一路同意,回车。完成安装。
最后安装好后的jdk的路径是在/usr/java/ 下面。
5.3, 配置jdk 运行路径
安装后,添加如下语句到/etc/profile 中:
export JAVA_HOME=/usr/java/jdk1.6.0_14/
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
注意:每台机器的java 环境最好一致。安装过程中如有中断,切换为root 权限来安装。
java -version 如果出现相关JDK版本信息,证明成功
6, 安装hadoop
/apache-mirror/hadoop/core/hadoop-0.20.1/hadoop-0.20.2.tar.gz
cd /home/hadoop-user/
tar xzvf& hadoop-0.20.2.tar.gz
6.3 添加hadoop的配置路径
export HADOOP_HOME=/home/hadoop-user/hadoop-0.20.2/hadoop-0.20.2
export PATH=$HADOOP_HOME/bin:$PATH
6.4 配置hadoop
hadoop的主要的配置文件在$HADOOP_HOME/conf下
(1)在conf/hadoop-env.sh 中配置Java 环境(namenode 与datanode 的配置相同):
&& $ vim hadoop-env.sh
&& $ export JAVA_HOME=/home/hexianghui/jdk1.6.0_14
(2)配置conf/masters 和conf/slaves 文件:(只在namenode 上配置)
&& masters文件中添加一行: 192.168.0.4
&& slaves文件中添加两行:
&& &192.168.0.3
&& &192.168.0.5
(3)配置conf/core-site.xml, conf/hdfs-site.xml 及conf/mapred-site.xml(简单配置,datanode 的配置相同)
core-site.xml:
hadoop.tmp.dir
/home/hadoop-user/tmp # 注意,不要创建tmp目录
A base for other temporary directories.
fs.default.name
hdfs://192.168.0.4:9000
hdfs-site.xml:( replication 默认为3,如果不修改,datanode 少于三台就会报错)
dfs.name.dir
/home/hadoop-user/name/
#hadoop的name目录路径,不要创建该目录 &
dfs.data.dir
/home/hadoop-user/data/
#hadoop的data目录路径,不要创建该目录
dfs.replication
mapred-site.xml:
mapred.job.tracker
192.168.0.4:9001
6.5、启动所有hadoop守护进程
先进入hadoop-0.20.2/bin,首先格式化文件系统:
$ hadoop namenode –format
启动Hadoop的所有守护进程:
# ./start-all.sh
在bin/下面有很多启动脚本,可以根据自己的需要来启动。
* start-all.sh 启动所有的Hadoop守护。包括namenode, datanode, jobtracker, tasktrack
* stop-all.sh 停止所有的Hadoop
* start-mapred.sh 启动Map/Reduce守护。包括Jobtracker和Tasktrack
* stop-mapred.sh 停止Map/Reduce守护
* start-dfs.sh 启动Hadoop DFS守护.Namenode和Datanode
* stop-dfs.sh 停止DFS守护
#查看运行进程
[root@master bin]# jps
6813 NameNode
7164 JobTracker
7047 SecondaryNameNode
出现4个这样的进程,且datanode没有error,同时访问ui正常才算成功。
查看集群状态:
$ hadoop dfsadmin -report
用web查看:
ui: --web UI for HDFS name node(s)
--web UI for MapReduce job tracker(s)
--web UI for task tracker(s)
6.6, 运行实例
运行wordcount.java 程序
在hadoop的源码包里有一个wordcount的例子,可以直接运行,验证安装是否正确。
hadoop-0.20.1-examples.jar 是wordcount的jar包
wordcount 是类名
cd /home/hadoop-user/hadoop-0.20.2
(1)先在本地磁盘建立两个输入文件file01 和file02:
$ echo “Hello World Bye World” > file01
$ echo “Hello Hadoop Goodbye Hadoop” > file02
(2)在hdfs 中建立一个input 目录:$ hadoop fs –mkdir input
(3)将file01 和file02 拷贝到hdfs 中:
$ hadoop fs –copyFromLocal&
/home/hadoop-user/soft/file0* input
(4)执行wordcount:
$ hadoop jar hadoop-0.20.1-examples.jar wordcount input output
(5)完成之后,查看结果:
$ hadoop fs -cat output/part-r-00000
------------------- 运行结果--------------
------------------------------------------
http://localhost/50030 可以查看运行的job和结果
阅读(7944) | 评论(0) | 转发(1) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。502 Bad Gateway
502 Bad Gateway
nginx/1.4.7下次自动登录
Geeker的编程技术博客
现在的位置:
Eclipse下搭建Hadoop2.7.0开发环境
一、安装Eclipse
二、在eclipse上安装hadoop插件
&&&&1、下载hadoop插件
&2、把插件放到eclipse/plugins目录下
&&&&3、重启eclipse,配置Hadoop installation directory&&&&
&&&& 如果插件安装成功,打开Windows—Preferences后,在窗口左侧会有Hadoop Map/Reduce选项,点击此选项,在窗口右侧设置Hadoop安装路径。
4、配置Map/Reduce Locations
&&&& 打开Windows—Open Perspective—Other
选择Map/Reduce,点击OK
&&&&在右下方看到如下图所示
点击Map/Reduce Location选项卡,点击右边小象图标,打开Hadoop Location配置窗口:
&&&&输入Location Name,任意名称即可.配置Map/Reduce Master和DFS Mastrer,Host和Port配置成与core-site.xml的设置一致即可。(貌似Map/Reduce Master 的端口设置任何数字都可以?)
点击"Finish"按钮,关闭窗口。
&点击左侧的DFSLocations—&myhadoop(上一步配置的location name),如能看到user,表示安装成功
&&&&如果如下图所示表示安装失败,请检查Hadoop是否启动,以及eclipse配置是否正确。
三、新建WordCount项目
&&&&File—&Project,选择Map/Reduce Project,输入项目名称WordCount等。
&&&&在WordCount项目里新建class,名称为WordCount,代码如下:
import&java.io.IOE
import&java.util.StringT
import&org.apache.hadoop.conf.C
import&org.apache.hadoop.fs.P
import&org.apache.hadoop.io.IntW
import&org.apache.hadoop.io.T
import&org.apache.hadoop.mapreduce.J
import&org.apache.hadoop.mapreduce.M
import&org.apache.hadoop.mapreduce.R
import&org.apache.hadoop.mapreduce.lib.input.FileInputF
import&org.apache.hadoop.mapreduce.lib.output.FileOutputF
import&org.apache.hadoop.util.GenericOptionsP
public&class&WordCount&{
public&static&class&TokenizerMapper&extends&Mapper&Object,&Text,&Text,&IntWritable&{&
  private&final&static&IntWritable&one&=&new&IntWritable(1);
  private&Text&word&=&new&Text();
  public&void&map(Object&key,&Text&value,&Context&context)&throws&IOException,&InterruptedException&{
    StringTokenizer&itr&=&new&StringTokenizer(value.toString());
      while&(itr.hasMoreTokens())&{
        word.set(itr.nextToken());
        context.write(word,&one);
      }
public&static&class&IntSumReducer&extends&Reducer&Text,IntWritable,Text,IntWritable&&{
  private&IntWritable&result&=&new&IntWritable();&
  public&void&reduce(Text&key,&Iterable&IntWritable&&values,Context&context)&throws&IOException,&InterruptedException&{
    int&sum&=&0;
    for&(IntWritable&val&:&values)&{
      sum&+=&val.get();
    result.set(sum);
    context.write(key,&result);
public&static&void&main(String[]&args)&throws&Exception&{
  Configuration&conf&=&new&Configuration();
  String[]&otherArgs&=&new&GenericOptionsParser(conf,&args).getRemainingArgs();
  if&(otherArgs.length&!=&2)&{
    System.err.println("Usage:&wordcount&&in&&&out&");
    System.exit(2);
  Job&job&=&new&Job(conf,&"word&count");
  job.setJarByClass(WordCount.class);
  job.setMapperClass(TokenizerMapper.class);
  job.setCombinerClass(IntSumReducer.class);
  job.setReducerClass(IntSumReducer.class);
  job.setOutputKeyClass(Text.class);
  job.setOutputValueClass(IntWritable.class);
  FileInputFormat.addInputPath(job,&new&Path(otherArgs[0]));
  FileOutputFormat.setOutputPath(job,&new&Path(otherArgs[1]));
  System.exit(job.waitForCompletion(true)&?&0&:&1);
&&&&1、在HDFS上创建目录input
&&&&hadoop fs -mkdir /user
& & & & & & & & hadoop fs -mkdir /user/inhput
&&&&2、拷贝本地README.txt到HDFS的input里
&&&&&&&& hadoop fs -copyFromLocal /opt/hadoop/README.txt /user/input
&&&&3、点击WordCount.java,右键,点击Run As—&Run Configurations,配置运行参数,即输入和输出文件夹
  hdfs://localhost:9000/user/input & &hdfs://localhost:9000/user/output
点击Run按钮,运行程序。
&&&&4、运行完成后,查看运行结果&&&&&&&&
&&&&&&&&方法1:
&&&&&&&&hadoop fs -ls output
&&&&&&&&可以看到有两个输出结果,_SUCCESS和part-r-00000
&&&&&&&&执行hadoop fs -cat output/*
&&&&&&&&方法2:
&&&&&&&&展开DFS Locations,如下图所示,双击打开part-r00000查看结果
【上篇】【下篇】
您可能还会对这些文章感兴趣!
同分类最新文章Ubuntu14.04安装配置Hadoop2.6.0(完全分布式)与 wordcount实例运行_服务器应用_Linux公社-Linux系统门户网站
你好,游客
Ubuntu14.04安装配置Hadoop2.6.0(完全分布式)与 wordcount实例运行
来源:Linux社区&
作者:lizhangyong1989
我的环境是:14.04+2.6.0+JDK1.8.0_25
官网2.6.0的安装教程:
为了方面配置,我在每台机器上都使用了hadoop用户来操作,这样做的确够方便。
结点信息:(分布式集群架构:master为主节点,其余为从节点)
122.205.135.254
122.205.135.212
1.JDK的安装
首先Hadoop运行需要Java的支持,所以必须在集群中所有的节点安装JDK,
jdk1.8.0_25的详细安装见我的另一篇文章: 注意:最好将集群中的JDK都安装在同一目录下,便于配置。实践中,笔者一般将JDK安装在/usr/java这个目录,但并不是必须的。
2.配置hosts文件
修改集群中所有机器的/etc/hosts,打开该文件的命令如下:
sudo gedit /etc/hosts
122.205.135.254 master
122.205.135.212 slave1
如图所示:
注意:这里的master、slave1、slave2等等,指的是机器的机器名(使用命令hostname可以查看本机的机器名),切记,如果不是机器名的话会出问题的,并且集群中所有结点的机器名都应该不一样。
3.SSH无密码登录
Hadoop主从节点无密码登录的安装配置详细见我的另一篇章:点击打开链接
4.Hadoop的安装与配置
(1).下载解压Hadoop稳定版
我用的是hadoop-2.6.0,下载地址:
将下载后的Hadoop 拷贝到hadoop目录下,解压到master服务器的/hadoop目录下(配置好master结点后再将其复制到其它的服务器上,一般来说,群集中所有的hadoop都安装在同一目录下):
解压命令如下:
tar xzfv hadoop-2.6.0.tar.gz
(2).配置Hadoop
1.修改hadoop-2.6.0/etc/hadoop/hadoop-env.sh,添加JDK支持:
export JAVA_HOME=/usr/java/jdk1.8.0_25
如果不知道你的JDK目录,使用命令echo $JAVA_HOME查看。
2.修改hadoop-2.6.0/etc/hadoop/core-site.xml
注意:必须加在&configuration&&/configuration&节点内
&configuration&&property&& & & & &name&hadoop.tmp.dir&/name&& & & & &value&/home/hadoop/hadoop-2.6.0/tmp&/value&& & & & &description&Abase for other temporary directories.&/description&& & &/property&& & &property&& & & & &name&fs.default.name&/name&& & & & &value&hdfs://master:9000&/value&& & &/property&&/configuration&
3.修改hadoop-2.6.0/etc/hadoop/hdfs-site.xml
&property&& & &name&dfs.name.dir&/name&& & &value&/home/hadoop/hadoop-2.6.0/dfs/name&/value&& & &description&Path on the local filesystem where the NameNode stores the namespace and transactions logs persistently.&/description&&/property&&&property&& & &name&dfs.data.dir&/name&& & &value&/home/hadoop/hadoop-2.6.0/dfs/data&/value&& & &description&Comma separated list of paths on the local filesystem of a DataNode where it should store its blocks.&/description&&/property&&property&& & &name&dfs.replication&/name&& & &value&1&/value&&/property&
4.修改hadoop-2.6.0/etc/hadoop/mapred-site.xml
&property&& & &name&mapred.job.tracker&/name&& & &value&master:9001&/value&& & &description&Host or IP and port of JobTracker.&/description&&/property&
5. 修改hadoop-2.6.0/etc/hadoop/masters
列出所有的master节点:
6.修改hadoop-2.6.0/etc/hadoop/slaves
这个是所有datanode的机器,例如:
7.将master结点上配置好的hadoop文件夹拷贝到所有的slave结点上
以slave1为例:命令如下:
scp -r& ~/hadoop-2.6.0
安装完成后,我们要格式化HDFS然后启动集群所有节点。
5.启动Hadoop
1.格式化HDFS文件系统的namenode
(这里要进入hadoop-2.6.0目录来格式化好些):
cd hadoop-2.6.0& //进入hadoop-2.6.0目录
bin/hdfs namenode -format& //格式化
2.启动Hadoop集群启动hdrs命令如下:
sbin/start-dfs.sh //开启进程
成功的话输入jps会出现如下界面:
补充,关闭hdfs集群的命令如下:
sbin/stop-dfs.sh
我们也可以通过网页来看是否正常安装与配置,地址如下:http://master:50070/
安装和配置Hadoop2.2.0&
Ubuntu 13.04上搭建Hadoop环境
Ubuntu 12.10 +Hadoop 1.2.1版本集群配置
Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)
Ubuntu下Hadoop环境的配置
单机版搭建Hadoop环境图文教程详解
搭建Hadoop环境(在Winodws环境下用虚拟机虚拟两个Ubuntu系统进行搭建)
更多详情见请继续阅读下一页的精彩内容:
相关资讯 & & &
& (11月17日)
& (10月17日)
& (06月22日)
& (10月17日)
& (08月10日)
& (08/02/:46)
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款}

我要回帖

更多关于 hadoop linux环境搭建 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信