CentOS下Hadoop运行环境搭建
1.安装ssh免密登录
命令:ssh-keygen
overwrite(覆盖写入)输入y
一路回车

将生成的密钥发送到本机地址
ssh-copy-id localhost

(若报错命令无法找到则需要安装openssh-clients)
命令:yum –y install openssh-clients

测试免密设置是否成功
ssh localhost

2. 卸载已有版本java
确定JDK版本
rpm –qa | grep jdk
rpm –qa | grep gcj

切换到root用户,根据结果卸载java

yum -y remove java-1.8.0-openjdk-headless.x86_64
yum -y remove java-1.7.0-openjdk-headless.x86_64

卸载后输入java –version查看

3. 安装java
换回hadoop用户,命令:su hadoop
查看下当前目标文件,命令:ls

新建一个app文件夹,命令:mkdir app

将桌面的hadoop文件夹中的java及hadoop安装包移动到app文件夹中
命令:
mv /home/hadoop/Desktop/hadoop/jdk-8u141-linux-x64.gz /home/hadoop/app
mv /home/hadoop/Desktop/hadoop/hadoop-2.7.0.tar.gz /home/hadoop/app

解压java程序包,命令:tar –zxvf jdk-7u79-linux-x64.tar.gz

创建软连接
ln –s jdk1.8.0_141 jdk

配置jdk环境变量
切换到root用户
再输入vi /etc/profile
输入
export JAVA_HOME=/home/hadoop/app/jdk1..0_141 export JAVA_JRE=JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_JRE/lib export PATH=$PATH:$JAVA_HOME/bin

保存退出,并使/etc/profile文件生效
source /etc/profile

能查询jdk版本号,说明jdk安装成功
java -version

4. 安装Hadoop
切换回hadoop用户,解压缩hadoop-2.6.0.tar.gz安装包
tar -zxvf hadoop-2.7.0.tar.gz

创建软连接,命令:ln -s hadoop-2.7.0 hadoop

验证单机模式的Hadoop是否安装成功,命令:
hadoop/bin/hadoop version

此时可以查看到Hadoop安装版本为Hadoop2.7.0,说明单机版安装成功。
在Hadoop2.6.0安装目录下新建一个源数据文件test.txt,输入以下随机内容

测试运行Hadoop
单机环境,输入命令运行Hadoop自带的WordCount程序,统计单词个数: bin/hadoop jar
share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0. jar wordcount test.txt output
此时MapReduce程序读取的本地文件test.txt,输出目录output也在本地

查看wordcount运行结果

查看Hadoop目录结构
[hadoop@hadoop101 hadoop-2.7.]$ ll
总用量
drwxr-xr-x. hadoop hadoop 5月 bin
drwxr-xr-x. hadoop hadoop 5月 etc
drwxr-xr-x. hadoop hadoop 5月 include
drwxr-xr-x. hadoop hadoop 5月 lib
drwxr-xr-x. hadoop hadoop 5月 libexec
-rw-r--r--. hadoop hadoop 5月 LICENSE.txt
-rw-r--r--. hadoop hadoop 5月 NOTICE.txt
-rw-r--r--. hadoop hadoop 5月 README.txt
drwxr-xr-x. hadoop hadoop 5月 sbin
drwxr-xr-x. hadoop hadoop 5月 share
配置伪分布式登录
进入hadoop/etc/hadoop目录,修改相关配置文件
cd etc/
cd hadoop/

修改core-site.xml配置文件
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value> <!--hdfs 的主机名和端口号 -->
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/data/tmp</value> <!-- namenode datanode 的默认路径-->
</property>
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property>
</configuration>

修改hdfs-site.xml配置文件
<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/dfs/name</value>
<final>true</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/dfs/data</value>
<final>true</final>
</property>
<property>
<name>dfs.replication</name>
<value></value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>

修改hadoop-env.sh配置文件

修改mapred-site.xml.template配置文件
<configuration>
<property>
<name>mapreduce.frameword.name</name>
<value>yarn</value>
</property>
</configuration>

修改yarn-site.xml配置文件
<configuration>
<property>
<name>yarn.nodemanager.aux-servies</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

配置hadoop环境变量

使修改生效,命令:sourec ~/.bashrc

创建hadoop相关数据目录
在hadoop相关配置文件中配置了多个数据目录,提前建立这些文件夹

格式化namenode
在启动hadoop集群前需要格式化namenode。需要注意的是,第一次安装Hadoop集群的时候需要格式化Namenode,以后直接启动Hadoop集群即可,不需要重复格式化Namenode。
切回到hadoop目录,输入如下命令:
bin/hdfs namenode -format

启动hadoop伪分布式集群
sbin/start-all.sh

启动完毕输入jps查看

出现上面所有进程表示启动成功
通过网页访问
localhost:50070

localhost:8088

