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

    代码质量管理 Sonar 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具.与持续集成工具(例如 Hudson/Jenkins 等)不 ...

  2. 第12章 网络基础(2)_数据封装和IP地址

    4. 数据封装和IP地址 (1)数据封装 (2)IP地址 ①在TCP/IP网络中,每个主机都有唯一的地址,它是通过IP协议族实现的. ②IP协议要求在每次与TCP/IP网络建立连接时,每台主机都必须为 ...

  3. 批处理-通过mono把c#编译成dll

    ::copyright@cjy @echo off ::mcs.exe address set addrMcs=D:\Program Files\Unity\Editor\Data\MonoBleed ...

  4. php 数组随机取值

    array_rand()在你想从数组中取出一个或多个随机的单元时相当有用.它接受 input 作为输入数组和一个可选的参数 num_req,指明了你想取出多少个单元 - 如果没有指定,默认为 1. a ...

  5. Spring MVC 学习笔记3 - 利用Default Annotation 模式获取请求,使Controller与View对应,并传值。

    1. WEB-INF/web.xml 这里定义了获取请求后,执行的第一步.抓取请求. <servlet> <servlet-name>appServlet</servle ...

  6. c++官方文档-class

    #include <iostream> using namespace std; class Circle { double radius; public: Circle(double r ...

  7. c++官方文档-枚举-联合体-结构体-typedef-using

    #include<iostream> #include <new> #include<stdio.h> using namespace std; /** * url ...

  8. windows的类似shell 命令操作

    一,类似linux的grep命令 参考网站:https://www.cnblogs.com/zxy1992/p/4372717.html windows执行cmd命令查找sql进程: C:\Users ...

  9. 4.Spring中使用Log4j

    转自:https://blog.csdn.net/luohai859/article/details/52250807 这里要实现web项目中利用Spring来使用Log4j (1)接上面的工程,然后 ...

  10. 可视化库-seaborn-多变量分析绘图(第五天)

    1. sns.stripplot(x='data', y='total_bill', data=tips, jitter=True), 画出竖形的样子,jitter=True为了使得数据尽量分开 im ...