`
yunmanfan
  • 浏览: 90840 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

大数据使用的各种云计算技术整理

 
阅读更多

1.Hadoop

http://hadoop.apache.org/

http://mirrors.cnnic.cn/apache/hadoop/common/

版本众多,有0.2.x,1.0.x,,1.2.x,2.0.x,2.2.x,2.3.x。在安装是需要考虑各个版本的和其他产品的兼容性,比如hbase,hive,pig。现在官网上的稳定版本是2.2.0.

   本次采用安装2.3.x

 

1、这里我们搭建一个由三台机器组成的集群:

10.3.216.79     ubuntu/123456      hadoop.main    nn/snn/rm        ubuntu    64bit

10.3.216.78     ubuntu/123456      hadoop.slave1 dn/nm              ubuntu    64bit

10.3.216.77     ubuntu/123456      hadoop.slave2 dn/nm              ubuntu    64bit

1.1 上面各列分别为IP、user/passwd、hostname、在cluster中充当的角色(namenode, secondary namenode, datanode , resourcemanager, nodemanager)

1.2   Hostname可以在/etc/hostname中修改(ubuntu是在这个路径下,redhat稍有不同)

1.3  这里我们为每台机器新建了一个账户ubuntu.这里需要给每个账户分配sudo的权限。

2、修改/etc/hosts 文件,增加三台机器的ip和hostname的映射关系

                10.3.216.79    hadoop.main

                10.3.216.78    hadoop.slave1

                10.3.216.77    hadoop.slave2

3、打通main到slave1、slave2的SSH无密码登陆

3.1 安装ssh

         一般系统是默认安装了ssh命令的。如果没有,或者版本比较老,则可以重新安装:

 sodu apt-get install ssh

3.2设置local无密码登陆

安装完成后会在~目录(当前用户主目录,即这里的/home/ubuntu)下产生一个隐藏文件夹.ssh(ls  -a 可以查看隐藏文件)。如果没有这个文件,自己新建即可(mkdir .ssh)。

具体步骤如下:

1、 进入.ssh文件夹

2、 ssh-keygen -t  rsa 之后一路回 车(产生秘钥)

3、 把id_rsa.pub 追加到授权的 key 里面去(cat id_rsa.pub >> authorized_keys)

4、 重启 SSH 服 务命令使其生效 :service sshd restart(这里RedHat下为sshdUbuntu下为ssh)

此时已经可以进行ssh localhost的无密码登陆

     【注意】:以上操作在每台机器上面都要进行。

3.3设置远程无密码登陆

这里只有main是master,如果有多个namenode,或者rm的话则需要打通所有master都其他剩余节点的免密码登陆。(将main的authorized_keys追加到slave1和salve2的authorized_keys)

进入main的.ssh目录

scp authorized_keys ubuntu@hadoop.main:~/.ssh/ authorized_keys_from_main

进入slave1的.ssh目录

cat authorized_keys_from_main>> authorized_keys

至此,可以在main上面ssh ubuntu@hadoop.salve1进行无密码登陆了。slave2的操作相同

 

其他的,需要安装jdk,注意需要选择和unbuntu64bit合适的版本。

 

第三部分 Hadoop 2.2安装过程

        由于hadoop集群中每个机器上面的配置基本相同,所以我们先在namenode上面进行配置部署,然后再复制到其他节点。所以这里的安装过程相当于在每台机器上面都要执行。但需要注意的是集群中64位系统和32位系统的问题。

1、 解压文件

       将第一部分中下载的hadoop-2.3.0-src.tar.gz解压到/opt路径下(或者将在64位机器上编译的结果存放在此路径下)。然后为了节省空间,可删除此压缩文件,或将其存放于其他地方进行备份。

  切换root

      su - root

     chmod -R 777 /opt(每台机器都要操作)

   解压

     tar -xzvf hadoop-2.3.0-src.tar.gz

    mv hadoop-2.3.0-src hadoop

注意:每台机器的安装路径要相同!!

由于是64位系统,需要自行编译hadoop并提前安装以下软件

protobuf

cmake

findbugs

ant

maven

gc

gc-cc++

以上各种google

 

2、 hadoop配置过程

配置之前,需要在main本地文件系统创建以下文件夹:

~/${HADOOP_HOME}/name

~/${HADOOP_HOME}/data

~/${HADOOP_HOME}/temp

这里要涉及到的配置文件有7个:

~/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

以上个别文件默认不存在的,可以复制相应的template文件获得。

配置文件1:hadoop-env.sh

修改JAVA_HOME值(export JAVA_HOME=/usr/java/jdk1.7.0_40)

配置文件2:yarn-env.sh

修改JAVA_HOME值(exportJAVA_HOME=/usr/java/jdk1.7.0_40)

配置文件3:slaves (这个文件里面保存所有slave节点)

写入以下内容:

hadoop.slave1

hadoop.slave2

 

配置文件4:core-site.xml

<configuration>

                <property>

                                <name>fs.defaultFS</name>

                                <value>hdfs://hadoop.main:9000</value>

                </property>

       <property>

                                <name>io.file.buffer.size</name>

                                <value>131072</value>

                </property>

       <property>

                                <name>hadoop.tmp.dir</name>

                                <value>file:/opt/hadoop/tmp</value>

                                <description>Abase for other temporary directories.</description>

                </property>

        <property>

               <name>hadoop.proxyuser.hduser.hosts</name>

               <value>*</value>

       </property>

                 <property>

               <name>hadoop.proxyuser.hduser.groups</name>

               <value>*</value>

       </property>

</configuration>

配置文件5:hdfs-site.xml

<configuration>

       <property>

                <name>dfs.namenode.secondary.http-address</name>

               <value>hadoop.main:9001</value>

        </property>

         <property>

                  <name>dfs.namenode.name.dir</name>

                 <value>file:/opt/hadoop/dfs/name</value>

            </property>

           <property>

                    <name>dfs.datanode.data.dir</name>

                    <value>file:/opt/hadoop/dfs/data</value>

            </property>

            <property>

                     <name>dfs.replication</name>

                     <value>2</value>

             </property>

             <property>

                     <name>dfs.webhdfs.enabled</name>

                     <value>true</value>

         </property>

</configuration>

配置文件6:mapred-site.xml

<configuration>

                <property>

                                <name>mapreduce.framework.name</name>

                                <value>yarn</value>

                </property>

                <property>

                                <name>mapreduce.jobhistory.address</name>

                                <value>hadoop.main:10020</value>

                </property>

                <property>

               <name>mapreduce.jobhistory.webapp.address</name>

               <value>hadoop.main:19888</value>

       </property>

</configuration>

配置文件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>hadoop.main:8032</value>

       </property>

                <property>

               <name>yarn.resourcemanager.scheduler.address</name>

               <value>hadoop.main:8030</value>

               </property>

               <property>

                       <name>yarn.resourcemanager.resource-tracker.address</name>

                        <value>hadoop.main:8031</value>

               </property>

               <property>

                       <name>yarn.resourcemanager.admin.address</name>

                        <value> hadoop.main:8033</value>

               </property>

                <property>

               <name>yarn.resourcemanager.webapp.address</name>

               <value> hadoop.main:8088</value>

       </property>

</configuration>

3、复制到其他节点

这里可以写一个shell脚本进行操作(有大量节点时比较方便)

cp2slave.sh

#!/bin/bash 

scp -r /opt/hadoop ubuntu@hadoop.slave1:/opt
scp -r /opt/hadoop ubuntu@hadoop.slave2:/opt

4、启动验证

4.1 启动hadoop

 

配置环境变量

su - root

vi /etc/profile

 JAVA_HOME=/usr/lib/jdk/jdk1.7.0_45

JRE_HOME=/usr/lib/jdk/jdk1.7.0_45/jre

HADOOP_HOME=/opt/hadoop/
PATH=$HBASE_HOME/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
HBASE_HOME=/opt/hbase

MAVEN_HOME=/opt/maven
PATH=$MAVEN_HOME/bin:$HBASE_HOME/bin:$PATH
FINDBUGS_HOME=/opt/findbugs202
PATH=$FINDBUGS_HOME/bin:$PATH
ANT_HOME=/opt/ant
PATH=$ANT_HOME/bin:$PATH

 

:wq

. /etc/profile

格式化namenode   /hdfs namenode –format

启动hdfs: start-all.sh

此时在001上面运行的进程有:

15488 NameNode
15951 ResourceManager
15388 Jps
15773 SecondaryNameNode
9036 HMaster

slave1和slave2上面运行的进程有:

25747 Jps
8231 DataNode
22304 HRegionServer
8463 NodeManager

查看集群状态:./bin/hdfs dfsadmin –report

 

查看文件块组成:  ./bin/hdfsfsck / -files -blocks

查看HDFS:    http://10.3.216.79:50070

查看RM:   http://10.3.216.79:8088

4.2 运行示例程序:

先在hdfs上创建一个文件夹

hadoop fs -mkdir /data
hadoop fs -put -f file1.txt file2.txt /data
hadoop dfs -rm -R /output
hadoop jar /opt/hadoop/share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.3.0-sources.jar org.apache.hadoop.examples.WordCount /data /output
 
hadoop fs -cat /output/part-r-00000
 

 

 
分享到:
评论

相关推荐

    云计算与大数据的关系.pdf

    云计算与大数据的关系 从技术上来看,大数据和云计算的关系就像一枚硬币的正反面一样密 不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式架构。 它的特色在于对海量数据进行分布式数据挖掘,但它必须...

    大数据技术及应用题库.doc

    A、数字城市 B、物联网 C、联网监控 D、云计算 18大数据的4V特征中的Volume是指(D)。 A、价值密度低 B、处理速度快 C、数据类型繁多 D、数据体量巨大 19大数据的4V特征中的Variety是指(C)。 A、价值密度低 B、...

    大数据时代的数据挖掘技术(1).docx

    大数据与数据挖掘的内涵分析 近年来,随着云计算和物联网概念的提出,信息技术得到了前所未有的发展,而大数据则是在此基础上对现代信息技术革命的又一次颠覆,所以大数据技术主要是从多种巨量的数据中快速的挖掘和...

    广点通广告引擎设计与实现主要描述的是采用云计算和大数据技术的实现过程

    广点通广告引擎设计与实现,主要描述广点通采用云计算和大数据技术,整理并有效引导引擎设计与实现的过程。

    大数据技术研究.doc

    要: 大数据技术是继物联网、云计算技术之后IT业界又一次技术浪潮。为了全面深入地理解 大数据技术的内涵,从大数据的定义及4V特征、关键技术及主要应用领域等四个方面进 行阐述。介绍了大数据的基本概念、特征,...

    智慧能源人工智能云计算远景能源互联网大数据解决方案.pptx

    定位:为什么大数据 传统集控中心:分布式架构,数据量级、数据粒度、数据质量、...国网方案(大数据方案整理版) 海上方案 部署实施及平台设计原则 运维方案 案例 龙源:混合云 广核:公有云 河北建投:混合云 国网案例

    中医药与大数据.docx

    没有必要神话它或对它保持敬畏之心,在以云计算为代表的技术创新大幕的衬托下,这些原本很难收集和使用的数据开始容易被利用起来了,通过各行各业的不断创新,大数据会逐步为人类创造更多的价值。 中医,从古到今,...

    大数据时代的数据挖掘技术.docx

    近年来,随着云计算和物联网概念的提出,信息技术得到了前所未有的发展,而大数据则是在此基础上对现代信息技术革命的又一次颠覆,所以大数据技术主要是从多种巨量的数据中快速的挖掘和获取有价值的信息技术,因而在...

    大数据的应用.pptx

    深入 认知 初识 大数据算法与理论 大数据系统与实践 NoSQL Hadoop 大数据带来的思维变化 大数据带来的价值链 大数据发展现状与未来 大数据 vs 人类 什么是大数据 大数据的特性 大数据与传统技术的关系 大数据与其他...

    大数据54720.doc

    大数据 大数据(big data),或称巨量资料,指的是所涉及的资料量规模巨大到无法通过目前主流软件工具, 在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯 。(在维克托·迈尔- 舍恩伯格...

    计算机基础、Java、数据库、web前端、云计算、iOS、安卓、大数据技术、nodejs、Python、PHP、C++、C#.NET考试题目整理

    计算机基础、Java、数据库、web前端、云计算、iOS、安卓、大数据技术、nodejs、Python、PHP、C++、C#.NET考试题目整理

    [详细完整版]海洋大数据.txt

    2014秋季学期助研工作总结 13020031142 尹浩宇 这学期的助研工作主要是关于"海洋大数据"的文献的收集和整理,大数据的出现得意于如今信息技术的提升,尤其是在数据的存储、传输和分析速度上的提升。使得对数据的分析...

    大数据技术及应用题库.docx

    A、数字城市 B、物联网 C、联网监控 D、云计算 18大数据的4V特征中的Volume是指(D)。 A、价值密度低 B、处理速度快 C、数据类型繁多 D、数据体量巨大 19大数据的4V特征中的Variety是指(C)。 A、价值密度低 B、...

    大数据应用案例分析报告.doc

    瀚思()联合创始人董昕认为,借助大数据技术网络安全即将开启"上帝之眼"模式." 你不能保护你所不知道地"已经成为安全圈地一句名言,即使部署再多地安全防御设备仍 然会产生"不为人知"地信息,在各种不同设备产生地...

    大数据大智慧.docx

    随着云计算技术的快速普及,加之物联网、移动互联网应用的大规模飙升,人类社会正在步入一个被互联网和通讯技术引爆的大数据时代。之前20余年的积累,让不断产生的海量数据正在成为虚拟世界取之不尽的能源,而它们还...

    大数据研究综述.docx

    随着云计算技术的发展,互联网的应用越来越 广泛,以微博和博客为代表的新型社交网络的出现和快速发 展,以及以智能手机、平板电脑为代表的新型移动设备的出现, 计算机应用产生的数据量呈现了爆炸性增长的趋势。...

    大数据-关键词.txt

    大数据(Big data)通常用来形容一个公司创造的大量非结构化和半结构化数据,大数据分析常和云计算联系到一起,用于挖掘各种各样非常有价值的信息。 3、大数据可分成大数据技术、大数据工程、大数据科学和大数据应用...

    大数据面试笔试资料-56家互联网大公司面试笔试题资料整理汇总.zip

    大数据面试笔试资料-56家互联网大公司面试笔试题资料整理汇总: hive面试.doc 京东.jpg 笔试题1.docx 笔试题10.jpg 笔试题11.JPG 笔试题12_搜狐 笔试题13_九章云极科技有限公司 笔试题14_北京东方国信科技股份有限...

    热点追踪_热点追踪_云计算_政务_政府_

    近年来,随着微信、微博、市长信箱...同时,随着大数据、云计算、人工智能等技术的发展,建立基于自然语言处理技术的智慧政务系统已经是社会治理创新发展的新趋势,对提升政府的管理水平和施政效率具有极大的推动作用。

    大数据专题.pptx

    从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式计算架构。它的特色在于对海量数据进行分布式数据挖掘(SaaS),但它必须依托云计算的...

Global site tag (gtag.js) - Google Analytics