搭建hadoop伪分布式环境
伪分布式就是只有一台机器,既是namenode又是datanode。一台阿里云服务器(centos)即可完成。
Java环境
首先需要安装Java环境,下载jdk的安装包,解压到/usr/java/,然后配置环境变量。
vim /etc/profile
#set java environment
export JAVA_HOME=/usr/java/jdk1.8.0_151
export PATH=$JAVA_HOEM/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
建立信任关系
ssh-keygen -t rsa #一路回车
这个命令的作用是生成公钥和私钥,并且在该用户的根目录下生成.ssh目录。-t type rsa是一种加密算法。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
将生成的公钥添加到当前用户的认证文件中,ssh localhost 不需要输入密码则为成功。
安装hadoop
下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/
tar -zvxf hadoop-2.6.5.tar.gz
mv hadoop-2.6.5/ /usr/local/
cd /usr/local/hadoop-2.6.5/
配置hadoop环境变量
#set hadoop environment
export HADOOP_HOME=/usr/local/hadoop-2.6.5
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
在hadoop中配置Java环境变量,这里不配置会报错。把里面的JAVA_HOME替换成本机真实的jdk路径。
vim ./etc/hadoop/hadoop-env.sh
# export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/usr/java/jdk1.8.0_151
然后是配置hdfs和yarn。配置前先进到hadoop的根目录。
cd /usr/local/hadoop-2.6.5/
vim ./etc/hadoop/core-site.xml
vim ./etc/hadoop/hdfs-site.xml
vim ./etc/hadoop/yarn-site.xml
vim ./etc/hadoop/mapred-site.xml
core-site.xml 配置文件内容如下:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
<description>NameNode URI</description>
</property>
</configuration>
hdfs-site.xml 配置文件如下:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
yarn-site.xml 配置文件如下:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
mapred-site.xml配置文件如下:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
配置完成之后输入jps,应该有6个Java进程,缺一不可。
8002 NameNode
15624 Jps
7449 ResourceManager
7546 NodeManager
7306 SecondaryNameNode
8415 DataNode
hadoop启动与关闭
start-dfs.sh #开启hdfs
start-yarn.sh #开启YARN
start-all.sh #开启所有服务
stop-all.sh #关闭所有服务
遇到的问题
datanode进程起不来问题,就是jps查看进程之后少一个datanode。
rm -rf /usr/local/hadoop/tmp/
这个路径是在前面core-site.xml 配置文件中对应的路径。然后重新启动。
namenode进程起不来。
rm -rf /usr/local/hadoop/tmp/
hadoop namenode -format
重新格式化namenode之后再重新启动。
有问题先去日志文件中看,$HADOOP_HOME/logs 各个模块都对应不同的日志文件。
搭建hadoop伪分布式环境的更多相关文章
- 基于Centos搭建 Hadoop 伪分布式环境
软硬件环境: CentOS 7.2 64 位, OpenJDK- 1.8,Hadoop- 2.7 关于本教程的说明 云实验室云主机自动使用 root 账户登录系统,因此本教程中所有的操作都是以 roo ...
- [转]搭建Hadoop伪分布式环境
https://my.oschina.net/MyHeaven1987/blog/1821509 http://hadoop.apache.org/docs/current/hadoop-projec ...
- 本地搭建Hadoop伪分布式环境之四:开启搭建Hadoop2.4.0之旅
1.准备软件 64位下载包下载: hadoop-2.4.0-64bit.tar.gz 百度网盘: 链接: http://pan.baidu.com/s/1hqEDe2S password: ...
- 【Hadoop离线基础总结】CDH版本Hadoop 伪分布式环境搭建
CDH版本Hadoop 伪分布式环境搭建 服务规划 步骤 第一步:上传压缩包并解压 cd /export/softwares/ tar -zxvf hadoop-2.6.0-cdh5.14.0.tar ...
- Hadoop伪分布式环境搭建+Ubuntu:16.04+hadoop-2.6.0
Hello,大家好 !下面就让我带大家一起来搭建hadoop伪分布式的环境吧!不足的地方请大家多交流.谢谢大家的支持 准备环境: 1, ubuntu系统,(我在16.04测试通过.其他版本请自行测试, ...
- CentOS7下Hadoop伪分布式环境搭建
CentOS7下Hadoop伪分布式环境搭建 前期准备 1.配置hostname(可选,了解) 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(p ...
- 《OD大数据实战》Hadoop伪分布式环境搭建
一.安装并配置Linux 8. 使用当前root用户创建文件夹,并给/opt/下的所有文件夹及文件赋予775权限,修改用户组为当前用户 mkdir -p /opt/modules mkdir -p / ...
- Hadoop-01 搭建hadoop伪分布式运行环境
Linux中配置Hadoop运行环境 程序清单 VMware Workstation 11.0.0 build-2305329 centos6.5 64bit jdk-7u80-linux-x64.r ...
- Linux下配置Hadoop伪分布式环境
1. 准备Linux环境 提示:我用的系统是CentOS 6.4. 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host- ...
随机推荐
- js中reduce()用法
reduce()方法 定义:reduce()接收一个函数作为累加器,数组中每个值(从左到右)开始缩减,最终计算为一个值 对于空数组不执行回调函数 语法:array.reduce(function(to ...
- Linux传统Huge Pages与Transparent Huge Pages再次学习总结
Linux下的大页分为两种类型:标准大页(Huge Pages)和透明大页(Transparent Huge Pages).Huge Pages有时候也翻译成大页/标准大页/传统大页,它们都是Hu ...
- 3.3.5 DMA写时发生Cache命中的优化
在许多高性能处理器中,还提出了一些新的概念,以加速外设到存储器的DMA写过程.如Freescale的I/O Stashing和Intel的IOAT技术. 如图3?8所示,当设备进行存储器写时,如果可以 ...
- SAS 9.4 的sid问题解决方案汇总(头疼...)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 因为经常出现sid出现问题,所以问题很多.最常 ...
- linux命令--ldconfig和ldd用法
一.ldconfig ldconfig是一个动态链接库管理命令,为了让动态链接库为系统所共享,还需运行动态链接库的管理命令--ldconfig. ldconfig 命令的用途,主要是在默认搜寻目录(/ ...
- Caused by: java.lang.ClassNotFoundException: org.hibernate.annotations.common.reflection.MetadataPro
1.错误描述 信息: MLog clients using java 1.4+ standard logging. 2014-7-12 19:29:20 com.mchange.v2.c3p0.C3P ...
- Java引用变量的类型
Java引用变量的类型 1.编译时类型:由声明该变量时使用的类型决定 2.运行时类型:由实际赋给该变量的对象决定 如果编译时类型和运行时类型不一致,就可能出现多态性
- 获取JSON对象的属性值
1.问题背景 有一个json对象,其中有键值对,那怎样获取json对象中属性值 2.实现源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...
- iOS - CALayer 绘图层
1.CALayer 绘图层 在 iOS 系统中,你能看得见摸得着的东西基本上都是 UIView,比如一个按钮.一个文本标签.一个文本输入框.一个图标等等,这些都是 UIView.其实 UIView 之 ...
- ajax页面跳转(后台返回的是一个url地址,或者自己传进去的是url地址)
function modifyMerchantInfo(merchant_code) { $.ajax({ url: '/intra/crm/merchant/OrderMgr.htm?method= ...