Hadoop 系列(四)—— Hadoop 开发环境搭建
一、前置条件
Hadoop 的运行依赖 JDK,需要预先安装,安装步骤见:
二、配置免密登录
Hadoop 组件之间需要基于 SSH 进行通讯。
2.1 配置映射
配置 ip 地址和主机名映射:
vim /etc/hosts
# 文件末尾增加
192.168.43.202 hadoop001
2.2 生成公私钥
执行下面命令行生成公匙和私匙:
ssh-keygen -t rsa
3.3 授权
进入 ~/.ssh 目录下,查看生成的公匙和私匙,并将公匙写入到授权文件:
[root@@hadoop001 sbin]# cd ~/.ssh
[root@@hadoop001 .ssh]# ll
-rw-------. 1 root root 1675 3 月 15 09:48 id_rsa
-rw-r--r--. 1 root root 388 3 月 15 09:48 id_rsa.pub
# 写入公匙到授权文件
[root@hadoop001 .ssh]# cat id_rsa.pub >> authorized_keys
[root@hadoop001 .ssh]# chmod 600 authorized_keys
三、Hadoop(HDFS)环境搭建
3.1 下载并解压
下载 Hadoop 安装包,这里我下载的是 CDH 版本的,下载地址为:http://archive.cloudera.com/cdh5/cdh/5/
# 解压
tar -zvxf hadoop-2.6.0-cdh5.15.2.tar.gz
3.2 配置环境变量
# vi /etc/profile
配置环境变量:
export HADOOP_HOME=/usr/app/hadoop-2.6.0-cdh5.15.2
export PATH=${HADOOP_HOME}/bin:$PATH
执行 source 命令,使得配置的环境变量立即生效:
# source /etc/profile
3.3 修改Hadoop配置
进入 ${HADOOP_HOME}/etc/hadoop/ 目录下,修改以下配置:
1. hadoop-env.sh
# JDK安装路径
export JAVA_HOME=/usr/java/jdk1.8.0_201/
2. core-site.xml
<configuration>
<property>
<!--指定 namenode 的 hdfs 协议文件系统的通信地址-->
<name>fs.defaultFS</name>
<value>hdfs://hadoop001:8020</value>
</property>
<property>
<!--指定 hadoop 存储临时文件的目录-->
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
</property>
</configuration>
3. hdfs-site.xml
指定副本系数和临时文件存储位置:
<configuration>
<property>
<!--由于我们这里搭建是单机版本,所以指定 dfs 的副本系数为 1-->
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
4. slaves
配置所有从属节点的主机名或 IP 地址,由于是单机版本,所以指定本机即可:
hadoop001
3.4 关闭防火墙
不关闭防火墙可能导致无法访问 Hadoop 的 Web UI 界面:
# 查看防火墙状态
sudo firewall-cmd --state
# 关闭防火墙:
sudo systemctl stop firewalld.service
3.5 初始化
第一次启动 Hadoop 时需要进行初始化,进入 ${HADOOP_HOME}/bin/ 目录下,执行以下命令:
[root@hadoop001 bin]# ./hdfs namenode -format
3.6 启动HDFS
进入 ${HADOOP_HOME}/sbin/ 目录下,启动 HDFS:
[root@hadoop001 sbin]# ./start-dfs.sh
3.7 验证是否启动成功
方式一:执行 jps 查看 NameNode 和 DataNode 服务是否已经启动:
[root@hadoop001 hadoop-2.6.0-cdh5.15.2]# jps
9137 DataNode
9026 NameNode
9390 SecondaryNameNode
方式二:查看 Web UI 界面,端口为 50070:
四、Hadoop(YARN)环境搭建
4.1 修改配置
进入 ${HADOOP_HOME}/etc/hadoop/ 目录下,修改以下配置:
1. mapred-site.xml
# 如果没有mapred-site.xml,则拷贝一份样例文件后再修改
cp mapred-site.xml.template mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
2. yarn-site.xml
<configuration>
<property>
<!--配置 NodeManager 上运行的附属服务。需要配置成 mapreduce_shuffle 后才可以在 Yarn 上运行 MapReduce 程序。-->
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
4.2 启动服务
进入 ${HADOOP_HOME}/sbin/ 目录下,启动 YARN:
./start-yarn.sh
4.3 验证是否启动成功
方式一:执行 jps 命令查看 NodeManager 和 ResourceManager 服务是否已经启动:
[root@hadoop001 hadoop-2.6.0-cdh5.15.2]# jps
9137 DataNode
9026 NameNode
12294 NodeManager
12185 ResourceManager
9390 SecondaryNameNode
方式二:查看 Web UI 界面,端口号为 8088:
更多大数据系列文章可以参见 GitHub 开源项目: 大数据入门指南
Hadoop 系列(四)—— Hadoop 开发环境搭建的更多相关文章
- 【JAVA零基础入门系列】Day1 开发环境搭建
[JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day ...
- [Android系列—] 1. Android 开发环境搭建与Hello World
前言 開始之前先熟悉几个名词: SDK -- Software Development Kit, 软件开发工具包.这个词并不陌生, JDK,就是Jave Development Kit,相同对于And ...
- 【java系列】java开发环境搭建
描述 本篇文章主要讲解基于windows 10系统搭建java开发环境,主要内容包括如下: (1)安装资料准备 (2)安装过程讲解 (3)测试是否安装成功 (4)Hello Word测试 1 安装 ...
- 基于GTK+3 开发远程控制管理软件(C语言实现)系列三 Windows7开发环境搭建
一.介绍与准备 考虑到目标客户端基本都是windows客户端,所以此次开发环境将搭建在windows7下,相关开发工具有Msys2 和 Eclipse For C/C++ Msys2 是msys的升级 ...
- Android总结篇系列:Android开发环境搭建
工欲善其事必先利其器. 1.安装并配置Java环境进入Java oracle官网,当前网址如下:http://www.oracle.com/technetwork/java/javase/downlo ...
- ES6系列_1之开发环境搭建
前言: 1.es6的简单介绍: ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在2015年6月正式发布了.它的目标,是使得 JavaScript 语言 ...
- 【GoLang】GO语言系列--001.GO开发环境搭建
- 基于jeesite的cms系统(一):开发环境搭建
基于jeesite的cms系统系列,是对基于jeesite进行二次开发的博客模块开发过程的总结.涉及入门安装,二次开发,部署等 一.概况: JeeSite 是一个 Java 企业级快速开发平台,基于经 ...
- 工作流--JBPM简介及开发环境搭建
一. 工作流简介 项目中不断的接触工作流,点点滴滴积累了一些,下面把一些学习到的东西整理记录下来. 工作流一般的适用场景:公文流转.行政审批.订单处理.产品研发.制造过程等.用专业一点的语言来描述工作 ...
- Hadoop项目开发环境搭建(Eclipse\MyEclipse + Maven)
写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...
随机推荐
- 渐进式web应用开发---service worker (二)
阅读目录 1. 创建第一个service worker 及环境搭建 2. 使用service worker 对请求拦截 3. 从web获取内容 4. 捕获离线请求 5. 创建html响应 6. 理解 ...
- c#基础三
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...
- 基数排序的可复用实现(C++11/14/17/20)
基数排序,是对整数类型的一种排序方法,有MSD (most significant digit)和LSD (least significant digit)两种.MSD将每个数按照高位分为若干个桶(按 ...
- Java学习笔记之---流程控制语句
Java学习笔记之---流程控制语句 (一)循环语句 (1)if语句 if(布尔表达式){ //如果布尔表达式为true将执行的语句 } if(i%2!=0){ System.out.println( ...
- VNC服务配置
Windows通过VNC远程桌面访问Ubuntu设备:一个WIN7的机器,一个系统为Ubuntu的机器 (二者可以均可为虚拟机或实体机) 目的:在Windows系统上通过VNC远程访问Ubuntu. ...
- NOIP2018普及T4暨洛谷P5018 对称二叉树题解
题目链接:https://www.luogu.org/problemnew/show/P5018 花絮:这道题真的比历年的t4都简单的多呀,而且本蒟蒻做得出t4做不出t3呜呜呜... 这道题可以是一只 ...
- 软件测试必须掌握的linux命令大全
测试工程师的四大基础技能:数据库.linux.网络协议.测试工具,不管是刚入门还是已经工作多年,这几个方向都是要掌握的.今天我们再讲一下测试工程师必须要掌握的linux命令. 测试工程师需要掌握lin ...
- 苹果IOS内购二次验证返回state为21002的坑
项目是三四年前的老项目,之前有IOS内购二次验证的接口,貌似很久都没用了,然而最近IOS的妹子说接口用不了,让我看看啥问题.接口流程时很简单的,就是前端IOS在购买成功之后,接收到receipt后进行 ...
- Git常用命令--了解这些就够了
<div class="show-content-free"> <blockquote> Csdn 将本地工程push到远程 方式一: 建立本地仓库 git ...
- [LeetCode] 32. Longest Valid Parentheses (hard)
原题链接 题意: 寻找配对的(),并且返回最长可成功配对长度. 思路 配对的()必须是连续的,比如()((),最长长度为2:()(),最长长度为4. 解法一 dp: 利用dp记录以s[i]为终点时,最 ...