零基础学习Hadoop


零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易。在刚接触云计算,曾经想过培训,但是培训机构的选择就让我很纠结。所以索性就自己学习了。整个过程整理一下,给大家参考,欢迎讨论,共同学习。

从一开始什么都不懂,到能够搭建集群,开发。整个过程,只要有Linux基础,虚拟机化和java基础,其实hadoop,没有太大的困难。



首先整体说一下学习过程给大家借鉴:

首先查阅了资料,什么是hadoop,至于这方面,你可以参考这个帖子hadoop新手学习指导。对这个有了整体的认识之后开始下面内容。(新手请务必参考hadoop新手学习指导,否则后面可能看不懂)



我们知道hadoop,有单机安装,伪分布安装和分布安装。

同时hadoop的环境是Linux,所以我们还需要安装Linux系统。因为我们的习惯是使用windows,所以对于Linux上来就安装软件之类的,困难度很大。并且我们要搭建集群,需要多台硬件的,不可能为了搭建集群,去买三台电脑。



从成本和使用我们需要懂虚拟化方面的知识。这里的虚拟化其实就是我们需要懂得虚拟机的使用。因为hadoop安装在Linux中,才能真正发挥作用。所以我们也不会使用windows。



(这里补充硬件的选择:最关键的是内存,2G内存是有点卡的,4G有点勉强的,8G用起来顺畅)



基于以上内容。所以我们需要懂得

1.虚拟化

2.Linux

3.java基础



下面来详细介绍



1.虚拟化

刚开始学习,上来就安装了虚拟机wmware station,然后创建虚拟机,安装Linux。但是问题来了。虚拟机的网络难住,因为缺乏这方面的知识,所以不得不停下来,学习虚拟机的网络,该怎么搞。虚拟机网络分为三种:

1.briage

2.host-only

3.nat

这不是很简单的吗?网上资料也不少。可是事情并没有想象的那么简单,因为nat虽然能上网,但是虚拟系统无法和本局域网中的其他真实主机进行通讯。桥接模式全都需要手工配置,而且这里还需要明白自己是本机拨号上网,还是路由拨号上网。host-only创建一个与网内其他机器相隔离的虚拟系统,这个更不行。这些都不适合我们的hadoop集群。hadoop要求主机与虚拟机与外部网络(能上网),这三者都是通的,在安装的过程中,才不会遇到麻烦。

所以这就是虚拟化方面的困难。

下面总结了在虚拟化方面需要做的:





虚拟化零基础入门



此文章让你明白为什么虚拟化,虚拟化的价值



虚拟机入门二,虚拟机的三种网络模式





详细介绍了虚拟化三种网络模式



搭建集群必备虚拟化网络知识





上面了解三种网络模式,这三种网络模式该如何才能上网。



对于上面你可能了解的还不够,下面咱们论坛会员具体实践指导,可以与他们相互交流:



集群搭建:主机宽带拨号上网,虚拟机使用桥接模式,该如何ping通外网





集群搭建必备:虚拟机之一实现Host-only方式上网



集群搭建必备:nat模式设置静态ip,达到上网与主机相互通信





上面是三种不同网络模式下,如何达到,虚拟机,主机,网络三者互通。



上面的知识具备了我们开始动手:

第一步:下载软件



VMware Workstation 10.0.0简体中文正式版官方下载地址

ubuntu-desktop 版:是图形界面

ubuntu-12.04-desktop-amd64

链接: http://pan.baidu.com/s/1eQxHLFO 密码: nnkv



新手指导windows使用虚拟机安装Linux(ubuntu):包括下载及安装指导

上面的帖子很齐全,包括wmware下载Linux桌面版下载。还有安装指导,包括下面需要讲解的Linux安装指导



第二步:

下载我们就需要安装和使用



VMware workstation安装linux(ubuntu)配置详解



在这里我们安装完毕虚拟机,安装完毕Linux,我们需要返回第一步,进行网络设置。但是在网络设置中,我们会遇到各种各样的困难,因为缺乏Linux知识。



同时这里补充一些虚拟化的基础知识:

虚拟网卡概述





VMware虚拟机网络设置方法





虚拟机(Linux操作系统)三种网络模式切换遇到的问题



虚拟机安装Linux视频





2.Linux

2.1、Linux基础知识




对于Linux的学习也是一个过程,因为可能你连最简单的开机和关机命令都不会,更不要谈配置网络。这里面给大家提供刚开始学习所查阅的资料和经验总结。

首先我们需要使用一些命令,进行网络配置,但是在网络配置中,这里面又必须懂得虚拟机的一些知识,所以前面的虚拟机知识需要掌握扎实一些。

对于网络配置:



集群搭建:主机宽带拨号上网,虚拟机使用桥接模式,该如何ping通外网





集群搭建必备:虚拟机之一实现Host-only方式上网



集群搭建必备:nat模式设置静态ip,达到上网与主机相互通信





其实还是上面三个,但是我们会遇到各种不会的命令,即使能查到命令,我们也不能使用。为什么会这样,因为各种有的命令,是需要使用安装包的。我们在配置网络过程中,同样会遇到各种各样的奇怪的配置。在我们的Linux的系统,不能找到文件。这里只举ubuntu。网络配置文件/etc/network/interfaces。我们配置完毕之后,有各种网络重启方式:





  1. /etc/init.d/networking  restart



复制代码

