零基础学习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

复制代码

  1. ifconfig eth0 up

复制代码

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

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

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

  1. vim /etc/network/interfaces

复制代码

但是我们看到下面错误

  1. The program vim can be found in the following package:
  2. vim
  3. vim -gnome
  4. vim-tiny
  5. vim-gtk
  6. vim-nox
  7. Try:sudo apt-get install <select package>

复制代码

这和我们看到的配置完全不一样。这是因为我们安装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到上手工作线路指导(初级篇)的更多相关文章

  1. 零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce(转)

    零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce:http://www.aboutyun.com/thread-7567-1-1.html mapreduce学习目录总结 ...

  2. 零基础学习hadoop到上手工作线路指导初级篇:hive及mapreduce

      此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结.五一假期:在写点内容,也算是总结.上面我们会了基本的编程,我们需要对hadoop有一个更深的理解:hadoop分为h ...

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

    问题导读: 1.hadoop编程需要哪些基础? 2.hadoop编程需要注意哪些问题? 3.如何创建mapreduce程序及其包含几部分? 4.如何远程连接eclipse,可能会遇到什么问题? 5.如 ...

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

    此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结. 五一假期:在写点内容,也算是总结.上面我们会了基本的编程,我们需要对hadoop有一个更深的理解: hadoop分为h ...

  5. [学习线路] 零基础学习hadoop到上手工作线路指导(初级篇)

    about云课程最新课程Cloudera课程   零基础学习hadoop,没有想象的那么困难,也没有想象的那么容易.在刚接触云计算,曾经想过培训,但是培训机构的选择就让我很纠结.所以索性就自己学习了. ...

  6. 零基础学习hadoop到上手工作线路指导

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

  7. 零基础学习Hadoop

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

  8. 零基础学习hadoop开发所必须具体的三个基础知识

    大数据hadoop无疑是当前互联网领域受关注热度最高的词之一,大数据技术的应用正在潜移默化中对我们的生活和工作产生巨大的改变.这种改变给我们的感觉是“水到渠成”,更为让人惊叹的是大数据已经仅仅是互联网 ...

  9. salesforce 零基础学习(五十二)Trigger使用篇(二)

    第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...

随机推荐

  1. 深入理解yield(三):yield与基于Tornado的异步回调

    转自:http://beginman.cn/python/2015/04/06/yield-via-Tornado/ 作者:BeginMan 版权声明:本文版权归作者所有,欢迎转载,但未经作者同意必须 ...

  2. Vuex 状态管理模式

    Vuex 是一个专为 Vue.js 设计的状态管理模式 vuex解决了组件之间同一状态的共享问题.当我们的应用遇到多个组件共享状态时,会需要: 多个组件依赖于同一状态.传参的方法对于多层嵌套的组件将会 ...

  3. 管理oracle 11g RAC 常用命令

    1).检查集群状态: [grid@rac02 ~]$ crsctl check cluster CRS-4537: Cluster Ready Services is online CRS-4529: ...

  4. Linux编辑器|gedit|vi|vim编辑器

    gedit编辑器 gedit是一个Linux环境下的文本编辑器,类似windows下的写字板程序,在不需要特别复杂的编程环境下,作为基本的文本编辑器比较合适. sublime编辑器 Sublime T ...

  5. stdio.h头文件中申明的基本函数

    调用scanf函数时,需传入变量的地址作为参数,scanf函数会等待标准输入设备(键盘等)输入数据,并且将输入的数据赋值给地址对应的变量. #include<stdio.h> #inclu ...

  6. leetcode977

    public class Solution { public int[] SortedSquares(int[] A) { return A.Select(x => x * x).ToList( ...

  7. redis该怎么用

    最近一些人在介绍方案时,经常会出现redis这个词,于是很多小伙伴百度完redis也就觉得它是一个缓存,然后项目里面把数据丢进去完事,甚至有例如将实体属性拆分塞进redis hash里面的奇怪用法等等 ...

  8. UI5-文档-4.9-Component Configuration

    在我们介绍了模型-视图-控制器(MVC)概念的所有三个部分之后,现在我们将讨论SAPUI5的另一个重要的结构方面. 在这一步中,我们将把所有UI资产封装在一个独立于索引的组件中.html文件.组件是S ...

  9. python之model模块和包的介绍

    一,模块的概念:常见场景:一个模块就是一个包含了一组功能的Python文件,比如spam.py,模块名为spam,可以通过import spam使用 在Python中,模块的使用方式都是一样的,但其实 ...

  10. RISC处理器

     RISC(精简指令集算法)处理器是经过硬件的精简只执行很有限的最常用的那部分指令的处理器.因为通过研究发现,只有 大约 20%的指令是最常用的,把处理器能执行的指令数目减少到 最低限度,对它们的执行 ...