CentOS下搭建Hadoop
参考:Hadoop官网文档
版本:hadoop-3.2.0
安装配置jdk
因hadopp是java开发的,所以安装hadoop前需要先有java的jdk环境。
参考:https://blog.csdn.net/u013248434/article/details/70304526
因CentOS7自带java,只需找到java路径,配置环境变量即可
[cjp@centos] which java
/usr/bin/java
[cjp@centos] ls /usr/bin/java
/usr/bin/java
[cjp@centos] ls -l /usr/bin/java
lrwxrwxrwx. 1 root root 22 Jun 20 03:00 /usr/bin/java -> /etc/alternatives/java
[cjp@centos] ls -l /etc/alternatives/java
lrwxrwxrwx. 1 root root 71 Feb 3 17:29 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/bin/java (可以看出文件是link ,是个链接)
[cjp@centos] ls -l /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/bin/java
-rwxr-xr-x. 1 root root 7376 Oct 31 05:21 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/bin/java
[cjp@centos] cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64
[cjp@centos] ls
jre
配置环境变量
# 添加环境变量
[cjp@centos] sudo vim /etc/profile
# 在/etc/profile中加入以下内容
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre
export PATH=$JAVA_HOME/bin:$PATH
# 配置文件生效
[cjp@centos] source /etc/profile
# 查看是否已添加生效
[cjp@centos] echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre
安装Hadoop
本次安装是以练习为目的,使用的是伪分布式模式(只有一台机器),这台机子即是主节点namenodes,同时也有一个计算节点,所有主节点需要可以免密码登陆所有数据节点datanodes的机子;如果还为配置,可执行下面三行代码:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
下载解压
下载(清华镜像)
wget http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.2.0/hadoop-3.2.0.tar.gz
解压
# 解压tar.gz
tar -xzvf hadoop-3.2.0.tar.gz
# 解压到指定文件夹:
tar -xzvf hadoop-3.2.0.tar.gz -C /home/chenjunpeng/app
配置文件
参考:https://www.cnblogs.com/forbeat/p/8179877.html
文件路径: ~/app/hadoop-3.2.0/etc/hadoop
java配置
hadoop-env.sh
echo $JAVA_HOME
>>> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64/jre
找到并修改
xml export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64/jre
hdfs配置
core-site.xml(伪分布式模式)
<!-- 指定HDFS老大(namenode)的通信地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property> <!-- 指定hadoop运行时产生文件的存储路径 -->
<!-- 如果不重新设置存储路径,默认是缓冲路径下,每次重启数据就会清空丢失-->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/cjp/app/hadoop-tmp</value>
</property>
hdfs-site.xml
<!-- 设置hdfs副本数量 -->
<!-- 1个就是伪分布-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
yarn配置
mapred-site.xml
# 由于在配置文件目录下没有,需要复制模版:
# 新版本已经不是模版了,直接使用
mv mapred-site.xml.template mapred-site.xml
<configuration>
<!-- 通知框架MR使用YARN -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml
<configuration>
<!-- reducer取数据的方式是mapreduce_shuffle -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
启动hadoop
格式化HDFS
注意:这一步操作,只是在第一次时执行,每次如果都格式化的话,那么HDFS上的数据就会被清空
bin目录下
./hdfs namenode -format
启动hdfs和yarn
# 先启动HDFS
sbin/start-dfs.sh
# 再启动YARN
sbin/start-yarn.sh
[cjp@centos sbin]$ ./start-dfs.sh
Starting namenodes on [localhost]
Starting datanodes
Starting secondary namenodes [centos]
[cjp@centos sbin]$ ./start-yarn.sh
Starting resourcemanager
Starting nodemanagers
可以在浏览器中查看hdfs和mr的状态.
hdfs管理界面:http://localhost:50070 / http://localhost:9870(3.0版本后的端口号)
MR的管理界面:http://localhost:8088
停止hdfs和yarn
sbin/stop-yarn.sh
sbin/stop-dfs.sh
CentOS下搭建Hadoop的更多相关文章
- CentOS下安装hadoop
CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...
- Linux 下搭建 Hadoop 环境
Linux 下搭建 Hadoop 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 Hadoop 环境 CSDN:Linux 下搭建 Hadoop 环境 环境要求 操作系统:CentOS ...
- CentOS下搭建LAMP环境详解
前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...
- Centos下搭建 nginx+uwsgi+python
python做web应用最麻烦的还是配置服务器了,此话不假,光中间件就有好几种选择,fastcgi.wsgi.uwsgi,难 免让人眼花缭乱. 而听说uwsgi的效率是fastcgi和wsgi的10倍 ...
- CentOS下搭建LNMP+WordPress+http2.0教程
此文是本人CentOS下搭建WordPress的一些笔记,环境搭建时间::将看过的几篇文章总结下来,形成一条龙长文.不用大家再找来找去. 本文大概分为此几部分: 一.基础命令更新: 二.服务器加速(非 ...
- 在CentOS下搭建Android 开发环境
在CentOS下搭建Android 开发环境 目录 1.环境搭建 1.1.JDK安装 1.2.Eclipse安装 1.3.ADT安装 1.4.Android SDK安装 1.5.Android NDK ...
- centos下搭建python双版本环境
目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...
- Centos下搭建LAMP+PHP
Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管 ...
- Centos下搭建DNS域名解析服务器
Centos下搭建DNS域名解析服务器 DNS 即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域 ...
随机推荐
- JAVA框架Struts2 结果页配置
一: Action类的返回逻辑视图,一般会出现一个场景就是:当前package 标签下,几个action类需要返回同一个页面的时候.这个时候需要全局结果. 全局结果(使用标签<global-re ...
- ROS初级教程 cmake cmakelist.txt 的编写教程
有很多 的时候我们使用别人的程序包.然后添加东西的时候缺少什么东西,会使程序编译不过去,甚至无法运行,接下来介绍一下cmakelist.txt 的每一行的作用.为了以后添加和修改方便. 2.整体结构和 ...
- 为什么重写equals还要重写hashcode??
equals和hashcode是object类下一个重要的方法,而object类是所有类的父类,所以所有的类都有这两个方法 equals和hashcode间的关系: 1.如果两个对象相同(即equal ...
- day34
今日内容: 1.开启子进程的两种方式 2.join方法 3.进程之间内存空间相互隔离 4.僵尸进程和孤儿进程 5.守护进程 6.互斥锁 7.进程对象其他相关的属性和方法 1.开启子进程的两种方式 方式 ...
- Java IO详解(三)------字节输入输出流
File 类的介绍:http://www.cnblogs.com/ysocean/p/6851878.html Java IO 流的分类介绍:http://www.cnblogs.com/ysocea ...
- c++ 模板参数做容器参数迭代器报错 vector<T>::const_iterator,typename const报错
错误1: template<class T>void temp(std::vector<T>& container){ std::vector<T& ...
- 大数据入门第二十四天——SparkStreaming(一)入门与示例
一.概述 1.什么是spark streaming Spark Streaming is an extension of the core Spark API that enables scalabl ...
- go语言之行--基础部分
一.数据类型 布尔型 布尔类型 - 由两个预定义常量组成:true.false,默认值为false package main import "fmt" func main() { ...
- Android开发——为EditText添加烟花效果的实现
)什么时候发射烟花:监听EditText的文字改变,获取文字数量的变化以确定风的方向,还有获取光标的位置确定爆炸的位置.光标的位置没有具体的方法确定坐标,要通过反射自己计算. 2. 主要实现类 库里 ...
- ScreenToGif 代码分析
ScreenToGif项目由四个文件夹组成: Files 存放协议文件 GifRecorder 存放gif编码器代码 ScreenToGif 存放主代码 Other 存放Hooktest和Transl ...