测试运行hadoop伪分布式集群
hadoop伪分布式集群搭建完成,通过命令查看hdfs根目录下没有任何文件
bin/hdfs dfs –ls /
将之前本地新建的test.txt文件上传至hdfs
bin/hdfs dfs –mkdir /data (在集群上新建一个数据文件夹)
bin/hdfs dfs –put test.txt /data(将本地的test文件上传到集群中的data文件夹)
运行wordcount程序计数
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar wordcount /data/test.txt /data/output
查看运行结果
bin/hdfs dfs –cat /data/output/*
CentOS下Hadoop运行环境搭建的更多相关文章
- PHP - CentOS下开发运行环境搭建(Apache+PHP+MySQL+FTP)
本文介绍如何在 Linux下搭建一个 PHP 环境.其中 Linux 系统使用是 CentOS 7.3,部署在阿里云服务器上. 1,连接登录服务器 拿到服务器的 ip.初始密码以后.我们先通过远程 ...
- Hadoop运行环境搭建
Hadoop运行环境搭建 更改为阿里的Centos7的yum源 #下载wget yum -y install wget #echo 下载阿里云的yum源配置 Centos-7.repo wget - ...
- CentOS下Web服务器环境搭建LNMP一键安装包
CentOS下Web服务器环境搭建LNMP一键安装包 时间:2014-09-04 00:50来源:osyunwei.com 作者:osyunwei.com 举报 点击:3797次 最新版本:lnmp- ...
- CentOS下JAVA WEB 环境搭建
首先介绍下我的软件环境.虚拟机Vmware9.0(已经汉化),CentOS6.4(选择安装语言为简体中文),xshell4.0(强大的安全终端模拟软件),xftp4.0(FTP工具). 方便大家环境搭 ...
- centos下的lnmp环境搭建
1.配置centos的第三方yum源,因为原始的yum是无法安装nginx的 wget http://www.atomicorp.com/installers/atomic 下载atomic yum ...
- CentOS下 pycharm开发环境搭建之无穷无尽的问题
在上一篇的环境搭建中,表面上以为已经升级好python,安装好pycharm,并且可以用上了django框架,谁知道,谁知道,又是一断被虐的经历,我都要快恼羞成怒了. 在些记录一下我的经历. 1.首先 ...
- WMware 中CentOS系统Hadoop 分布式环境搭建(一)——Hadoop安装环境准备
1.创建3台虚拟机并装好系统,这里使用64位CentOS. 2.Ping测试[确保两两能ping通]: [ping xxx.xxx.xxx.xxx] 3.安装SSH:[yum install ssh ...
- CentOS下 pycharm开发环境搭建
经过一系统列的折腾之后,我终于有高版本的python和我熟悉的输入法用了,下面来搭建pycharm下的python开发环境. 1.首先安装java jdk注意是JAVA 的JDK,不是JAVA VM什 ...
- 啃掉Hadoop系列笔记(02)-Hadoop运行环境搭建
一.新增一个普通用户bigdata
随机推荐
- 精通Java中的volatile关键字
在一些开源的框架的源码当中时不时都可以看到volatile这个关键字,最近特意学习一下volatile关键字的使用方法. 很多资料中是这样介绍volatile关键字的: volatile是轻量级的sy ...
- 小菜鸟之HTML第二课
JavaScript 运行在浏览器上的一种基于对象和事件的驱动的脚本语言 基于对象(windows – document location histroy 便于调用对象属性和方法 事件驱动 键盘和鼠标 ...
- 【深入浅出-JVM】(2):原码、反码、补码
计算机中有补码表示 0 0 为正数 原码 00000000 00000000 00000000 00000000 反码 00000000 00000000 00000000 00000000 正数反码 ...
- 关于python中的包,模块导入的问题详解(二)
from import导入 紧接着的是from xx import xx 语法 1 ################ 2 from my_moudule import name 3 print(na ...
- 学习实践:使用模式,原则实现一个C++数据库访问类
一.概述 在我参与的多个项目中,大家使用libMySQL操作MySQL数据库,而且是源码即复用,在多个项目中有多套相同或相似的源码,这样的复用方式给开发带来了不变,而且libMySQL的使用比较麻烦, ...
- k8s-部署及介绍
Kubernetes主要功能: 数据卷 Pod中容器之间共享数据,可以使用数据卷. 应用程序健康检查 容器内服务可能进程堵塞无法处理请求,可以设置监控检查策略保证应用健壮性. 复制应用程序 ...
- zookeeper初识
ZOOKEEPER是为分布式系统提供高性能的协调工具 角色: 1.领导者(leader):负责进行投票的发起和决议,更新系统状态2.学习者(learner):包括跟随者(follower)和观察者(o ...
- Fonour.AspnetCore 生成SQL SERVER数据库
Install-Package EntityFramework Add-Migration InitialCreate Update-Database
- requests 抓取网站
import requests from requests.exceptions import RequestException import re import json def get_one_p ...
- vue 日常开发小细节
1. element-ui 日期选区禁用,设置属性 disabledDate: (time) => { const curDate = (new Date()).getTime() const ...