Hadoop 2.7.2集群安装配置
2016-08-12 16:10
417 查看
Hadoop 2.7.2集群安装配置
通常,集群里的一台机器被指定为NameNode,另一台不同的机器被指定为JobTracker,这些机器是masters。余下的机器即作为DataNode也作为TaskTracker,这些机器是slaves。slave节点的配置跟master节点是一样的。所以我们只要部署好master节点,slave节点等master节点配置好以后scp拷贝或者rsync同步到slave节点就可以了。
1、准备工作(安装必要的依赖项)
JAVA JDK1.71. 从官网http://www.Oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html下载tar.gz格式的,32位和64位机器对应下载。比如64位的下载的是jdk-7u51-linux-x64.tar.gz.
2. 解压到/usr/local目录 tar –jxvf jdk-7u51-linux-x64.tar.gz –C /usr/local
3. 编辑/etc/profile文件写入到系统环境变量:
#修改java运行环境
export JAVA_HOME=/usr/local/jdk1.7
export PATH=$PATH:$JAVA_HOME/bin
4. 修改完成后,使用source/etc/profile
命令进行更新;
5. 使用java -version命令判断是否安装成功版本号是否正确,在其他机器上同样安装JDK环境。
注意:由于可能会有默认的JDK,如openjdk,所以,为了将我们安装的JDK设置为默认JDK版本,还要进行如下工作。执行:
sudo update-alternatives --install/usr/bin/java java /usr/local/java1.7 /bin/java 300
sudo update-alternatives --install/usr/bin/javac javac /usr/local/java1.7 /bin/javac 300
执行以下命令,选择所需的版本。
sudo update-alternatives --configjava
sudo update-alternatives --config javac
Hosts
所有的节点都需要修改/etc/hosts文件,使彼此之间都能够把主机名解析为ip地址,格式:
ip地址 主机名/域名
(主机别名)
eg: 192.168.22.131 linux131 linux131
192.168.22.137 linux137 linux137
SSH 无密码登陆
首先要配置本机的SSH服务器,运行 ps -e | grep ssh,查看是否有sshd进程,如果没有,说明server没启动,通过
/etc/init.d/ssh -start 启动server进程,如果提示ssh不存在那么就是没安装server。Ubuntu下通过
sudo apt-get install openssh-server命令来安装。
(1)生成当前用户的SSH公钥:
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
它在你当前登录的用户名下生成.ssh目录,.ssh下有id_ dsa和id_
dsa.pub。id_ dsa.pub即是本地SSH生成的公钥文件。客户端机器将id_ dsa.pub文件添加到自己的~/.ssh/authorized_keys文件中即可免密码登录到本机。
(2)将~/.ssh/id_ dsa.pub添加到目标机器的~/.ssh/authorized_keys文件中
•如果是本机的操作,则使用:
cat ~/.ssh/id_dsa.pub >>~/.ssh/authorized_keys
将要登录的机器的公钥添加到本地的认证密钥库中。注意这里必须要用>>操作符进行追加操作。
使用ssh localhost命令即可免密码登录到本地。
•如果是将自己的公钥发送到别的机器上。
可以使用类似下面的命令:
scp ~/.ssh/id_dsa.pub root@172.24.253.2:~
这条scp命令进行文件上传操作。
然后cat ~/id_dsa.pub >>~/.ssh/authorized_keys
注意:上传过来的其他机器id_dsa.pub不能覆盖本机的此文件。
2、安装Hadoop
下载Hadoop最新版本hadoop-2.7.2安装包为hadoop-2.7.2.tar.gz
下载官网地址 :http://www.apache.org/dyn/closer.cgi/hadoop/common/
下载到用户当前目录~中,并解压tar zxvf hadoop-2.7.2.tar.gz
1、配置Hadoop环境变量
方法一:vim /etc/profile在末尾添加:
export JAVA_HOME=/usr/local/jdk1.7.0_25
export HADOOP_HOME=/data/xieguangjian/hadoop-2.7.2
export CLASSPATH=".:$JAVA_HOME/lib:$CLASSPATH"
export PATH="$JAVA_HOME/:$HADOOP_HOME/bin:$PATH"
方法二:
也可以在hadoop-2.7.2文件夹的etc/hadoop下面的hadoop-env.sh和yarn-env.sh中配置JAVA_HOME路径.
添加:export JAVA_HOME=/usr/local/jdk1.7.0_25
注意:鉴于Hadoop默认的是32位系统,还需要加上64位支持:
exportHADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
exportHADOOP_OPTS="-Djava.library.path=$HADOOP_ HOME/lib"
2、配置Hadoop相关文件
core-site.xml:该文件是 hadoop core的配置项,例如hdfs和mapreduce常用的i/o设置等,做如下配置:
1. <configuration>
2. <property>
3. <name>fs.default.name</name>
4. <value>hdfs://localhost:9000</value>
5. </property>
6. <property>
7. <name>hadoop.tmp.dir</name>
8. <value>/data/xieguangjian/hadoop/hadoop-tmp</value>
9. </property>
10. </configuration>
注解:
(1)fs.defaultFS
这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。
(2)hadoop.tmp.dir
是hadoop文件系统依赖的基础配置,很多路径都依赖它。如果hdfs-site.xml中不配置namenode和datanode的存放位置,默认就放在这个路径中Hadoop的默认临时路径,这个最好配置,然后在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重新执行NameNode格式化的命令了。
hdfs-site.xml:
该文件是 hadoop守护进程的配置项,包括namenode、辅助namenode和datanode等,做如下配置:
1. <configuration>
2. <property>
3. <name>dfs.namenode.name.dir</name>
4. <value>file: /data/xieguangjian/hadoop/dfs/name</value>
5. </property>
6. <property>
7. <name>dfs.namenode.data.dir</name>
8. <value>file: /data/xieguangjian/hadoop/dfs/data</value>
9. </property>
10. <property>
11. <name>dfs.replication</name>
12. <value>3</value> #系统默认文件保存3份,若为伪分布模式,改为1份.这一属性也可以不配,使用默认。
13. </property>
14. </configuration>
注解:
(1)dfs.namenode.name.dir这是NameNode结点存储hadoop文件系统信息的本地系统路径。这个值只对NameNode有效,DataNode并不需要使用到它。在实际应用中,它最好被覆盖掉。
(2)dfs.datanode.data.dir这是DataNode结点被指定要存储数据的本地文件系统路径。DataNode结点上的这个路径没有必要完全相同,因为每台机器的环境很可能是不一样的。但如果每台机器上的这个路径都是统一配置的话,会使工作变得简单一些。默认的情况下,它的值hadoop.tmp.dir,
这个路径只能用于测试的目的,因为,它很可能会丢失掉一些数据。所以,这个值最好还是被覆盖。
下面配置可以参见:http://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-yarn/
mapred-site.xml,做如下配置:
这里没有这个文件,可以新建一个,或者直接修改mapred-site.xml.template
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<description>Execution framework set toHadoop
YARN.</description>
</property>
<property>
<name>mapreduce.jobtracker.http.address</name>
<value>linux137:50030</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>linux137:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>linux137:19888</value>
</property>
yarn-site.xml,如下配置:
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>linux137:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>linux137:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>linux137:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>linux137:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>linux137:8088</value>
</property>
slaves配置文件(DataNode的主机名):
linux131
linux137
3、启动集群
到Hadoop2.7.2目录下第一次需要格式化节点信息:./bin/hdfs namenode –format
查看终端信息,若没有error应该就对了。
启动:
sbin/start-all.sh其实这条命令就是执行了:
sbin/start-dfs.sh和sbin/start-yarn.sh两步操作。
停止:
sbin/stop-all.sh或者 $ sbin/stop-dfs.sh$ sbin/stop-yarn.sh
4、运行测试
测试一下状态吧,检查一下进程是否启动jps命令:出现大概是:然后再测试一下hadoop状态,
./bin/hadoop dfsadmin -report,出现大概是:
。。。
也可以浏览器进行查看:
http://192.168.22.137:50070 这是hdfs的页面。 http://192.168.22.137:8088 这是hadoop进程管理页面。
相关文章推荐
- Hadoop2.7.2 Centos 完全分布式集群环境搭建 (2) - Hadoop安装与配置(完全分布式)
- FreeBSD下安装配置Hadoop集群(二)
- Hadoop集群内lzo的安装与配置
- FreeBSD下安装配置Hadoop集群(四)
- Hadoop集群(第3期)_VSFTP安装配置
- hadoop集群内lzo的安装与配置
- Hadoop集群配置【五、Loz和Hadoop-gpl-compression安装】
- 完全分布模式hadoop集群安装配置之二 添加新节点组成分布式集群
- Hadoopz安装与配置-集群(2)
- hadoop集群的安装、配置
- HBase入门笔记(三)-- 完全分布模式Hadoop集群安装配置
- Hadoop集群安装 (2) 配置conf/core-site.xml
- hadoop集群环境安装中的hosts 配置问题
- Hadoop集群安装 (5) 配置job queue_conf/mapred-queues.xml
- Hadoop集群(第1期)_CentOS安装配置
- FreeBSD下安装配置Hadoop集群
- 完全分布模式hadoop集群安装配置之一安装第一个节点
- Hadoop0.21在CentOS4.X上集群安装配置
- FreeBSD下安装配置Hadoop集群(Hive)
- Hadoop集群配置【六、thrift安装】