由于Spark以后会用到HDFS以及YARN,所以第一步可以先将Hadoop的最简单的集群搭建好,以便以后方便使用。
集群规划(根据我虚拟机而定):
- NameNode
- – Hadoop1 ( 192.168.52.151)
- DataNode
- – Hadoop1 ( 192.168.52.151)
- – Hadoop2 ( 192.168.52.162)
- – Hadoop3 ( 192.168.52.163)
系统环境:
- centos6.3 x64 vmware
- 硬盘:30G
- 内存:1G
- hadoop版本:hadoop-2.4.0(为了方便Spark1.1.0 for Hadoop2.4的版本,这样可以不必自己编译,因为自己编译会用很长时间,有几个包还被墙,比较慢,这样可以直接用)
环境准备:
系统设置
关闭iptables:
service iptables stop
chkconfig iptables off
chkconfig ip6tables off
关闭没用的服务
chkconfig postfix off
chkconfig bluetooth off
检查SSHD
chkconfig --list
找到SSHD 有4个on即可
修改文件句柄数(/etc/security/limits.conf) //** HBase 使用(以后的文件句柄会不够用)
hadoop - nofile 32768
hadoop soft/hard nproc 32000
修改登录配置文件(/etc/pam.d/login)
在最后增加如下内容:
session required pam_limits.so
sshd_config 配置(/etc/ssh/sshd_config)
打开三个开关,如word图,去掉前面井号即可
/etc/hosts 配置( /etc/hosts )
在最上面配置 如图
用户和组的增加
- 增加hadoop 组和hadoop 用户
- 增加组 groupadd -g 1000 hadoop
- 增加用户 useradd -u 2000 -g hadoop hadoop
- 增加密码:passwd hadoop
软件安装:
JDK安装
1、 我安装在/home/jvm下
2、 进入这个目录,然后解压
tar zvxf /home/congli/jdk-8u25-linux-x64.tar.gz
Scala配置
tar zxf scala-2.11.4.tgz
chown -R root:root scala-2.11.4 改一下用户所有者
配置环境变量
注意:这里我已经规划好spark的目录以及hadoop的目录,所以一并加进去,或者等安装了hadoop和spark再加进去也可以。
vi /etc/profile
export JAVA_HOME=/home/jvm/jdk1.8.0_25
export JRE_HOME=/home/jvm/jdk1.8.0_25/jre
export SCALA_HOME=/home/congli/scala-2.11.4
export HADOOP_COMMON_HOME=/app/hadoop/hadoop240
export HADOOP_CONF_DIR=/app/hadoop/hadoop240/etc/hadoop
export YARN_CONF_DIR=/app/hadoop/hadoop240/etc/hadoop
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${SCALA_HOME}/bin:${HADOOP_COMMON_HOME}/bin:${HADOOP_COMMON_HOME}/sbin:$PATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_COMMON_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_COMMON_HOME/lib"
测试一下:先刷新一下profile:
source /etc/profile
然后测试
java –version scala –version
测试结果如下就是OK的:
安装hadoop
1、创建一个目录
mkdir -p /app/hadoop
2、解压到这个目录:
tar zxf /home/hadoop2.4.0/hadoop-2.4.0-bin.tar.gz
3、为了好记,我改名为
- hadoop240 hadoop-2.4.0/ hadoop240
4、执行
chown -R hadoop:hadoop hadoop
Haddop文件部署
1、 进入
hadoop240/etc/hadoop 进行配置文件的修改;
2、 配置slaves
删除localhost(3台机器是以后如果用HBase ,还要用zookeeper,一般都用奇数台)
3、 配置core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1:8000</value>
</property>
4、 配置hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///app/hadoop/hadoop240/mydata/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///app/hadoop/hadoop240/mydata/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
这里的配置项涉及到几个目录,是HDFS的文件保存目录
元数据的保存目录
Datanode的数据保存目录
复制因子设置为1,缺省的是3,同一个数据块会在3个地方有保存,但是我们配置最简单的,就设置成1,让空间利用的更好
注意:mydata/name 和data目录都要创建好,不然会因为写不进去而启动不起来,这个问题我会在遇到的问题中(单开帖子)列出来
5、 配置yarn-site.xml
<property>
<description>The hostname of the RM.</description>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<description>The address of the applications manager interface in the RM.</description>
<name>yarn.resourcemanager.address</name>
<value>${yarn.resourcemanager.hostname}:8032</value>
</property>
<property>
<description>The address of the scheduler interface.</description>
<name>yarn.resourcemanager.scheduler.address</name>
<value>${yarn.resourcemanager.hostname}:8030</value>
</property>
<property>
<description>The address of the RM web application.</description>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.https.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property>
<property>
<description>The address of the resource tracker interface.</description>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>${yarn.resourcemanager.hostname}:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>${yarn.resourcemanager.hostname}:8033</value>
</property>
6、 配置mapred-site.xml
这个直接vi 编辑即可,无需从模板拷贝,直接vi 编辑即可建立;
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
7、 配置hadoop-env.sh
# The java implementation to use.
export JAVA_HOME=/home/jvm/jdk1.8.0_25
把这个替换文件里默认的即可。
集群安装
注意:
如果以上做好了,是虚拟机,就开始复制clone,然后设置好网卡等配置;
如果是物理机,几台机器都按照上面的配置好,复制相应目录并做好配置和环境变量的设置
虚拟机里的网卡如何更改,我就不讲了,以后可以单独写一个帖子;
SSH无密码登录设置
用ssh-keygen -t rsa 生成公钥
首先要生成hadoop用户的公钥,所以先su到hadoop用户
首先生成节点1(hadoop1)的公钥:
$ssh-keygen -t rsa然后一直按回车键,就会按照默认的选项将生成的密钥保存在.ssh/id_rsa文件中。
cd ~/.ssh然后
ls –lsa可以看到生成了两个文件
同样的第2、第3个节点也和上面一样生成公钥(注意:都先切换到hadoop目录)
用ssh 机器名
cat /home/hadoop/.ssh/id_rsa.pub>>authorized_keys 合成公钥
引用
例如:ssh hadoop1 cat /home/hadoop/.ssh/id_rsa.pub>>authorized_keys 之后要输入yes和hadoop用户的密码
修改authorized_keys 文件属性为600 ,并发放给各节点
chmod 600 authorized_keys
Copy到各个节点
scp authorized_keys hadoop@hadoop2:/home/hadoop/.ssh/
scp authorized_keys hadoop@hadoop3:/home/hadoop/.ssh/
scp authorized_keys hadoop@hadoop2:/home/hadoop/.ssh/
scp authorized_keys hadoop@hadoop3:/home/hadoop/.ssh/
用ssh 机器名 date 验证(去各个节点验证一下)
ssh hadoop1 date
ssh hadoop2 date
ssh hadoop3 date
成功后的截图如下:
Hadoop集群的启动
启动HDFS
引用
1、 进入hadoop目录,cd /app/hadoop/hadoop240
2、 bin/hdfs namenode –format 执行格式化;
3、 启动hadoop;sbin/start-dfs.sh(先启动HDFS)
注意:再启动hadoop的时候,最好是HDFS和yarn分开启动,因为HDFS启动的时候如果你保存了大量的文件之后,在启动之后有一个安全检查模式,会耗费大量时间,最好分开启动
4、HDFS的测试
bin/hdfs dfs –ls / 是空的,那么我们建立一个目录
bin/hdfs dfs -mkdir -p /datatest /test
这样就建立好目录了,可以用bin/hdfs dfs –ls / 进行查看
5、
bin/hdfs dfs -put NOTICE.txt /datatest/test/ 上传到这么目录
6、
bin/hdfs dfs -ls /datatest/test查看这个目录下的文件,会发现成功上传上去了,效果如下图;
启动yarn
1、
sbin/start-yarn.sh
2、 jps验证(终端里输入jps)
13473 NameNode
14643 Jps
13753 SecondaryNameNode
14329 ResourceManager
14425 NodeManager
13567 DataNode
如果yarn启动成功了 应该有
- ResourceManager
- NodeManager(做为datanode)
- NameNode
验证
验证HDFS
1、 http://hadoop1:50070/ 看HDFS
上面有三个节点,没问题
再看一下HDFS的文件:
点进去之后,看到我们之前通过命令行上传过的文件,确定了HDFS没问题。
验证yarn
1、 http://hadoop1:8088/cluster/nodes 看到图形界面
OK ,到此为止,一个最简单的hadoop集群就安装部署完毕了,Let`s Go!
- 大小: 13.2 KB
- 大小: 35.7 KB
- 大小: 12 KB
- 大小: 4.7 KB
- 大小: 6.1 KB
- 大小: 7.8 KB
- 大小: 158.1 KB
- 大小: 7.7 KB
- 大小: 12 KB
- 大小: 72.8 KB
- 大小: 35.3 KB
- 大小: 28.3 KB
- 大小: 92 KB
- 大小: 110.9 KB
- 大小: 135.5 KB
- 大小: 49.6 KB
分享到:
相关推荐
Hadoop分布式文件系统的模型分析,Hadoop 分布式文件系统是遵循Google 文件系统原理进行开发和实现的,受到了业界极大关注,并 已被广泛应用。 鉴于当前缺乏从系统设计理论的角度对其开展的相关研究,本文从 Hadoop ...
hadoop完全分布式安装步骤 实验环境为VirtualBOx虚拟机
部署全分布模式Hadoop集群 实验报告一、实验目的 1. 熟练掌握 Linux 基本命令。 2. 掌握静态 IP 地址的配置、主机名和域名映射的修改。 3. 掌握 Linux 环境下 Java 的安装、环境变量的配置、Java 基本命令的使用。 ...
hadoop 分布式部署详细教程,操作不走说明写的很详细
介绍在Linux下 安装部署 hadoop 分布式部署全过程 以及常见问题的分析
Hadoop分布式部署配置文件
Hadoop分布式文件系统翻译
hadoop完全分布式安装整合hive,亲自在实际服务器安装测试成功
基于SpringMVC+Spring+HBase+Maven搭建的Hadoop分布式云盘系统。使用Hadoop HDFS作为文件存储系统、HBase作为数据存储仓库,采用SpringMVC+Spring框架实现,包括用户注册与登录、我的网盘、关注用户、我的分享、我...
hadoop分布式安装02.mp4
Hadoop分布式安装笔记.rar
关于hadoop的分布式缓存的源码,用于大家的学习,改进hadoop的分布式缓存
Hadoop 2.3.0分布式集群搭建图文
工作中搭建的hadoop分布式文件系统和hive ,mysql等的搭建的具体步骤
hadoop分布式网络爬虫的实现, 采用mapreduce和java,能实现深度搜索
完整的Hadoop分布式文件系统架构,以及源码分析报告
hadoop伪分布式安装!
第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件系统.pdf第四章(Hadoop大数据处理实战)Hadoop分布式文件...
《高可用性的HDFS——Hadoop分布式文件系统深度实践》专注于Hadoop分布式文件系统(hdfs)的主流ha解决方案,内容包括:hdfs元数据解析、hadoop元数据备份方案、hadoop backup node方案、avatarnode解决方案以及最新...
Hadoop分布式文件系统使用指南.pdf