这篇文章将为大家详细讲解有关Hadoop架构以及伪分布式安装的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
Hadoop:一个分布式系统基础架构,适合大数据的分布式存储与计算平台。两个核心项目:HDFS、MapReduce
HDFS:分布式文件系统,主要解决分布式的存储问题。
MapReduce:并行计算框架,主要解决分布式的计算问题。
Hadoop的特点:高可靠、高扩展、高性能、高容错、低成本
Hadoop架构:
在MapReduce中一个准备提交的应用程序成为作业(job),从一个作业划分出的、运行于各计算节点的工作单位成为任务(task);
Hadoop提供的分布式文件系统(HDFS)主要负责各个节点上的数据存储,实现高吞吐率的数据读写。
Hadoop使用Master/Slave架构。
以HDFS角度看(一个文件会被分割成若干个默认64M的block):
主节点(只有一个): namenode。接受用户数据、维护文件系统的目录结构、管理文件与block和block与 datanode之间的关系。
从节点(若干个): datanode。存储block,为保证数据安全会有备份。
以MapReduce角度看:
主节点(只有一个): JobTracker。接受客户提交的服务任务、将任务分配给TaskTracker执行、监控 TaskTracker执行情况。
从节点(有很多个); TaskTracker。执行JobTracker分配的计算任务。
安装虚拟机(网络设置为host-only)
设置静态IP(使宿主机与虚拟机位于同一网段)
修改主机名、绑定主机名与IP
修改主机名:配置文件位于/etc/sysconfig/network
绑定主机与IP:配置文件位于/etc/hosts
重启
关闭防火墙及自动启动
查看防火墙状态:service iptables status
关闭防火墙:service iptables stop
查看防火墙运行级别:chkconfig | grep iptables
关闭防火墙自动启动:chkconfig iptables off
配置SSH免密码登陆
以rsa加密算法产生密钥:ssh-keygen -t rsa(产生的密码位于~/.shh)
拷贝id_rsa.pub:cp id_rsa.pub authorized_keys
验证(免密码登陆本机):ssh locahost
安装JDK
复制JDK到安装目录(我选择安装到/usr/local/jdk。注意与JDK环境变量,Hadoop配置中的设置保持一致)
对JDK安装文件添加执行权限:chmod u+x jdk.....bin
解压缩:./jdk.....bin
重命名安装目录:mv jdk...... jdk
添加环境变量:配置文件位于/etc/profile
export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
更改立即生效:source /etc/profile
验证:java -version
安装Hadoop
复制hadoop安装包到安装目录
解压hadoop安装包:tar -zxvf hadoop.....tar.gz
重命名安装目录:mv hadoop..... hadoop
添加环境变量:配置文件位于/etc/profile
export HADOOP_HOME=/usr/local/hadoop
export PATH=.:$HADOOP_HOME/bin:$........(JDK环境变量)
修改Hadoop配置文件
配置文件位于:$HADOOP_HOME/config目录下
hadoop-env.sh(第九行去掉注释,改为):export JAVA_HOME=/usr/local/jdk/
core-site.xml(配置内容见文末)
hdfs-site.xml(配置内容见文末)
mapred-site.xml(配置内容见文末)
格式化namenode、启动Hadoop
格式化:hadoop namenode -format
启动hadoop:start-all.sh
验证查看JAVA进程:jps(应显示6个进程)
访问:http://hadoop:50070
访问:http://hadoop:50030
关闭windows下防火墙,避免网络访问的错误
登陆linux时以root身份登陆,避免权限问题
每一步设置完成后应及时验证,避免问题
JDK,HADOOP环境变量的配置中与自己安装路径保持一致
配置文件内的主机名与自己的主机名保持一致
禁止多次格式化namenode。若已经重复格式化,清空$HADOOP_HOME/tmp文件夹
core-site.xml(注意与自己的主机名保持一致)
<configuration> <property> <name>fs.default.name</name> <value>hdfs://hadoop:9000</value> <description>change your own hostname</description> </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/tmp</value> </property> </configuration>
hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
mapred-site.xml(注意与自己的主机名保持一致)
<configuration> <property> <name>mapred.job.tracker</name> <value>hadoop:9001</value> <description>change your own hostname</description> </property> </configuration>
关于“Hadoop架构以及伪分布式安装的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。