如何搭建Hadoop处理环境?

  • 回答 (6)
  • 关注 (0)
  • 查看 (1063)

Apache Hadoop 是用于开发在分布式计算环境中执行数据处理应用程序的框架。旨在从单个服务器提供存储和计算资源的方式扩展到数千台机器。Apache Hadoop的核心部分由存储部分(Hadoop分布式文件系统)及其数据处理部分(MapReduce)组成。Hadoop将文件分割成大块,并将它们分发到群集中的节点上。那么如何搭建Hadoop处理环境?

印度陆军医院印度陆军医院提问于
思潮澎湃轻描淡写的生活,但思潮澎湃回答于

由于hadoop需要运行在Linux环境中,而且是分布式的,因此个人学习只能装虚拟机,本文都以VMware Workstation为准,安装CentOS7,具体的安装此处不作过多介绍,只作需要用到的知识介绍。

VMware的安装,装好一个虚拟机后利用复制虚拟机的方式创建后面几个虚拟机,省时省力,需要注意的是需要修改每个虚拟机的IP与主机名。

所有虚拟机采用NAT模式上网,而且要保证与物理主机的IP互相能访问。

需要注意的几个问题。nat如果上网首先需要查看物理机(pc机)这个服务器已经启动。上网的原理:流量是走的物理网卡,但是它的ip,却是和物理机没有关系的。 也就是说,无论你怎么更换网络环境,你的虚拟机都不需要做改变。这就是它的优点。

首先在安装VMware 之后,我们会看到多了两个网卡

这个如果经过网络配置的折磨,应该能找到着两个网卡:vmnet1和vmnet8,这里讲的是vmnet8。

重点看右侧第三图你会看到ip地址,这个ip地址,因个人而异,也就是说不同网络,不同环境,这个ip变化的概率是很大的。可能是192.168.0.1等等。这里也相当于我们编程的一个变量,这里是需要你根据你的环境来赋值的,建议vmnet1到vmnet8分别设置192.168.10.1到192.168.80.1,好作区分。

上面我们通过看到的虚拟机网卡的ip,为了避免混肴,上面的虚拟网卡和本地网络适配器处于同一界面。如下图

而下面则是在打开虚拟机之后,通过菜单弹出

弹出之后,我们在看一下虚拟机的(交换机)vmnet8.

可以看到vmnet8子网ip和虚拟机网卡是出于同一个网段的。同时在右侧net设置界面,我们可以看到网关为:192.168.106.2,改成192.168.80.2 虚拟机的设置会用到。

Linux基础知识

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

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

在此注意CentOS7与CentOS6的命令有些不同,会一些常用命令是必备,每次开机或启动解压安装授权都是最基本的知识,其它的可以暂时不用学。

CentOS中安装java环境

下载对应32或64位jdk,设置好JDK环境变量PATH,具体的配置可自行Google。

环境准备

修改机器名,每个系统中都要修改成这样。

打开终端,切换到root用户下修改机器名称。

$ sudo su $ vim /etc/sysconfig/network

在其中添加“HOSTNAME=H32”

添加每个服务器IP对应的机器名

三个ip地址都添加到各自的/etc/hosts文件中

每个系统中都要修改成这样

#编辑hosts vim /etc/hosts

关闭SELinux

#编辑 SELinux 配置文件 vim /etc/selinux/config

#改状态 SELINUX=disabled

SSH设置

进入H30,查看ssh是否安装,如果有,继续,没有安装下。

rpm -qa|grep ssh

关于ssh的安装参考 :

如何实现两台服务器间无密码的传输数据和操作

时间服务器安装

这里需要安装时间服务器,其他的服务器通过这个来进行多机器时间的同步,分布式部署时机器时间不一致会导致数据错误或组件内通讯错误。

安装httpd服务

httpd是Apache超文本传输协议(HTTP)服务器的主程序。被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池。

安装yum-utils

yum install yum-utils 用于在线yum安装 它是基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。(需要机器能访问外网)

准备资源和环境

下载Centos 7.2 的iso安装镜像,jdk1.8 for Linux压缩包,hadoop2.7.3压缩包(本来用hadoop3,发现后面不兼容hive的最新版本)

Java基础知识

由于Hadoop框架源码都是以java来写,因此最好都以java作为开发的最佳语言,虽然说有些用C#做了封装,但性能已大打折扣。

Eclipse IDE使用

Linux和Windows下源码编译技术

还有最重要的是你的网速要好,因为安装过程中会下载依赖包,网不好会卡到你怀疑人生。

最后还需要有耐心,每台机子的环境都不一样,而且每个人下载的包的版本也有可能不一样 会导致各种问题,此时就需要耐心的去看日志,不停的尝试和仔细的对比安装步骤,可能就是少了个变量 或大小写错误或是要重启。

回答过的其他问题

腾讯云广州一区DNS变更,需要怎么操作?

思潮澎湃轻描淡写的生活,但思潮澎湃
推荐
我也收到相关的通知了,这里分享下~ 2019年1月31日,腾讯云将对广州地区旧的基础网络DNS服务器(10.225.30.181、10.225.30.223)进行下线。在此期间,腾讯云提供最新的DNS服务器供您更新使用。 我们建议您尽快将DNS服务器配置进行更新,并且我们为您提供...... 展开详请

人工智能是否可以架构在区块链上?

思潮澎湃轻描淡写的生活,但思潮澎湃
人们现在普遍认为AI和区块链因为各自的特征及存在的缺馅决定了这两者的结合是必然的选择,分布化和去中心化的区块链给AI带来良好的数据基础,AI又拥有成熟得模块资源和算法资源,如果将人工智能添加到区块链中,可以让区块链变得更加节能、安全和高效,其智能合约也能变得更加得完善。人工智能与...... 展开详请

如何运用大数据提升项目管理的水平?

思潮澎湃轻描淡写的生活,但思潮澎湃
推荐
为什么大数据用于项目管理? 我的项目经理朋友正在为一家小企业工作,鉴于其重点,过去相对困难。这就是为什么它仍然是一个小企业,不得不搬到一个较便宜的办公室。任务管理是她唯一需要的,所有决策都是被动的。 反应姿态的一个问题是范围蔓延,当您认为项目符合某些参数时会发生这种情况,然后您根...... 展开详请

Android平台内有哪些生活中的云计算应用实例?

思潮澎湃轻描淡写的生活,但思潮澎湃
Android是一种基于Linux的操作系统,其代码由Google在Apache许可下发布,主要用于触摸屏设备。它有一个大型开发人员社区,编写可扩展这些设备功能的应用程序。它是迄今为止移动开发者最受欢迎的平台之一。Android应用程序开发人员现在可以从云计算的强大功能中受益,为...... 展开详请

10元学生服务器在哪买啊?

思潮澎湃轻描淡写的生活,但思潮澎湃

https://cloud.tencent.com/act/campus?utm_source=qcloud&utm_medium=head&utm_campaign=campus

这个链接是云+校园

为什么我的apache配置好了SSL证书用https访问却显示此网站无法提供安全连接?

思潮澎湃轻描淡写的生活,但思潮澎湃

扫码关注云+社区

领取腾讯云代金券