这是一种网络重启方式,但是有时候并不管用。



那么这时候我们遇到困难了,刚接触命令不起作用,该怎么办?





  1. ifconfig eth0 down

        </li>
        <li>
        </li>
    </ol>
</div>
<em>复制代码</em>





  1. ifconfig eth0 up



复制代码

(这里同样需要明白,我这里使用的是eth0上网的,如果你使用的是eth1,就需要替换成eth1)



上面的两个命令能达到同样的效果。



在举一例:

我们需要配置网络文件,在很多网络配置是使用下面的命令的





  1. vim /etc/network/interfaces



复制代码

但是我们看到下面错误





  1. The program vim can be found in the following package:

        </li>
        <li>
            vim<br />

        </li>
        <li>
            vim -gnome<br />

        </li>
        <li>
            vim-tiny<br />

        </li>
        <li>
            vim-gtk<br />

        </li>
        <li>
            vim-nox<br />

        </li>
        <li>
            Try:sudo apt-get install &lt;select package&gt;
        </li>
    </ol>
</div>
<em>复制代码</em>


这和我们看到的配置完全不一样。这是因为我们安装Linux之后,并没有安装vim包。所以我们又遇到了困难。如果你熟悉Linux的话,这个根本不是问题。





  1. vi /etc/network/interfaces



复制代码

上面命令迎刃而解。一个vim,一个vi。在我们刚接触这些肯定云里雾里,所以你需要首先有成就感,然后在慢慢接触。下面都是经过实践的内容,也算是经验,大家可以参考。



云技术基础:学习hadoop使用零基础linux(Ubuntu)笔记



搭建集群必知:Linux常用命令及修改文件总结(不断更新)   



Linux网络接口ifconfig命令及认识网络接口lo



linux入门详细介绍





虚拟机安装linux网络配置资料大全





解决遇到Linux网络配置,从熟悉网络配置文件入手(大体了解即可)





linux入门大全:包括零基础入门,Linux详细介绍





Linux重启方式init 0 init1 init 3 init 5 init 6 这几个启动级别都代表什么意思?



Ubuntu常用命令总结及修改DNS的多种方法总结



Linux关机各种关机命令总结





Linux基础必懂:eth0,eth1,eth2,lo是什么意思?



此篇文章帮助认识网卡,判断网卡是否启动,对于网络的也算是常识。



——————————————————————————————————————————————–





linux中pwd命令详解

这是了解你所处路径的,起到辅助的作用。





linux之vi编辑器

此篇文章较为关键,因为经常用到,而且需要熟悉

编辑模式

命令模式

如何保存,如何退出等各种操作











linux yum命令详解





Linux下chkconfig命令详解

熟悉他的作用就是能够查看软件安装是否成功





2.1、Linux安装hadoop



上面切记浮躁,因为这也是上面一到两个月的总结。我们不可能一天两天就能完成。所以上面需要我们经过最起码完全一周的时间。我们熟悉了Linux命令,熟悉了网络知识。后面我们进行的快多了。



部署集群,首先需要安装java,然后安装hadoop。



首先我们还是从零基础开始。



我们需要下载和本地电脑相匹配的jdk,是32位的下载32位,是64位的下载64位。这里我们从最简单的入手。在这过程中,可能遇到问题的是环境变量的配置,造成命令不能识别。而这里你需要学习新的Linux知识。不过如果前面你已经配置完网络,有了这个基础,在学习新的知识,压力明显变小了。



下面给大家分享一下,在Linux中如何安装Java和hadoop。

hadoop2搭建参考hadoop2.2完全分布式最新高可靠安装文档







Hadoop安装过程:Hadoop单机环境搭建权威指南(ubuntu)





安装完毕,我们该怎么用,该怎么测试安装成功。



集群安装完毕,该如何测试和使用集群-hadoop单机







通过上面帖子,我们很容易安装完成,如果是刚熟悉Linux,需要补充下面知识,才能顺利完成。



linux中Java jdk环境变量的含义



linux(ubuntu)安装Java jdk环境变量设置及小程序测试







Linux中source命令学习





















今天在写点内容,以上咱们已经会安装集群了,那么我们就需要进入开发了。开发零基础,该如何,咱们提供了相关的内容分别介绍下面文章

学习hadoop—-java零基础学习线路指导视频(1)

这一篇我们使用什么开发工具,甚至考虑使用什么操作系统。然后就是Java基础知识篇,包括变量、函数等。



学习hadoop—Java初级快读入门指导(2)

第一篇是属于思想篇,那么这一篇属于实战篇,通过不同的方式,交给你怎么编写第一个小程序。



Java零基础:一步步教你如何使用eclipse创建项目及编写小程序实例

由于上面没有真正抽象出eclipse的使用,所以这里专门介绍了使用eclipse如何创建项目,及如何编写小程序实例





java基础:eclipse编程不得不知道的技巧

eclipse基本知识会了之后,我们在项目,这些技巧相当有用,而且经常用到





hadoop开发方式总结及操作指导

这是第三篇,我们上面熟悉之后,就可以开发hadoop。但是因为hadoop是属于分布式,所以如果对Java越是熟悉,可能产生的问题就会越多。这里总结了hadoop的开发方式。



下一篇:

零基础学习hadoop到上手工作线路指导(中级篇)



推荐篇:

零基础学习hadoop到上手工作线路指导(编程篇)






+
------ 本文结束 ------