0、安装软件列表
jdk-7u25-linux-x64.tar.gz
hadoop-2.5.0.tar.gz
hadoop-native-64-2.5.0.tar
1、准备Linux环境(root用户)
1.1、修改主机名:vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop1
1.2、修改上网IP
#windows端:
打开虚拟软件VMware,Edit --> Virtual Network Editor下点击Restore Default。打开网络和共享中心 -> 更改适配器设置 -> 将连接网线的连接设置为“共享”,并共享给VMware Network Adapter VMnet8,此时IP为:192.168.137.1。
#Linux端:
修改配置文件方式:vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:3C:BF:E7"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.137.31"
NETMASK="255.255.255.0"
GATEWAY="192.168.137.1"
1.3、修改主机名和IP的映射关系:vim /etc/hosts
192.168.137.31 hadoop1
1.4、关闭防火墙
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#关闭防火墙开机启动
chkconfig iptables off
#查看防火墙开机启动状态
chkconfig iptables --list
1.5、重启系统:reboot
2、配置ssh免登陆(非root用户,这里用户名为hadoop)
2.1、生成ssh免登陆密钥
ssh-keygen -t rsa -P ''
执行完这个命令后,在~/.ssh目录下生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
2.2、将公钥拷贝到要免登陆的机器上
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
2.3、修改文件authorized_keys权限,如果不设置,在验证时仍提示输入密码。
chmod 600 ~/.ssh/authorized_keys
2.4、用root用户设置SSH配置文件/etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
2.5、重启SSH服务,使刚才设置有效。
service sshd restart
2.6、退出root登录,使用hadoop普通用户验证是否成功。
ssh localhost
3、安装JDK(非root用户,这里用户名为hadoop)
3.1、上传到/home/hadoop/soft
3.2、解压安装:tar -xvf jdk-7u25-linux-x64.tar.gz
3.3、将java添加到环境变量中:vim ~/.bash_profile
#在文件最后添加
export JAVA_HOME=/home/hadoop/jdk1.7.0_25
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
3.4、刷新配置:source ~/.bash_profile
3.5、检验安装结果:java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
4、安装hadoop(非root用户,这里用户名为hadoop)
4.1、上传到/home/hadoop/soft
4.2、解压安装:tar -xvf hadoop-2.5.0.tar.gz
4.3、配置hadoop(配置文件目录$HADOOP_HOME/etc/hadoop)
第一个:hadoop-env.sh
export JAVA_HOME=/home/hadoop/jdk1.7.0_25
第二个:core-site.xml
<!-- 制定HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-2.5.0/tmp</value>
</property>
第三个:hdfs-site.xml
<!-- 指定HDFS副本的数量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
第四个:mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
<!-- 指定mr运行在yarn上 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
第五个:yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<!-- reducer获取数据的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
4.4、将hadoop添加到环境变量:vim ~/.bash_profile
export JAVA_HOME=/home/hadoop/jdk1.7.0_25
export HADOOP_HOME=/home/hadoop/hadoop-2.5.0
export PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使配置生效:source ~/.bash_profile
4.5、格式化namenode(是对namenode进行初始化)
hdfs namenode -format
4.6、启动hadoop
先启动HDFS:sbin/start-dfs.sh
再启动YARN:sbin/start-yarn.sh
4.7、使用jps命令验证是否启动成功
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
4.8、打开管理界面验证是否启动成功
http://192.168.137.31:50070/dfshealth.jsp(HDFS管理界面)
http://192.168.137.31:8088/cluster(MR管理界面)
4.9、执行相关操作验证是否启动成功
第一种:上传文件。创建文件words并上传到hdfs,执行:hadoop fs -put ~/doc/words /test
第二种:统计字符。创建文件words并已经上传到hdfs,进入$HADOOP_HOME/share/hadoop/mapreduce,执行:
hadoop jar hadoop-mapreduce-examples-2.5.0.jar wordcount /words /wordCount
部署过程中问题
1、hadoop “util.NativeCodeLoader: Unable to load native-hadoop library for your platform”
hadoop安装完以后,经常会提示一下警告:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform...using builtin-java classes where applicable
搜了好多文章,都说是跟系统位数有关系,但我使用的Liunx、JDK、Hadoop都是64位。
【解决方式】需要下载hadoop-native-64-2.5.0.tar:http://dl.bintray.com/sequenceiq/sequenceiq-bin/hadoop-native-64-2.5.0.tar。下载完以后,解压到hadoop的native目录下,覆盖原有文件即可。操作如下:tar -xvf hadoop-native-64-2.5.0.tar -C /home/hadoop/hadoop-2.5.0/lib/native/。
- Hadoop-01 搭建hadoop伪分布式运行环境
Linux中配置Hadoop运行环境 程序清单 VMware Workstation 11.0.0 build-2305329 centos6.5 64bit jdk-7u80-linux-x64.r ...
- MHA非root用户搭建测试
最近一直在瞎搬砖,最大的感触是运维工作难做.不过废话不多说,最近被分配了一项比较有意思的task,尝试着非root用户搭建MHA并测试下能否成功漂移,以下是两天测试和文档编写的成果,分享给各位看客,欢 ...
- 基于Centos搭建 Hadoop 伪分布式环境
软硬件环境: CentOS 7.2 64 位, OpenJDK- 1.8,Hadoop- 2.7 关于本教程的说明 云实验室云主机自动使用 root 账户登录系统,因此本教程中所有的操作都是以 roo ...
- [转]搭建Hadoop伪分布式环境
https://my.oschina.net/MyHeaven1987/blog/1821509 http://hadoop.apache.org/docs/current/hadoop-projec ...
- 搭建hadoop伪分布式环境
伪分布式就是只有一台机器,既是namenode又是datanode.一台阿里云服务器(centos)即可完成. Java环境 首先需要安装Java环境,下载jdk的安装包,解压到/usr/java/, ...
- 本地搭建Hadoop伪分布式环境之四:开启搭建Hadoop2.4.0之旅
1.准备软件 64位下载包下载: hadoop-2.4.0-64bit.tar.gz 百度网盘: 链接: http://pan.baidu.com/s/1hqEDe2S password: ...
- 搭建Hadoop伪分布式时遇到的各种错
1.本地连接远端用户没有权限 2.执行时提示,保存三分数据,但是只有一个节点是活的 问题1解决办法:在hdfs-site.xml文件中添加一下配置(是否在HDFS中开启权限检查) <proper ...
- Hadoop伪分布式集群环境搭建
本教程讲述在单机环境下搭建Hadoop伪分布式集群环境,帮助初学者方便学习Hadoop相关知识. 首先安装Hadoop之前需要准备安装环境. 安装Centos6.5(64位).(操作系统再次不做过多描 ...
- Hadoop伪分布式环境搭建+Ubuntu:16.04+hadoop-2.6.0
Hello,大家好 !下面就让我带大家一起来搭建hadoop伪分布式的环境吧!不足的地方请大家多交流.谢谢大家的支持 准备环境: 1, ubuntu系统,(我在16.04测试通过.其他版本请自行测试, ...
随机推荐
- 终于说再见了!Google Reader
终于说再见了!Google Reader 投递人 itwriter 发布于 2013-07-02 13:28 评论(5) 有760人阅读 原文链接 [收藏] « » 今天 15:00 左右,Go ...
- [置顶] 关于UBUNTU 12.04, 在THINKPAD E430C上WIFI连接不上的问题
今天,把自己的本本给格式化了,化分成两个大块,在一切都搞定了后,出现了一个问题,即WIFI连接不上,但可以搜索到WIFI的网络,开始以为自己手贱,是不是密码输入了,试了N多次,发现偶错了,不是手贱,看 ...
- 你可能把A/B测试做错了
大卫奥格威说过,"永远不要停止试验,你的广告也就永远不会停止改进". 在当今的网络世界中,类似于吆喝科技 AppAdhoc A/B Testing 这样的工具越来越多,AB测试和转 ...
- php设计模式之抽象工厂模式
之前总结了一下工厂模式,其实准确地说是简单 工厂模式,在它的基础上再进行抽象就可以得到一种新的模式:抽象工厂模式. 专业一点的定义为: 抽象工厂模式(Abstact Factory)是一种常见的软件设 ...
- 本地通过Eclipse链接Hadoop操作Mysql数据库问题小结
前一段时间,在上一篇博文中描述了自己抽时间在构建的完全分布式Hadoop环境过程中遇到的一些问题以及构建成功后,通过Eclipse操作HDFS的时候遇到的一些问题,最近又想进一步学习学习Hadoop操 ...
- iOS 开发中中 textView 作为子控件点击输入文本,然后退出文本的方式
方式1. 使用当双击输入的时候弹出键盘同时,使用手势和通知监听键盘的方法实现 代码如下: 1. 监听键盘通知 [[NSNotificationCenter defaultCenter] addObse ...
- Oracle wm_concat(列转行函数)实际使用
接触到了一个开发需求.其中是要把NC单据表体行的字段拼成一个字符串.例如: id name work age 1 王一 搬运工 20 2 李二 清洁工 21 3 张三 洗脚工 22 出现结果字符串为: ...
- java基础练习 8
public class Eighth { /*判断101-200之间有多少个素数,并输出所有素数.素数又叫质数,就是除了1和它本身之外,再也没有整数能被它整除的数.也就是素数只有两个因子.*/ pu ...
- C# 无边框窗口实现拖动
原文地址:http://blog.csdn.net/sky___ice/article/details/11533321 Form1.Designer.cs: // //Form1 // this.M ...
- 深入理解Hadoop集群和网络
导读:云计算和Hadoop中网络是讨论得相对比较少的领域.本文原文由Dell企业技术专家Brad Hedlund撰写,他曾在思科工作多年,专长是数据中心.云网络等.文章素材基于作者自己的研究.实验和C ...