hadoop集群搭建--CentOS部署Hadoop服务
在了解了Hadoop的相关知识后,接下来就是Hadoop环境的搭建,搭建Hadoop环境是正式学习大数据的开始,接下来就开始搭建环境!我们用到环境为:VMware 12+CentOS6.4
hadoop安装步骤大纲:
1、准备硬件(一台虚拟主机)
2、虚拟机装linux系统(这里我们装的是CentOS)
3、准备网络连接
4、配置linux系统
5、安装jdk和hadoop
下面详细介绍环境的搭建:
1)准备linux环境
运行 Vm ware安装目录的 vmnetcfg.exe 程序 , 打开虚拟网络编辑器,
选择 VMnet1 仅主机模式,子网 IP 设为 192.168.1.0 ,子网掩码设为 255.255.255.0
说明: VMnet0 桥接模式, VMnet1 仅主机模式, VMnet8 NAT 模式。
回到windows --> 打开网络和共享中心 -> 更改适配器设置 -> 右键VMnet1 -> 属性 -> 双击IPv4 -> 设置windows的IP:192.168.1.88 子网掩码:255.255.255.0 -> 点击确定
在虚拟软件上 --My Computer -> 选中虚拟机 -> 右键 -> settings -> network adapter -> host only -> ok
即:在 VMware 中,设置具体 Linux 实例的网络适配器为仅主机模式
2)修改linux相关配置
2.1修改linux的IP地址
点击右上角网络连接小电脑图标,选择 vpn 连接 — > 配置 vpn — > 有线 — >Auto eth1 — >编辑
— > I p v4设置 — >手动 — > 192.168.1.101 ,255.255.255.0,192.168.1.1 — >应用
使用shell指令: service network restart重启网络使之生效
2.2修改主机名
使用su root 切换到root用户,使用shell指令:vi /etc/shsconfig/network打开文件把主机名修改为一下的形式:
NETWORKING=yes
HOSTNAME= BigData
这里补充一下:对linux不太熟悉的,打开文件后不知道怎么去修改,修改完,怎么去保存,具体方法是:打开文件后按i进行插入操作,完毕后按ESC退出插入操作然后使用:":wq!"进行保存退出(注意指令时没有双引号的),加“!”的作用的强制保存退出。
注意:主机名中不能含有下划线,主机名生效需要重启系统,查了一些资料目前好像没有别的方法,是用reboot重启系统
2.3 配置主机名与本地映射关系
使用:vi /etc/hosts打开本地文件,配置成以下形式
2.4 关闭防火墙
linux系统由于防火墙的存在,不便于进行远程访问,为了方便其他计算机对linux进行远程访问,所以要将防火墙关闭。
使用指令:service iptables stop把防火墙关闭,另外补充以下指令:
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off
注意: 关闭防火墙后,重启linux系统才能生效。
2.5 在 windows 配置主机名和本地映射关系
找到hosts 所在文件路径:C:\Windows\System32\drivers\etc \hosts用EditPlus或者其他工具打开,添加如下形式:
保存并退出,接下来再linux和window环境下测试是否正确。下面是测试指令:
ping BigData
ping 192.168.1.101
linux测试结果如下:
按ctrl+c停止传输
window环境下测试结果:
能够相互ping的通,证明网络连接正确。
2.6 生成并配置生成ssh免登陆密钥
由于hadoop在集群中的时候需要多个机器进行访问操作,一个集群存在成千上万的个节点,如果每次启动节点都需要输入密码,势必会很麻烦。linux机器之间使用ssh不需要用户名和密码。采用了数字签名RSA或者DSA来完成这个操作
#进入到我的home目录
cd ~/.ssh
ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免登陆的机器上
ssh-copy-id BigData
3)安装jdk和 hadoop-2.4.1.tar.gz
3.1安装jdk
这里介绍常用的两个工具:SecureFXPortable和SecureCRTPortable,第一个用来将window下的相关文件上传到linux环境中,第二个用用来对linux进行操作,有了它就可以把linux虚拟机的桌面关闭了,这样可以节省资源。这两个工具通过域名和linux建立连接,从而达到远程操作linux的目的。
点击左上角第二个按钮,出现如图所示的窗口,输入主机名,用户名进行连接
然后将安装包拖到linux系统,下面一栏有进度显示,这样就把安装包传到了linux系统上。
最后使用:mkdir /software创建文件夹software,将jdk解压至software文件夹
解压指令:tar -xzvf / software /jdk-7u55-linux-i586.tar.gz -C / software
3.2 将java添加至环境变量
在root用户下,使用指令:vi /etc/profile 在文件结尾添加:
export JAVA_HOME=/ software /jdk1.7.0_55
export PATH=$PATH:$JAVA_HOME/bin
然后使用:使用 source /etc/profile 命令 , 使环境变量生效
测试java环境:java 和java -version 出现以下信息说明安装成功。
3.3安装hadoop
这里选用的是比较稳定的2.4.1版本,其他版本只能装大同小异,hadoop的安装和jdk的安装步骤几乎一样,先上传压缩包,然后进行解压,同理安装在software目录下。
指令:tar -xzvf / software /hadoop-2.4.1.tar.gz -C / software
3.4 hadoop伪分布式环境配置
hadoop2.x的配置文件$HADOOP_HOME/etc/hadoop
伪分布式需要修改5个配置文件
1、配置hadoop环境变量
使用指令:vi / software/hadoop-2.4.1/etc/hadoop/hadoop-env.sh打开文件添加:
export JAVA_HOME= / software /jdk1.7.0_55
2、 修改 core-site.xml文件
指令:vi / software/hadoop-2.4.1/etc/hadoop/core-site.xml,打开后输入以下信息:
解释如下:
<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://BigData:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/software/hadoop-2.4.1/tmp</value>
</property>
3、修改 hdfs-site.xml文件
指令:vi / software/hadoop-2.4.1/etc/hadoop/hdfs-site.xml打开文件,添加以下信息:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
这个文件的目的是指定文件副本的数量,由于现在只有一台机器,所以value值为1,将来如果有多台机器,那么value的值就不是1了。
4、修改 mapred-site.xml文件 ,
首先需要去掉 .template 后缀,指令:mv mapred-site.xml.template mapred-site.xml,然后使用指令:
vi / software/hadoop-2.4.1/etc/hadoop/mapred-site.xml打开文件添加以下信息:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
目的是指定mr运行在yarn上
5、修改yarn-site.xml文件
指令:vi / software/hadoop-2.4.1/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value> BigData </value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
解释
第一个property的作用是:指定YARN的老大(ResourceManager)的地址,第二个property的作用是:reducer获取数据的方式。
6、将hadoop添加至环境变量
使用指令:vi /etc/profile打开文件,添加以下信息:
export JAVA_HOME=/ software /jdk1.6.0_24
export HADOOP_HOME=/ software /hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
使用 source /etc/profile 命令 , 使环境变量生效
7、格式化 HDFS 文件系统
指令:hdfs namenode -format,目的是对namenode进行初始化
3.5 环境测试
找到start-all.sh,具体在/home/hadoop/software/hadoop-2.4.1/sbin这个目录下,进去里面有很多指令,如图所示:
执行指令:sh start-all.sh,出现以下信息
启动的过程中,没有让输入密码,说明我们的ssh免密钥登陆也是正确的。
验证是否启动成功,执行指令jps,出现以下信息:
可以看到启动成功。
最后用网址进行验证:分别输入
http://192.168.1.101:50070 (HDFS管理界面)
http://192.168.1.101:8088 (MR管理界面)
至此,CentOS下搭建Hadoop服务已经完成,系统部署的过程中,与顺序无关,先那一步都可以,在搭建环境之前,需要学会在虚拟机上安装CentOS,这是前提工作,第一步完成后,再来搭建本文的环境就变得容易了。
hadoop集群搭建--CentOS部署Hadoop服务的更多相关文章
- Hadoop集群搭建-03编译安装hadoop
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- Hadoop(二) HADOOP集群搭建
一.HADOOP集群搭建 1.集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有 Na ...
- 1.Hadoop集群搭建之Linux主机环境准备
Hadoop集群搭建之Linux主机环境 创建虚拟机包含1个主节点master,2个从节点slave1,slave2 虚拟机网络连接模式为host-only(非虚拟机环境可跳过) 集群规划如下表: 主 ...
- 大数据学习——HADOOP集群搭建
4.1 HADOOP集群搭建 4.1.1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主 ...
- Hadoop集群搭建-01前期准备
Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...
- Hadoop集群搭建安装过程(一)(图文详解---尽情点击!!!)
Hadoop集群搭建(一)(上篇中讲到了Linux虚拟机的安装) 一.安装所需插件(以hadoop2.6.4为例,如果需要可以到官方网站进行下载:http://hadoop.apache.org) h ...
- Linux环境下Hadoop集群搭建
Linux环境下Hadoop集群搭建 前言: 最近来到了武汉大学,在这里开始了我的研究生生涯.昨天通过学长们的耐心培训,了解了Hadoop,Hdfs,Hive,Hbase,MangoDB等等相关的知识 ...
- Hadoop3集群搭建之——安装hadoop,配置环境
接上篇:Hadoop3集群搭建之——虚拟机安装 下篇:Hadoop3集群搭建之——配置ntp服务 Hadoop3集群搭建之——hive安装 Hadoop3集群搭建之——hbase安装及简单操作 上篇已 ...
- 三节点Hadoop集群搭建
1. 基础环境搭建 新建3个CentOS6.5操作系统的虚拟机,命名(可自定)为masternode.slavenode1和slavenode2.该过程参考上一篇博文CentOS6.5安装配置详解 2 ...
随机推荐
- python 接口自动化测试--代码实现(八)
用例读入数据库: #! /usr/bin/python # coding:utf-8 import sys,os from Engine import DataEngine reload(sys) s ...
- KVC与KVO理解
转载:https://magicalboy.com/kvc_and_kvo/ KVC 与 KVO 理解 KVC 与 KVO 是 Objective C 的关键概念,个人认为必须理解的东西,下面是实例讲 ...
- /bin/sh^M: bad interpreter:解决办法
xcode编译时有时候遇到/bin/sh^M: bad interpreter:没有那个文件或目录这样的错误 可以用以下方式解决 先在控制台cd到报错的目录 vi xxx.sh(报错的那个文件):se ...
- C++11右值引用和std::move语句实例解析
关键字:C++11,右值引用,rvalue,std::move,VS 2015 OS:Windows 10 右值引用(及其支持的Move语意和完美转发)是C++0x将要加入的最重大语言特性之一.从实践 ...
- querySlector
在传统的 JavaScript 开发中,查找 DOM 往往是开发人员遇到的第一个头疼的问题,原生的 JavaScript 所提供的 DOM 选择方法并不多,仅仅局限于通过 tag, name, id ...
- Unity 3D Framework Designing(1)—— MVVM 模式的设计和实施(Part 2)
MVVM回顾 经过上一篇文章的介绍,相信你对 MVVM的设计思想有所了解.MVVM的核心思想就是解耦,View与ViewModel应该感受不到彼此的存在.View只关心怎样渲染,而ViewModel只 ...
- 使用Yeoman generator来规范工程的初始化
前言 随着开发团队不断发展壮大,在人员增加的同时也带来了协作成本的增加:业务项目越来越多,类型也各不相同.常见的类型有基础组件.业务组件.基于React的业务项目.基于Vue的业务项目等等.如果想要对 ...
- Jenkins集成Docker
大概过程如下图: 由于需要用到docker打包镜像,jenkins宿主机上需要安装docker,原先的jenkins server安装在centos6上无法运行docker,所以这里单独用一台cent ...
- js引用类型数组去重-对象标记法
前言 Js数组去重已经有很多种实现方式:包括逐个检索对比(使用Array.property.indexOf),先排序后对比,使用hash表,利用ES6中的Set()等.这些数组去重办法中速度最快的是h ...
- UE32修改TAB键为空格键