Hadoop 2.2.0集群搭建
来源:互联网 发布:欧洲篮球冠军联赛数据 编辑:程序博客网 时间:2024/05/17 01:57
一、环境说明
1、虚拟机平台:VMware10
2、Linux版本:ubuntu-12.04.3-desktop-i386
3、JDK:jdk1.7.0_51
4、Hadoop版本:2.2.0
5、集群节点:3个,分别是hadoopMaster,hadoopSlave1,hadoopSlave2
注明:文中fyzwjd是虚拟机用户名。
二、准备工作
1、安装虚拟机平台,并新建一个Ubuntu虚拟机,记为hadoopMaster。
2、在hadoopMaster上安装JDK。
Jdk一般有两个版本:Open JDK、SunJDK,建议使用Sun JDK。安装步骤如下:
先去 Oracle下载Linux下的JDK压缩包,http://www.oracle.com/technetwork/java/javase/downloads/index.html,下好后直接解压。
进入在存放jdk文件夹的当前目录,将解压好的jdk1.7.0_51文件夹用最高权限复移动到/usr/lib/jvm目录里,此时即使没有jvm目录也可以执行如下命令,jvm文件夹将得到创建。
sudo mv jdk1.7.0_51 /usr/lib/jvm/接下来需要设置环境变量,进入当前用户名的主文件夹,修改.profile文件。注意,该文件是当前用户的配置文件,如果要对使用计算机的所有用户生效,那么需要设置的文件应该是 /etc/profile。
sudo gedit ~/.profile在末尾加上:
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51 exportJRE_HOME=/usr/lib/jvm/jdk1.7.0_51/jre exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$PATH
然后保存关闭,此时在命令行输入java -version将会仍然显示java没有安装。此时,需要使用source更新下.profile文件:
$ source ~/.profile再次使用java -version命令可以看到如下输出:
fyzwjd@ubuntu:~$ java -version java version "1.7.0_51" Java(TM) SE Runtime Environment (build1.7.0_51-b18)到此,已经将oracle jdk配置完成。如果之前系统里面已经安装了openjdk,可以使用如下方法将默认jdk更改过来:
$ sudo update-alternatives --install/usr/bin/java java /usr/lib/jvm/jdk1.7.0_51/bin/java 300输入sun jdk前的数字就好了
$ sudo update-alternatives --install/usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_51/bin/javac 300 $ sudo update-alternatives --config java $ sudo update-alternatives --config javac3、安装SSH
可以先检查是否已经有ssh,也可以跳过这步,直接安装。
$ sudo ps -ef | grep ssh如果只有 ssh-agent 就需要安装openssh-server了。
$ sudo apt-get install ssh openssh-server4、配置SSH公钥
$ ssh-keygen -t rsa -P "yourPassWord"
$ ssh-keygen -t rsa -P "yourPassWord"ssh-kengen 是用连字符连着的,千万不要分开。另外,密码是你的虚拟机密码,而不是空(当然,如果你的虚拟机密码为空,另当别论)。
5、建立IP和hadoop节点的映射关系
修改etc/hosts文件,在上面加入hadoop节点IP和名称的映射关系。
$ sudo gedit /etc/hosts在其中加上(ip是节点可配置的ip,自己设定):
192.168.32.*** hadoopMaster 192.168.32.*** hadoopSlave1 192.168.32.*** hadoop Slave26、克隆两个Ubuntu虚拟机,作为hadoop的其他两个节点
7、分别修改三个Ubuntu虚拟机的名称
$ sudo gedit /etc/hostname分别将三个虚拟机名称改为:hadoopMaster,hadoopSlave1,hadoopSlave2。
8、修改三个Ubuntu虚拟机的IP
三、配置SSH无密码登陆。
其目的是让hadoopMaster免密码登陆hadoopSlave1和hadoopSalve2,步骤如下:
1、在hadoopMaster上创建授权文件authorized_keys
进入~/.ssh/目录下执行”ls –a”,发现开始是没有authorized_keys文件的,可以使用以下两种方法来生成:
(1) 将id_rsa.pub追加到authorized_keys授权文件中;
$ cat id_rsa.pub >> authorized_keys(2) 复制id_rsa.pub 为 authorized_keys
$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys完成后就可以无密码登录本机了,可以尝试登陆localhost
$ ssh localhost2、将授权文件拷贝到hadoopSlave1、hadoopSlave2相同文件夹下
$ scp authorized_keys fyzwjd@hadoopSlave1:~/.ssh/authorized_keys $ scp authorized_keys fyzwjd@hadoopSlave2:~/.ssh/authorized_keys拷贝过程需要密码,拷贝之后就可以免密码登陆hadoopSlave1和hadoopSlave2了。
四、安装Hadoop2.2,搭建集群
1、在hadoopMaster上安装hadoop
首先到Apache官网上下载hadoop2.2的压缩文件,将其解压到当前用户的根文件夹中(home/fyzwjd/),将解压出的文件夹改名为hadoop。
$ sudo mv hadoop-2.2.0 hadoop配置之前,先在本地文件系统创建以下文件夹:~/hadoop/tmp、~/dfs/data、~/dfs/name。 主要涉及的配置文件有7个:都在/hadoop/etc/hadoop文件夹下,可以用gedit命令对其进行编辑。
~/hadoop/etc/hadoop/hadoop-env.sh~/hadoop/etc/hadoop/yarn-env.sh~/hadoop/etc/hadoop/slaves~/hadoop/etc/hadoop/core-site.xml~/hadoop/etc/hadoop/hdfs-site.xml~/hadoop/etc/hadoop/mapred-site.xml~/hadoop/etc/hadoop/yarn-site.xml(1) 配置文件1:hadoop-env.sh
修改JAVA_HOME值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
(2) 配置文件2:yarn-env.sh
修改JAVA_HOME值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
(3) 配置文件3:slaves
hadoopSalve1hadoopSlave2(4) 配置文件4:core-site.xml
<configuration><property><name>fs.defaultFS</name><value>hdfs://hadoopMaster:9000</value></property><property><name>io.file.buffer.size</name><value>131072</value></property><property><name>hadoop.tmp.dir</name><value>file:/home/fyzwjd/hadoop/tmp</value><description>Abasefor other temporary directories.</description></property><property><name>hadoop.proxyuser.fyzwjd.hosts</name><value>*</value></property><property><name>hadoop.proxyuser.fyzwjd.groups</name><value>*</value></property></configuration>(5) 配置文件5:hdfs-site.xml
<configuration><property><name>dfs.namenode.secondary.http-address</name><value>hadoopMaster:9001</value></property><property><name>dfs.namenode.name.dir</name><value>file:/home/fyzwjd/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/home/fyzwjd/dfs/data</value></property><property><name>dfs.replication</name><value>3</value></property><property><name>dfs.webhdfs.enabled</name><value>true</value></property></configuration>(6) 配置文件6:mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>hadoopMaster:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>hadoopMaster:19888</value></property></configuration>(7) 配置文件7:yarn-site.xml
<configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name><value>org.apache.hadoop.mapred.ShuffleHandler</value></property><property><name>yarn.resourcemanager.address</name><value>hadoopMaster:8032</value></property><property><name>yarn.resourcemanager.scheduler.address</name><value>hadoopMaster:8030</value></property><property><name>yarn.resourcemanager.resource-tracker.address</name><value>hadoopMaster:8035</value></property><property><name>yarn.resourcemanager.admin.address</name><value>hadoopMaster:8033</value></property><property><name>yarn.resourcemanager.webapp.address</name><value>hadoopMaster:8088</value></property></configuration>2、将hadoop文件夹拷贝到hadoopSlave1和hadoopSlave2上。
scp –r/home/fyzwjd/hadoop fyzwjd@hadoopSlave1:~/scp –r/home/fyzwjd/hadoop fyzwjd@hadoopSlave2:~/五、验证与运行
所有的组件启动和停止服务都在/hadoop/sbin目录下,一般启动hadoop前会格式化namenode。具体命令参考如下:
进入安装目录: cd ~/hadoop/格式化namenode:./bin/hdfs namenode –format启动hdfs: ./sbin/start-dfs.sh此时在hadoopMaster上面运行的进程有:namenodesecondarynamenodehadoopSlave1和hadoopSlave2上面运行的进程有:datanode
启动yarn: ./sbin/start-yarn.sh此时在hadoopMaster上面运行的进程有:namenodesecondarynamenoderesourcemanagerhadoopSlave1和hadoopSlave2上面运行的进程有:datanode nodemanaget
查看集群状态:./bin/hdfs dfsadmin –report查看文件块组成: ./bin/hdfsfsck/ -files -blocks查看HDFS: http://hadoopMaster:50070查看RM: http:// hadoopMaster:8088
- Hadoop 2.2.0集群搭建
- Hadoop 2.2.0 集群搭建
- Hadoop 2.2.0 分布式集群搭建
- hadoop-2.2.0在集群搭建
- Hadoop 2.2 分布式集群搭建
- Hadoop-2.6.0集群搭建
- 搭建Hadoop-2.6.0集群
- Hadoop 2.6.0集群搭建
- 搭建hadoop 2.6.0集群
- hadoop 1.2.0集群搭建
- hadoop集群搭建(hadoop)
- HADOOP: 搭建hadoop集群
- hadoop-2.2.0+hbase-0.96.0测试集群搭建
- hadoop 2.2.0 x64 编译以及集群搭建
- HADOOP 2.2.0 HA搭建(现有集群,QJM方案)
- Fedora 18 Hadoop 1.2.0集群搭建
- hadoop-2.4.0完全分布式集群搭建
- hadoop-2.6.0集群环境搭建
- Linux 内核启动完整分析
- 汤阳光OA视频中使用递归展现添加与修改页面中的树状上级部门列表
- Android APK反编译详解(附图)
- iOS 8 将推歌曲识别功能
- emulator启动自己编译的工程时出错的解决办法
- Hadoop 2.2.0集群搭建
- LeetCode-Linked List Cycle
- 高仿今日头条(转载)
- kvm和qemu的关系
- asdf
- Sql日期函数
- 常见排序算法 (二)-冒泡排序
- 吴莫愁新专辑出炉 承认哈林老师是她生命中的贵人
- 设置VPC虚拟机与主机共享上网