2-Hadoop环境构建v01
Hadoop环境搭建_光环大数据培训机构

Hadoop环境搭建_光环大数据培训机构第一篇 Hadoop环境搭建部分,分为3个章节。
Haddop环境准备Hadoop完全分步式集群搭建HDFS测试每一章节,都会分为”文字说明部分”和”代码部分”,保持文字说明与代码的连贯性。
Haddop环境准备文字说明部分:首先环境准备,这里我选择了Linux Ubuntu操作系统12.04的64位版本,大家可以根据自己的使用习惯选择顺手的Linux。
但JDK一定要用Oracle SUN官方的版本,请从官网下载,操作系统的自带的OpenJDK会有各种不兼容。
JDK请选择1.6.x的版本,JDK1.7版本也会有各种的不兼容情况。
/technetwork/java/javase/downloads/index.htm l完全分步式的Hadoop集群,这个选择5台一样配置的虚拟机,通过内网的一个DNS服务器,指定5台虚拟机所对应的域名。
每台虚拟机,1G内存,系统硬盘2G,外接硬盘16G。
hadoop会存储在外接硬盘上面。
外接硬盘,需要先进行格式化,然后创建目录,再mount到操作系统,通过修改/etc/fstab配置,系统每次重起都是自动加载外接硬盘。
(如果用户操作系统的硬盘够大,不用外接硬盘,这步可以省略)接下来,为hadoop集群创建访问账号hadoop,创建访问组hadoop,创建用户目录/home/hadoop,把账号,组和用户目录绑定。
再为hadoop的hdfs创建存储位置/hadoop/conan/data0,给hadoop用户权限。
设置SSH自动登陆,从虚拟机开始,通过ssh-keygen命令,生成id_rsa.pub,再合并到authorized_keys的文件。
再通过scp把authorized_keys复制到其他的虚拟机。
循环生成authorized_keys并合并文件。
使得5台虚拟机,都有了相互的SSH自动登陆的配置。
环境准备完成,参考下面代码部分,动手实现。
Hadoop环境搭建

