- 浏览: 246005 次
-
文章分类
最新评论
引自 http://blog.csdn.net/irelandken/article/details/8122474
第一步 ,环境准备.
服务器3台,可以用3个虚拟机代替.
操作系统.
CentOS 6.3 64
hadoop版本
hadoop 1.1.0 rpm
以下所有的操作,都是用 root 身份执行
以下安装,需要在每台机器上面安装.
下载好 jdk-7u9-linux-x64.rpm 和 hadoop-1.1.0-1.x86_64.rpm
vim /etc/sysconfig/network(分别修改为)HOSTNAME=namenode1HOSTNAME=datanode1HOSTNAME=datanode2
vim /etc/hosts(添加以下内容)192.168.10.137 namenode1192.168.10.138 datanode1192.168.10.139 datanode2
ping namenode1
ping datanode1ping datanode2
rpm -ivh jdk-7u9-linux-x64.rpm
java -version 马上有反应,方便!
rpm -ivh hadoop-1.1.0-1.x86_64.rpm
(CentOS 6.3默认已经安装了openssh和rsync)
1)SSH无密码原理
Master(NameNode | JobTracker)作为客户端,要实现无密码公钥认证,连接到服务器Salve(DataNode | Tasktracker)上时,需要在 Master上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥追加到所有的Slave的authorized_keys文件上。当Master通过SSH连接Salve时,Salve就会生成一个随机数并从authorized_keys找到Master的公钥,然后用这个公钥对随机数进行加密,并发送给Master。Master收到加密数之后再用私钥解密,并将解密数回传给Slave,Slave确认解密数无误之后就允许Master进行连接了。这就是一个公钥认证过程,其间不需要用户手工输入密码。重要过程是将客户端Master复制到Slave上。
以下操作,在 namenode1上面执行
ssh-keygen -t rsacat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys ( 使本机程序可以通过ssh登录本机)
2. 密钥生成完成以后,追加namenode的公钥到其他2台 datanode 上面,使得 namenode能访问其它 datanode
cat ~/.ssh/id_rsa.pub | ssh root@datanode1 "cat >>~/.ssh/authorized_keys"cat ~/.ssh/id_rsa.pub | ssh root@datanode2 "cat >>~/.ssh/authorized_keys"
vim /etc/ssh/sshd_config
service sshd restart
3. 验证ssh 不要密码登陆是否成功
ssh namenode1ssh datanode1ssh datanode2
如果SSH访问出现问题的话,可以试试下面的
1)修改文件"authorized_keys"
chmod 644 ~/.ssh/authorized_keys
2.3 配置所有Slave无密码登录Master
和Master无密码登录所有Slave原理一样,就是把Slave的公钥追加到Master的".ssh"文件夹下的"authorized_keys"中,记得是追加(>>)
用root登录datanode1
1. 创建 ssh 密钥,就是不用密码登陆目标主机,以下命令直接敲默认回车,不用输入任何信息.
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys ( 使本机程序可以通过ssh登录本机)
2. 密钥生成完成以后,追加本机的公钥到其他2台机器上面
cat ~/.ssh/id_rsa.pub | ssh root@namenode1 "cat >>~/.ssh/authorized_keys"cat ~/.ssh/id_rsa.pub | ssh root@datanode2 "cat >>~/.ssh/authorized_keys"
vim /etc/ssh/sshd_config
service sshd restart
3. 验证ssh 不要密码登陆是否成功
ssh namenode1
ssh datanode2
1)修改文件"authorized_keys"
chmod 644 ~/.ssh/authorized_keys
2.4 配置所有Slave无密码登录Master
和Master无密码登录所有Slave原理一样,就是把Slave的公钥追加到Master的".ssh"文件夹下的"authorized_keys"中,记得是追加(>>)
用root登录datanode2
1. 创建 ssh 密钥,就是不用密码登陆目标主机,以下命令直接敲默认回车,不用输入任何信息.
ssh-keygen -t rsacat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys ( 使本机程序可以通过ssh登录本机)
2. 密钥生成完成以后,追加本机的公钥到其他2台机器的authorized_keys上
cat ~/.ssh/id_rsa.pub | ssh root@namenode1 "cat >>~/.ssh/authorized_keys"cat ~/.ssh/id_rsa.pub | ssh root@datanode1 "cat >>~/.ssh/authorized_keys"
vim /etc/ssh/sshd_config
service sshd restart
3. 验证ssh 不要密码登陆是否成功
ssh namenode1
ssh datanode1
1)修改文件"authorized_keys"
chmod 644 ~/.ssh/authorized_keys
---------------------------------------------------------------------------------------------------------------------------------------------
2.5 配置Hadoop
每个节点都要进行以下的配置
4. 创建必要的目录.首先创建 namenode 保存namenode 元信息的目录. 设置为 /usr/hadoop/tmp 目录下
mkdir -p /usr/hadoop/tmp
5. 配置hadoop 运行环境.进入 /etc/hadoop 目录下面,修改hadoop的默认配置.
首先修改 master 文件. master 文件很容易理解错误,master 文件是指 hadoop 机器里面的secondarynamenode.不是指本机(测试用所以配置上,实际上namenode和secondarynamenode放在同一个机子上不能增加可靠性,没什么意义!)
vim /etc/hadoop/master
(改为如下)
192.168.10.137
vim /etc/hadoop/slave
(改为如下)
192.168.10.138
192.168.10.139
这里的IP实际上可以用主机名来代替,但当网格的DNS出问题的,就不能访问了,直接用IP就不用依赖DNS,提高集群可靠性!
6. 设置 core-site.xml 文件内容如下
<configuration><!-- global properties --><property><name>hadoop.tmp.dir</name><value>/usr/hadoop/tmp</value></property><!-- file system properties --><property><name>fs.default.name</name><value>hdfs://namenode1:9000</value></property></configuration>
3)配置hdfs-site.xml文件
修改Hadoop中HDFS的配置,配置的备份方式默认为3,这里只有2个datanode,所以数据最大复制2份!
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
7. 设置 mapred-site.xml 件内容如下
修改Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口。
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>namenode1:9001</value>
</property>
</configuration>
vim /etc/hadoop/hadoop-env.sh
修改如下行内容为
export JAVA_HOME=/usr/java/jdk1.7.0_09
11. 设置每个节点上面的 服务为自动启动
chkconfig --add hadoop-namenode
chkconfig --add hadoop-jobtracker
chkconfig hadoop-namenode on
chkconfig hadoop-jobtracker on
4.3 启动及验证
1)格式化HDFS文件系统
在"Master.Hadoop"上使用普通用户hadoop进行操作。(备注:只需一次,下次启动不再需要格式化)
hadoop namenode -format
2)启动hadoop
在启动前关闭集群中所有机器的防火墙,不然会出现datanode开后又自动关闭。
service iptables stop
不知道为什么root用户访问start-all.sh会提示无权限,所以直接修改了其所在文件夹的访问权限!(谁知道原来回复一下我,谢谢)
chmod -R 777 /usr/sbin/
启动 namenode
start-all.sh
可以通过以下启动日志看出,首先启动namenode 接着启动datanode1,datanode2,…,然后启动secondarynamenode。
再启动jobtracker,然后启动tasktracker1,tasktracker2,…。
启动 hadoop成功后,在 Master 中的 tmp 文件夹中生成了 dfs 文件夹,在Slave 中的 tmp 文件夹中均生成了 dfs 文件夹和 mapred 文件夹。
stop-all.sh
(2)验证方式二:用"hadoop dfsadmin -report"
用这个命令可以查看Hadoop集群的状态。
4.4 网页查看集群
1)访问jobtracker"http:192.168.1.2:50030"
2)访问DFS : "http:192.168.10.137:50070"
到此,Hadoop配置完毕,最大的感悟是rpm方式安装软件真是太方便了!
发表评论
-
大数据方面的文章
2013-07-29 17:01 868http://bbs.e-works.net.cn/forum ... -
Apache Pig中文教程(进阶)
2013-05-13 17:18 1768引自http://www.codelast.com/?p=42 ... -
hadoop视频
2013-05-10 09:35 804http://pan.baidu.com/share/li ... -
Apache Pig的一些基础概念及用法总结(1
2013-05-08 16:01 1107引自http://www.codelast.com/?p=3 ... -
hadoop动态增加删除节点
2013-04-28 09:54 1192在master的conf/hdfs-site.xml中加入 ... -
hadoop 比较好的博客
2013-04-27 17:35 733http://dongxicheng.org 好的书 h ... -
Hadoop错误一的解决猜测
2013-04-26 10:29 844如果出现:java.lang.NullPointerExc ... -
Reduce作业运行时错误:Too many fetch-failures
2013-04-24 21:19 5794root@ubuntu:/usr/local/hadoop# ... -
MultipleOutputFormat和MultipleOutputs
2013-01-04 17:26 991引自http://www.cnblogs.com/liangz ... -
hadoop各种输入方法(InputFormat)汇总
2013-01-04 17:02 1425引自http://www.blogjava.net/shenh ... -
Hadoop运行报错: java.lang.ClassNotFoundException解决方法
2012-12-27 16:44 12812在创建自定义的Mapper时候,编译正确,但上传到集群执 ... -
HADOOP中DATANODE无法启动
2012-12-22 20:43 963摘要:该文档解决了多次格式化文件系统后,datanode ... -
Hadoop HDFS 编程
2012-12-18 17:38 879引自http://blog.csdn.net/lmc ... -
HDFS之SequenceFile和MapFile
2012-12-17 11:37 956引自http://blog.csdn.net/javam ... -
Hadoop -【IO专题-序列化机制】
2012-12-17 10:32 1096引自http://blog.sina.com.cn/s/ ... -
hadoop问题Type mismatch in value from map解决方法
2012-12-13 10:49 874hadoop问题Type mismatch in ... -
hadoop hbase svn site
2012-12-13 10:49 1001hadoop hbase svn site ... -
hadoop项目svn地址
2012-12-11 18:11 1060http://svn.apache.org/repos/asf ... -
在Eclipse中导入hadoop
2012-12-11 18:03 12430. 准备 (1) 需要有gcc、autoconf、 ... -
Hadoop实例WordCount程序一步一步运行
2012-12-11 16:32 1010虽说现在用Eclipse下开发Hadoop程序很方便了,但是命 ...
相关推荐
《深入理解Mrunit-1.1.0-hadoop2:Hadoop MapReduce单元测试利器》 在大数据处理领域,Hadoop作为开源的分布式计算框架,为海量数据处理提供了强大支持。然而,随着项目的复杂度增加,确保代码的正确性和稳定性变得...
jar包,官方版本,自测可用
### 基于VM+CentOS+hadoop2.7搭建Hadoop完全分布式集群的知识点解析 #### 一、概述 本文旨在详细介绍如何使用VMware Workstation(简称VM)结合CentOS 6.5操作系统来搭建Hadoop 2.7的完全分布式集群。此文档是根据...
这个压缩包文件“hadoop-2.7.1.tar.gz+jdk-8u281-linux-x64.rpm.zip”包含了两个主要组件:Hadoop的2.7.1版本和Java Development Kit(JDK)的8u281版本,适用于Linux操作系统。本文将详细讲解如何在Linux环境中搭建...
Docker(Hadoop_3.3.1+HBase_2.4.16+Zookeeper_3.7.1+Hive_3.1.3 )配置文件 搭建集群环境
在Linux版本方面,本例采用的是CentOS 6.7版本,并确认JDK版本为1.8.0_77,这是运行Hadoop和Spark集群所必须的Java环境。 接着,集群需要至少三个节点来分别担当Master(主节点)和Slaves(从节点)的角色。本例中...
Hadoop-0.21.0分布式集群配置.doc
在Windows系统上配置Hadoop 1.1.0的伪分布式环境是一项技术性较强的任务,涉及到多个步骤和关键配置文件的设置。以下将详细介绍这个过程,以及与之相关的知识点。 首先,我们需要理解Hadoop的基本概念。Hadoop是...
Flink以其低延迟、高吞吐量的流处理能力而受到广泛赞誉,而Hadoop则以其分布式存储和计算框架闻名。然而,随着Hadoop版本的迭代更新,有时会出现新版本的Hadoop与旧版本Flink之间的兼容性问题。本文将针对"flink-...
Hadoop-2.2.0+Hbase-0.96.2+Hive-0.13.1分布式整合,Hadoop-2.X使用HA方式
这个压缩包表明,它已经过实际测试,可以在CentOS 6.7上顺利运行,对于学习和搭建Hadoop环境的人来说非常方便。 Hadoop的安装和配置过程通常涉及多个步骤,包括环境变量设置、JDK安装、Hadoop配置文件修改、启动...
hive-jdbc-1.1.0-hadoop-2.6.0
hadoop eclipse-plugin-1.1.0.jar hadoop eclipse插件
rpm -ivh jdk-7u45-linux-x64.rpm vi /etc/profile source /etc/profile ``` 现在我们可以开始安装Hadoop 2.2.0。解压缩安装包,并更改目录权限: ```bash tar –zxvf hadoop-2.2.0.tar.gz mv hadoop-2.2.0 /...
Hadoop是Apache软件基金会开发的一个开源分布式计算框架,主要针对大数据处理和分析。这个压缩包文件“hadoop-3.3.0.tar.gz”包含了Hadoop的3.3.0版本,这是一个重要的更新,提供了许多改进和新特性。在Linux环境中...
Hive-1.1.0-cdh5.7.0是专为CDH5.7.0设计的,如果使用其他版本的Hadoop,可能会导致运行错误或性能问题。因此,正确选择和匹配Hadoop版本是成功部署Hive的关键步骤。 3. **安装与配置Hive** - **解压文件**:首先,...
Windows 下编译的hadoop 1.1.0版本的hadoop-eclipse插件,windows 下测试通过,不过最好装最新的eclipse
Hadoop 分布式环境搭建指南 本文档将指导您如何搭建 Hadoop 分布式环境,包括安装和配置 Hadoop、ZooKeeper 和 HBase。同时,本文档还将介绍相关的网络配置和 Linux 系统安装。 一、准备环境 1.1 安装 Linux 系统...
标题与描述中的关键词“Hadoop-0.20.0-HDFS+MapReduce+Hive+HBase十分钟快速入门”揭示了文章旨在介绍Hadoop生态中几个关键组件的基础使用,尤其是针对初学者如何在短时间内掌握这些技术。下面,我们将深入探讨...