环境说明:CentOS 6.2 64位操作系统
两台机器,部署如下:
IP 主机名 用途
Ip1 fanbin01 namenode
Ip2 fanbin02 datanode
A.分别在各台机器/etc/hosts中增加:
Ip1 fanbin01
Ip2 fanbin02
B.分别在各台机器创建统一的用户
例如:
useradd fanbin
passwd fanbin
输入密码
=====================================
hadoop 安装
1. 安装jdk和hadoop
a. tar -xzvf hadoop-1.0.3.tar.gz(可选:ln -s hadoop-1.0.3 hadoop)
修改hadoop-env.sh 配置
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_25 #设置JAVA_HOME
export HADOOP_HOME_WARN_SUPPRESS=1 #取消环境变量$HADOOP_HOME过时的警告
b. 配置环境变量
vi /etc/profile,分别添加以下内容(区分:/etc/profile文件、或者~/.bash_profile、或者~/.bashrc)
export JAVA_HOME=/usr/java/1.6.0_25
export HADOOP_HOME=/home/fanbin/hadoop-1.0.3
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
unset i (文件中原有代码)
unset pathmunge
c. 让环境变量生效
source /etc/profile
2. 机器之间ssh无密码登陆
a. 分别在机器fanbin01、fanbin02中分别产生密钥和公钥
例如:
1)ssh-keygen -t rsa (产生一对公钥id_rsa.pub和密钥id_rsa,一路回车)
2)在/home/fanbin/.ssh目录下cat id_rsa.pub >> authorized_keys(将公钥追加到 authorized_keys中)
3)退到上级目录:chmod 700 -R .ssh
b. 对于机器fanbin01来说,将fanbin01的公钥发给fanbin02
例如:在fanbin0的/home/fanbin/.ssh目录下,scp id_rsa.pub fanbin@fanbin02:/home/fanbin/.ssh;
c. 对于机器fanbin02来说,将fanbin01的公钥追加到fanbin02的authorized_keys中;
例如:在fanbin02的/home/fanbin/.ssh目录下,cat id_rsa.pub >> authorized_keys;
d. 对于机器fanbin02来说,将fanbin02的authorized_keys (这里面包含两台机器的公钥)覆盖fanbin01的authorized_keys.
例如:scp authorized_key fanbin@ fanbin01:/home/fanbin/.ssh
总结:
例如机器A和机器B,首先分别将产生的公钥存入各自的authorized_keys中,然后将A的公钥追加到B的authorized_keys,最后将B的authorized_keys覆盖A的authorized_keys。从而使机器间的authorized_keys保持一致
3. 分别配置$HADOOP_HOME/conf中的对应文件
a. core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://fanbin01:9000</value>
</property>
</configuration>
b. hdfs-site.xml
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/fanbin/hadoop/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/fanbin/hadoop/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
配置文件参数说明:
dfs.name.dir:NameNode上的本地文件路径,用于持久存储命名空间和日志信息文件等内容。该参数可以有多个值,值之间用逗号分割,表示文件映射关系信息将会被复制到每个目录中做冗余备份。
dfs.data.dir:DataNode上的本地文件路径,用于存放文件数据块。该参数可以有多个值,值之间用逗号分割,表示文件数据块将会被复制到每个目录中做冗余备份,通常配置为不同的设备
注意:这里的name、data目录不能预先创建,hadoop格式化时会自动创建,如果预先创建反而会有问题
dfs.replication:表示文件数据块要冗余备份的数量,默认值为3
c. mapred-site.xml (配置jobtracker,任务分配)
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>fanbin01:9001</value>
</property>
</configuration>
4. 格式化一个新的分布式文件系统
hadoop namenode –format
5. 启动集群
start-all.sh
6. 配置完成后,可以通过访问以下页面,判断是否配置成功。
http://fanbin01:50030
7. 运行WordCount的例子
Hadoop jar WordCount.jar /input /output
8. 关闭集群
stop-all.sh
9. 启动集群常见问题:
1) hadoop集群启动遇到java.net.NoRouteToHostException: No route to host
方法一:防火墙没关,sudo /etc/init.d/iptables stop关闭防火墙
方法二:各台机器,在root权限下关闭防火墙 service iptables stop
2) Hadoop格式化HDFS报错java.net.UnknownHostException
需要保证/etc/sysconfig/network中的hostname 与 /etc/hosts中有正确的映射
可参考http://blog.csdn.net/shirdrn/article/details/6562292,按该方法改完如果没有生效,需要重启各台机器;
3) 主节点jobtracter日志中有hadoop problem cleaning system directory,50030界面状态一致为 初始化状态时,可按以下方法解决。
在主节点进行关闭,hadoop dfsadmin -safemode leave
分享到:
相关推荐
### VMware配置Linux完全分布式Hadoop环境 #### 一、前言 随着大数据技术的发展,Hadoop作为处理大规模数据集的开源软件框架,被广泛应用于数据分析领域。为了更好地学习和掌握Hadoop,通常需要在一个分布式环境中...
### Spark + Hadoop 环境搭建指南 #### 概述 本文档旨在提供一份详细的指南,用于在 Ubuntu 下搭建 Spark + Hadoop 的环境。通过本教程,您将能够掌握如何在多台虚拟机上安装并配置 JDK、Hadoop 和 Spark,以及如何...
【Hadoop在Linux下的环境搭建】是大数据处理领域的一个关键环节,主要涉及到分布式计算框架的配置,以便在多台计算机(通常称为节点)上协同工作。Hadoop是Apache基金会开发的开源项目,它包含了两个核心组件:HDFS...
在Linux上配置的hadoop1.2.1完全分布式环境
hadoop环境搭建,搭配虚拟机的环境搭建。教会你如何初步搭建虚拟机和安装配置hadoop并启动集群。以下全为废话:的好多好多好吃不车位的环境为代价为大家机票差价的视频成都市成都市从都是从评测
《Hadoop 3.0集群环境安装详解》 Hadoop,作为开源的分布式计算框架,是大数据处理领域的重要工具。随着技术的不断发展,Hadoop 3.0版本引入了诸多新特性,旨在提高系统的可用性、性能和兼容性。本文将深入探讨...
但Hadoop 1.2搭配HBase 0.94.9和Hive 0.10.0则可以正常工作。兼容性方面,文章提到hadoop-1.0.3、hive-0.9.0、hbase-0.92.0三者兼容,hadoop2.2和hbase0.96与hive0.12或hive0.13兼容,尽管可能存在一些小问题需要...
将Eclipse和Hadoop关联起来需要用到 hadoop-eclipse-plugin -2.x.x.jar 的插件。这个插件的选择与hadoppy和eclipse的版本以及插件自身的完整度...该插件已经在多个环境中搭配不同版本的hadoop以及eclipse成功使用。
需要注意的是,Hadoop 2.6.0版本必须搭配Protobuf 2.5.0版本使用,否则会导致编译失败。Protobuf可以从官方文档提供的下载链接(https://developers.google.com/protocol-buffers/docs/downloads)获取,或者通过...
Windows系统下使用MyEclipse调用Linux系统安装的Hadoop,需要的插件。环境搭配好后,只需要开通hadoop,可在Windows系统下进行map reduce的Java代码编译。
伪分布式模式是Hadoop在单机上模拟分布式环境的一种方式,它允许开发者在本地计算机上测试和学习Hadoop集群的功能,而无需实际的多节点集群。在这个场景中,我们将探讨如何在伪分布式模式下安装和配置Hadoop,并结合...
配置Hadoop环境涉及多个配置文件的修改。首先,修改`core-site.xml`,定义Hadoop系统的默认行为,如命名空间的默认值和I/O设置。接着,配置`hdfs-site.xml`,设置HDFS的相关参数,如副本数量和NameNode的位置。`yarn...
Revolution Analytics推出了几个专门为R和Hadoop环境设计的R包,它们是rhdfs、rhbase和rmr。这些包作为独立的R包提供,其功能包括直接从R操作HDFS、通过MapReduce任务在节点上操作HBASE。例如,这些包使得读取HDFS中...
apache-zookeeper-3.5.10-bin 环境搭配 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,...
标题 "SFTP文件-搭配sublime" 暗示了我们将在Sublime Text这款流行的文本编辑器中配置和使用SFTP(Secure File Transfer Protocol),这是一种安全的文件传输协议,允许用户在本地计算机与远程服务器之间安全地上传...
1. 视觉效果:大屏页面应有清晰的布局,色彩搭配合理,图标简洁易懂,避免过多的文字描述,确保信息一眼可见。 2. 数据交互:支持动态更新和实时刷新,确保数据的时效性;同时提供数据筛选、钻取等交互功能,便于...
文档具体讲解了 Sqoop 搭配 Hadoop、HBase 使用时的基本准备流程,详尽解析利用 Sqoop 把 MySQL 等关系型数据库中的记录迁移到 HBase 表的操作步骤及命令参数含义,并简述了逆向导出的可能性及其限制条件。...
在穿衣搭配算法的背景下,大数据可能包括用户的历史购买记录、搜索行为、社交媒体趋势、天气数据等,需要使用如Hadoop、Spark等大数据处理框架进行处理。 在压缩包内的文件名称列表中,我们看到"empty_file.txt...