Hadoop 环境搭建及相关知识 计算所 下载 为了获取 Hadoop 的发行版,从 Apache 的某个镜像服务器上下载最近的 稳定发行版。
运行 Hadoop 集群的准备工作 解压所下载的 Hadoop 发行版。
编辑 conf/hadoop-env.sh 文件,至少需要将 JAVA_HOME 设置为 Java 安装 根路径。
尝试如下命令: $ bin/hadoop 将会显示 hadoop 脚本的使用文档。
现在你可以用以下三种支持的模式中的一种启动 Hadoop 集群: 单机模式 伪分布式模式 完全分布式模式 单机模式的操作方法 默认情况下,Hadoop 被配置成以非分布式模式运行的一个独立 Java 进程。
这对调试非常有帮助。
下面的实例将未解压的 conf 目录拷贝作为输入,查找并显示匹配给定正则表达式的条目。
输出写入到指 定的 output 目录。
$ mkdir input $ cp conf/*.xml input $ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+' $ cat output/* 伪分布式模式的操作方法 Hadoop 可以在单节点上以所谓的伪分布式模式运行, 此时每一个 Hadoop 守护进程都作为一个独立的 Java 进程运行。
配置 使用如下的 conf/hadoop-site.xml: <configuration> <property> <name></name> <value>localhost:9000</value> </property> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> 免密码 ssh 设置 现在确认能否不输入口令就用 ssh 登录 localhost: $ ssh localhost 如果不输入口令就无法用 ssh 登陆 localhost,执行下面的命令: $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 执行 格式化一个新的分布式文件系统: $ bin/hadoop namenode -format 启动 Hadoop 守护进程: $ bin/start-all.sh Hadoop 守护进程的日志写入到 ${HADOOP_LOG_DIR} 目录 (默认是 ${HADOOP_HOME}/logs). 浏览 NameNode 和 JobTracker 的网络接口,它们的地址默认为: NameNode - http://localhost:50070/ JobTracker - http://localhost:50030/ 将输入文件拷贝到分布式文件系统: $ bin/hadoop dfs -put conf input 运行发行版提供的示例程序: $ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+' 查看输出文件: 将输出文件从分布式文件系统拷贝到本地文件系统查看: $ bin/hadoop dfs -get output output $ cat output/* 或者 查看分布式文件系统上的输出文件: $ bin/hadoop dfs -cat output/* 完成全部操作后,停止守护进程: $ bin/stop-all.sh 分布式模式的操作方法 安装 Hadoop 集群通常要将安装软件解压到集群内的所有机器上。
Hadoop平台搭建与应用(第2版)(微课版)项目2 Hive环境搭建与基本操作

Hadoop平台搭建与应用教案教学过程教学提示项目2 Hive环境搭建与基本操作任务2.1 Hive的安装与配置Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,将类SQL语句转换为MapReduce任务,如图2-1所示,并执行此任务。
图2-1 将类SQL语句转换为MapReduce任务1.Hive数据结构Hive中所有的数据都存储在HDFS中,Hive中包含以下数据结构。
(1)Table:Hive中的Table和数据库中的Table在概念上是类似的,每一个Table在Hive中都有一个相应的目录存储数据。
(2)Partition(可选):在Hive中,表中的一个Partition对应于表中的一个目录,所有的Partition的数据都存储在对应的目录中。
(3)Bucket(可选):Bucket对指定列计算Hash,Partition根据某个列的Hash值散列到不同的Bucket中,目的是进行并行处理,每一个Bucket对应一个文件。
2.Hive架构Hive架构如图2-2所示。
Hadoop和MapReduce是Hive架构的基础。
用户接口主要有CLI客户端、HiveServer客户端、HWI客户端和HUE客户端(开源的Apache Hadoop UI系统),其中最常用的是CLI客户端。
在CLI客户端启动时,会同时启动一个Hive副本。
在Windows中,可通过JDBC连接HiveServer的图形界面工具,包括SQuirrel SQLClient、Oracle SQL Developer及DbVisualizer。
HWI通过浏览器访问Hive,通过Web控制台与Hadoop集群进行交互来分析及处理数据。
MetaStore用于存储和管理Hive的元数据,使用关系数据库来保存元数据信息(MySQL、Derby等),Hive中的元数据包括表的名称、表的列和分区及其属性、表的属性(是否为外部表等)、表的数据所在目录等。
Hadoop平台搭建与应用(第2版)(微课版)项目1 认识大数据

Hadoop平台搭建与应用教案靠、高性能、分布式和面向列的动态模式数据库。
⑤ ZooKeeper(分布式协作服务):其用于解决分布式环境下的数据管理问题,主要是统一命名、同步状态、管理集群、同步配置等。
⑥ Sqoop(数据同步工具):Sqoop是SQL-to-Hadoop的缩写,主要用于在传统数据库和Hadoop之间传输数据。
⑦ Pig(基于Hadoop的数据流系统):Pig的设计动机是提供一种基于MapReduce 的Ad-Hoc(计算在query时发生)数据分析工具。
⑧ Flume(日志收集工具):Flume是Cloudera开源的日志收集系统,具有分布式、高可靠、高容错、易于定制和扩展的特点。
⑨ Oozie(作业流调度系统):Oozie是一个基于工作流引擎的服务器,可以运行Hadoop的MapReduce和Pig任务。
⑩ Spark(大数据处理通用引擎):Spark提供了分布式的内存抽象,其最大的特点就是快,是Hadoop MapReduce处理速度的100倍。
YARN(另一种资源协调者):YARN是一种新的Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。
Kafka(高吞吐量的分布式发布订阅消息系统):Kafka可以处理消费者规模的网站中的所有动作流数据。
任务1.1 认知大数据,完成系统环境搭建(1)安装CentOS系统(确保CentOS系统版本在7及以上,以便配合后续Docker 安装)。
①在VMware中设置CentOS 7镜像,进入后选择第一项安装CentOS 7,如图1-8所示。
②在新打开页面中设置时间(DATE&TIME),分配磁盘(INSTALLATION DESTINATION)和网络设置(NETWORK&HOST NAME)等,如图1-9所示。
③单击“INSTALLATION DESTINATION”链接,在打开的界面中选择“I will configure partitioning”选项,然后单击“Done”按钮,跳转到分配磁盘页面即可进行磁盘分配,如图1-10所示。
hadoop学习笔记(一、hadoop集群环境搭建)

Hadoop集群环境搭建1、准备资料虚拟机、Redhat6.5、hadoop-1.0.3、jdk1.62、基础环境设置2.1配置机器时间同步#配置时间自动同步crontab -e#手动同步时间/usr/sbin/ntpdate 1、安装JDK安装cd /home/wzq/dev./jdk-*****.bin设置环境变量Vi /etc/profile/java.sh2.2配置机器网络环境#配置主机名(hostname)vi /etc/sysconfig/network#修第一台hostname 为masterhostname master#检测hostname#使用setup 命令配置系统环境setup#检查ip配置cat /etc/sysconfig/network-scripts/ifcfg-eth0#重新启动网络服务/sbin/service network restart#检查网络ip配置/sbin/ifconfig2.3关闭防火墙2.4配置集群hosts列表vi /etc/hosts#添加一下内容到vi 中2.5创建用户账号和Hadoop部署目录和数据目录#创建hadoop 用户/usr/sbin/groupadd hadoop#分配hadoop 到hadoop 组中/usr/sbin/useradd hadoop -g hadoop#修改hadoop用户密码Passwd hadoop#创建hadoop 代码目录结构mkdir -p /opt/modules/hadoop/#修改目录结构权限拥有者为为hadoopchown -R hadoop:hadoop /opt/modules/hadoop/2.6生成登陆密钥#切换到Hadoop 用户下su hadoopcd /home/hadoop/#在master、node1、node2三台机器上都执行下面命令,生成公钥和私钥ssh-keygen -q -t rsa -N "" -f /home/hadoop/.ssh/id_rsacd /home/hadoop/.ssh#把node1、node2上的公钥拷贝到master上scp /home/hadoop/.ssh/ id_rsa.pub hadoop@master:/home/hadoop/.ssh/node1_pubkey scp /home/hadoop/.ssh/ id_rsa.pub hadoop@master:/home/hadoop/.ssh/node2_pubkey#在master上生成三台机器的共钥cp id_rsa.pub authorized_keyscat node1_pubkey >> authorized_keyscat node2_pubkey >> authorized_keysrm node1_pubkey node2_pubkey#吧master上的共钥拷贝到其他两个节点上scp authorized_keys node1: /home/hadoop/.ssh/scp authorized_keys node1: /home/hadoop/.ssh/#验证ssh masterssh node1ssh node2没有要求输入密码登陆,表示免密码登陆成功3、伪分布式环境搭建3.1下载并安装JAVA JDK系统软件#下载jdkwget http://60.28.110.228/source/package/jdk-6u21-linux-i586-rpm.bin#安装jdkchmod +x jdk-6u21-linux-i586-rpm.bin./jdk-6u21-linux-i586-rpm.bin#配置环境变量vi /etc/profile.d/java.sh#手动立即生效source /etc/profile3.2 Hadoop 文件下载和安装#切到hadoop 安装路径下cd /opt/modules/hadoop/#从 下载Hadoop 安装文件wget /apache-mirror/hadoop/common/hadoop-1.0.3/hadoop-1.0.3.tar.gz#如果已经下载,请复制文件到安装hadoop 文件夹cp hadoop-1.0.3.tar.gz /opt/modules/hadoop/#解压hadoop-1.0.3.tar.gzcd /opt/modules/hadoop/tar -xvf hadoop-1.0.3.tar.gz#配置环境变量vi /etc/profile.d/java.sh#手动立即生效source /etc/profile3.3配置hadoop-env.sh 环境变量#配置jdk。
大数据--Hadoop集群环境搭建

⼤数据--Hadoop集群环境搭建⾸先我们来认识⼀下HDFS, HDFS(Hadoop Distributed File System )Hadoop分布式⽂件系统。
它其实是将⼀个⼤⽂件分成若⼲块保存在不同服务器的多个节点中。
通过联⽹让⽤户感觉像是在本地⼀样查看⽂件,为了降低⽂件丢失造成的错误,它会为每个⼩⽂件复制多个副本(默认为三个),以此来实现多机器上的多⽤户分享⽂件和存储空间。
Hadoop主要包含三个模块:HDFS模块:HDFS负责⼤数据的存储,通过将⼤⽂件分块后进⾏分布式存储⽅式,突破了服务器硬盘⼤⼩的限制,解决了单台机器⽆法存储⼤⽂件的问题,HDFS是个相对独⽴的模块,可以为YARN提供服务,也可以为HBase等其他模块提供服务。
YARN模块:YARN是⼀个通⽤的资源协同和任务调度框架,是为了解决Hadoop中MapReduce⾥NameNode负载太⼤和其他问题⽽创建的⼀个框架。
YARN是个通⽤框架,不⽌可以运⾏MapReduce,还可以运⾏Spark、Storm等其他计算框架。
MapReduce模块:MapReduce是⼀个计算框架,它给出了⼀种数据处理的⽅式,即通过Map阶段、Reduce阶段来分布式地流式处理数据。
它只适⽤于⼤数据的离线处理,对实时性要求很⾼的应⽤不适⽤。
多相关信息可以参考博客:。
本节将会介绍Hadoop集群的配置,⽬标主机我们可以选择虚拟机中的多台主机或者多台阿⾥云服务器。
注意:以下所有操作都是在root⽤户下执⾏的,因此基本不会出现权限错误问题。
⼀、Vmware安装VMware虚拟机有三种⽹络模式,分别是Bridged(桥接模式)、NAT(⽹络地址转换模式)、Host-only(主机模式):桥接:选择桥接模式的话虚拟机和宿主机在⽹络上就是平级的关系,相当于连接在同⼀交换机上;NAT:NAT模式就是虚拟机要联⽹得先通过宿主机才能和外⾯进⾏通信;仅主机:虚拟机与宿主机直接连起来。
Hadoop环境搭建

Hadoop环境搭建啥是⼤数据?问啥要学⼤数据?在我看来⼤数据就很多的数据,超级多,咱们⽇常⽣活中的数据会和历史⼀样,越来越多⼤数据有四个特点(4V):⼤多样快价值学完⼤数据我们可以做很多事,⽐如可以对许多单词进⾏次数查询(本节最后的实验),可以对股市进⾏分析,所有的学习都是为了赚⼤钱!(因为是在Linux下操作,所以⽤到的全是Linux命令,不懂可以百度,这篇⽂章有⼀些简单命令。
常⽤)第⼀步安装虚拟机配置环境1.下载虚拟机,可以⽤⾃⼰的,没有的可以下载这个 passowrd:u8lt2.导⼊镜像,可以⽤这个 password:iqww (不会创建虚拟机的可以看看,不过没有这个复杂,因为导⼊就能⽤)3.更换主机名,vi /etc/sysconfig/network 改HOSTNAME=hadoop01 (你这想改啥改啥,主要是为了清晰,否则后⾯容易懵)注:在这⾥打开终端4.查看⽹段,从编辑-虚拟⽹络编辑器查看,改虚拟机⽹段,我的是192.168.189.128-254(这个你根据⾃⼰的虚拟机配置就⾏,不⽤和我⼀样,只要记住189.128这个段就⾏)5.添加映射关系,输⼊:vim /etc/hosts打开⽂件后下⾯添加 192.168.189.128 hadoop01(红⾊部分就是你们上⾯知道的IP)(这⾥必须是hadoop01,为了⽅便后⾯直接映射不⽤敲IP)6.在配置⽂件中将IP配置成静态IP 输⼊: vim /etc/sysconfig/network-scripts/ifcfg-eth0 (物理地址也要⼀样哦!不知道IP的可以输⼊:ifconfig 查看⼀下)7.重启虚拟机输⼊:reboot (重启后输⼊ ping 能通就说明没问题)第⼆步克隆第⼀台虚拟机,完成第⼆第三虚拟机的配置1.⾸先把第⼀台虚拟机关闭,在右击虚拟机选项卡,管理-克隆即可(克隆两台⼀台hadoop02 ⼀台hadoop03)2.克隆完事后,操作和第⼀部基本相同唯⼀不同的地⽅是克隆完的虚拟机有两块⽹卡,我们把其中⼀个⽹卡注释就好(⼀定牢记!通过这⾥的物理地址⼀定要和配置⽂件中的物理地址相同)输⼊:vi /etc/udev/rules.d/70-persistent-net.rules 在第⼀块⽹卡前加# 将第⼆块⽹卡改为eth03.当三台机器全部配置完之后,再次在hosts⽂件中加⼊映射达到能够通过名称互相访问的⽬的输⼊:vim /etc/hosts (三台都要如此设置)(改完之后记得reboot重启)第三步使三台虚拟机能够通过SHELL免密登录1.查看SSH是否安装 rmp -qa | grep ssh (如果没有安装,输⼊sudo apt-get install openssh-server)2.查看SSH是否启动 ps -e | grep sshd (如果没有启动,输⼊sudo /etc/init.d/ssh start)3.该虚拟机⽣成密钥 ssh-keygen -t rsa(连续按下四次回车就可以了)4.将密钥复制到另外⼀台虚拟机⽂件夹中并完成免密登录输⼊:ssh-copy-id -i ~/.ssh/id_rsa.pub 2 (同样把秘钥给hadoop03和⾃⼰)(输⼊完后直接下⼀步,如果下⼀步失败再来试试改这个修改/etc/ssh/ssh_config中的StrictHostKeyCheck ask )5.之后输⼊ ssh hadoop02就可以正常访问第⼆台虚拟机啦注:可能你不太理解这是怎么回事,我这样解释⼀下,免密登录是为了后⾯进⾏集群操作时⽅便,⽣成秘钥就像是⽣成⼀个钥匙,这个钥匙是公钥,公钥可以打开所有门,之后把这个钥匙配两把,⼀把放在hadoop02的那⾥,⼀把放在hadoop03的那⾥,这样hadoop01可以对hadoop02和hadoop03进⾏访问。
Hadoop环境搭建--Docker完全分布式部署Hadoop环境(菜鸟采坑吐血整理)

Hadoop环境搭建--Docker完全分布式部署Hadoop环境(菜鸟采坑吐⾎整理)系统:Centos 7,内核版本3.10本⽂介绍如何从0利⽤Docker搭建Hadoop环境,制作的镜像⽂件已经分享,也可以直接使⽤制作好的镜像⽂件。
⼀、宿主机准备⼯作0、宿主机(Centos7)安装Java(⾮必须,这⾥是为了⽅便搭建⽤于调试的伪分布式环境)1、宿主机安装Docker并启动Docker服务安装:yum install -y docker启动:service docker start⼆、制作Hadoop镜像(本⽂制作的镜像⽂件已经上传,如果直接使⽤制作好的镜像,可以忽略本步,直接跳转⾄步骤三)1、从官⽅下载Centos镜像docker pull centos下载后查看镜像 docker images 可以看到刚刚拉取的Centos镜像2、为镜像安装Hadoop1)启动centos容器docker run -it centos2)容器内安装java下载java,根据需要选择合适版本,如果下载历史版本拉到页⾯底端,这⾥我安装了java8/usr下创建java⽂件夹,并将java安装包在java⽂件下解压tar -zxvf jdk-8u192-linux-x64.tar.gz解压后⽂件夹改名(⾮必需)mv jdk1.8.0_192 jdk1.8配置java环境变量vi ~/.bashrc ,添加内容,保存后退出export JAVA_HOME=/usr/java/jdk1.8export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/libexport PATH=$PATH:${JAVA_HOME}/bin使环境变量⽣效 source ~/.bashrc验证安装结果 java -version这⾥注意,因为是在容器中安装,修改的是~/.bashrc⽽⾮我们使⽤更多的/etc/profile,否则再次启动容器的时候会环境变量会失效。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Hadoop基准测试
一、测试条件 集群完全安装配置后,应立即开始基准测试。基准测试时集 群里不应该运行其他一切任务。
二、测试目标 1. 硬盘故障:新系统最常见的故障。可以通过运行高强度的
IO基准测试程序集中测试。例如TestDFSIO 2. MapReduce的性能
测试方法
三、测试方法
1、TestDFSIO基准测试HDFS (测试顺序应该是先写测试后读测试)
下载hadoop压缩包并解压
在namenode上配置hadoop
按照和伪分布模式相同的方法修改core-site.xml,hdfs-site.xml, mapred-site.xml等配置文件
修改hadoop-env.sh文件 修改masters和slaves文件,记录集群中各个节点 向各节点分发hadoop 格式化namenode 在namenode上启动守护进程,系统会自动到各个节点启动相应的进程
HDFS的JBOD(Just a Bunch Of Disks)慢 JBOD配置的某一磁盘出现故障,HDFS还可以忽略该磁盘继续工作,
RAID的某一盘片故障可能会导致整个磁盘阵列不可用。
集群部署建议
一个Hadoop集群的规模应该有多大? 怎么部署比较合适? 部署集群应当注意什么?
集群大小可用根据需要逐步扩展(大约在10台左右,具体根据实际数据 量和计算能力而定)。
hadoop jar hadoop-examples-0.20.2-cdh3u1.jar terasort terasort/1000000-input terasort/1000000-output
查看排序: hadoop fs -ls terasort/1000000-output
1TB排序通常用于衡量分布式数据处理框架的数据处理能力。Terasort是Hadoop中的的 一个排序作业,在2008年,Hadoop在1TB排序基准评估中赢得第一名,耗时209秒。
完全分布式模式的安装和配置
配置hosts文件 建立hadoop运行账号 配置ssh免密码连入 下载并解压hadoop安装包 配置namenode,修改site文件 配置hadoop-env.sh 配置masters和slaves文件 向各节点复制hadoop 格式化namenode 启动hadoop 用jps检验各后台进程是否成功启动
内存
系统日志文件
Hadoop实验-基准测试
TestDFSIO基准测试HDFS TeraSort 基准测试实验
集群基准测试
测试对于验证系统的正确性、分析系统的性能来说非常重 要。为了能对系统有更全面的了解、能找到系统的瓶颈所在、能 对系统性能做更好的改进。
学习Hadoop几种主要的测试手段。 如何使用Hadoop自带的测试工具进行测试 Intel开放的Hadoop Benchmark Suit: HiBench的安装及使用。
首先我们通过使用RandomWriter生成一些随机的数据。它以每个节点10个map 的方式运行一个MapReduce作业,并且每一个map生成近似10GB的随机二进制数据, 带有不同长度的键和值。
hadoop jar $HADOOP_HOME/hadoop-examples*.jar randomwriter random-data
•
得道多助失道寡助,掌控人心方位上 。22:57:3322:57:3322:57Thur sday, November 19, 2020
•
安全在于心细,事故出在麻痹。20.11.1920.11.1922:57:3322:57:33November 19, 2020
•
加强自身建设,增强个人的休养。2020年11月19日 下午10时57分20.11.1920.11.19
修改core-site.xml、hdfs-site.xml以及 mapred-site.xml(注意修改localhost)
修改masters和slaves文件
修改hadoop-env.sh
向各节点复制hadoop
格式化分布式文件系统
启动守护进程
检测守护进程2012/12/hadoop-benchmarks.html)
Hadoop基准测试
Hadoop自带了几个基准测试,被打包在几个jar包中,如 hadoop-*test*.jar和hadoop-*examples*.jar,在Hadoop 环境中可以很方便地运行测试。
课程安排
Hadoop环境构建
2014/09
构建Hadoop集群
• 课程目标 了解Hadoop安装的三种模式 能独立熟练完成Hadoop的安装 熟悉Hadoop的配置与管理 能够利用基准测试程序测试Hadoop集群
构建Hadoop集群
• 课程大纲
集群规范 构建Hadoop集群 Hadoop配置 Hadoop实验-基准测试
运行namenode的机器一般采用64位硬件,避免32位架构下Java堆的3GB内存 限制。
NameNode与文件数对应关系
网络拓扑
通常Hadoop集群架构包含两级网络拓扑。 这一架构的突出特点是:同一机架内部节点间的总
带宽要远高于不同机架节点的带宽。
典型场景是: 1、 各机架装配10-15个服务器, 共享一个10GB的交换机 2、 各机架的交换机又通过上行 链路与一个核心交换机或者路由 器互联。
tasktracker、secondary namenode等5个进程,模拟分布式运行的各个节点 完全分布式模式:正常的Hadoop集群,由多个各司其职的节点构成
伪分布式模式的安装和配置步骤
下载并解压Hadoop安装包,为了和教材一致,选用了1.2.1版本 进入Hadoop的解压目录,编辑conf/hadoop-env.sh文件 编辑conf目录下core-site.xml、hdfs-site.xml和mapred-site.xml三个核心配置文件 配置ssh,生成密钥,使到ssh可以免密码连接localhost 格式化HDFS 使用bin/start-all.sh启动Hadoop 使用bin/stop-all.sh关闭Hadoop
在运行的最后,结果被写入控制台并记录到TestDFSIOresults_write.txt 读测试:
hadoop jar $HADOOP_HOME/hadoop-test-*.jar TestDFSIO -read-nrFiles 10 -fileSize 1000 -resFile /tmp/TestDFSIOresults_read.txt
写测试: 使用10个map任务写10个文件,每个500m。
hadoop jar $HADOOP_HOME/hadoop-test-*.jar TestDFSIO -write -nrFiles 10 -fileSize 1000 -resFile /tmp/TestDFSIOresults_write.txt
构建Hadoop集群
集群部署三种模式 伪分布式模式的安装与配置 完全分布式模式的安装与配置
准备与配置安装环境
安装虚拟机和linux,虚拟机推荐使用vmware,PC可以使用workstation,服务器可以 使用ESXi,在管理上比较方便。ESXi还可以通过拷贝镜像文件复制虚拟机,复制后 自动修改网卡号和ip,非常快捷。如果只是实验用途,硬盘大约预留20-30G空间。
集群规范
集群硬件要求 不适用RAID的原因 集群部署建议 集群网络拓扑
集群硬件要求
Hadoop运行在商业硬件上,注意两个问题:
① 商业硬件并不等同于低端硬件,低端机器便宜的零部件会导致维护成本 巨大。
② 也不建议构建在大型机器上,因为集群服务器较少,某一台出现故障, 对整个集群影响较大。(故障硬件所占的比重增大了)
测试方法
三、测试方法
3、TeraSort 基准测试实验
hadoop jar $HADOOP_HOME/hadoop-examples*.jar teragen 1000000 terasort/1000000-input 查看数据: hadoop fs -ls /usr/hadoop/terasort/1000000-input hadoop jar hadoop-*-examples.jar terasort in-dir out-dir 排序:
•
扩展市场,开发未来,实现现在。2020年11月19日 星期四 下午10时57分33秒22:57:3320.11.19
•
做专业的企业,做专业的事情,让自 己专业 起来。2020年11月下 午10时57分20.11.1922:57November 19, 2020
Hadoop-1.2.1:
/apache/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz
三种运行模式
单机模式:安装简单,几乎不用作任何配置,但仅限于调试用途 伪分布模式:在单节点上同时启动namenode、datanode、jobtracker、
以Centos为例,分区可以选择默认,安装选项选择Desktop Gnome,以及Server、 Server GUI即可。其它Linux,注意选项里应包括ssh,vi(用于编辑配置文件), perl等(有些脚本里包含perl代码需要解析)
到Oracle官网下载java jdk安装包,并且进行安装
辅助namenode和namenode可用运行在同一机器之中,但由于内存的原因(辅 助与主需要同样的内存需求),二者最好运行在独立的硬件上。
对一个小集群(几十个节点)而言,在一台master节点上运行namenode和 jobtracker通常没有问题,当namenode需要更多内存时,最好分别放在不同的 机器上运行
配置hosts文件
所有的节点都修改/etc/hosts,使彼此之间都能把主机名解析为ip