前言###

先说一下当前环境:Ubuntu18.04 jdk1.8 Hadoop选用-2.6.0-cdh5.15.1 用户名:supershuai-VirtualBox

Hadoop的下载地址:http://archive.cloudera.com/cdh5/cdh/5/ hoodp-native下载对应的版本http://dl.bintray.com/sequenceiq/sequenceiq-bin/hadoop-native-64-2.*.0.tar

在安装Hadoop之前,首先要安装好Java环境,配置好全局变量,这里说一下我的所有环境变量都是在/etc/profile中配置的,如果你是使用的其它版本linux则在其它版本环境变量文件中进行配置(如centos7中的~/.bash_profile文件)。

其次你要做的是确保ssh服务能够正常启动,并进一步设置ssh的免密登录,主要是为了解决每次启动Hadoop时频繁的输入密码验证的操作。ssh免密操作:

执行:ssh-keygen -t rsa
执行:cd ~/.ssh
执行:ll 对文件夹内容进行查看,此时会发现私钥与公钥文件,接下来就是把公钥写入 authorized_keys文件中
执行:cat id_rda_pub >> authorized_keys
执行:sudo chmod 600 authorized_keys

设置以后可以使用 ssh localhost 查看下是否已经可以免密远程连接

Hadoop安装与设置###

首先将下载的压缩包使用tar命令进行解压到本地安装目录,目录自行设定。

配置hadoop—env.sh文件(安装目录下的/etc/hadoop下):

vi hadoop-env.sh

加入:

export JAVA_HOME=你的jdk目录

配置core-site.xml文件

vi etc/hadoop/core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://supershuai-VirtualBox:8020</value>
</property>
</configuration>

修改成你的机器名:8020

配置hdfs-site.xml文件

vi etc/hadoop/hdfs-site.xm

(目前环境是单台机器所以设置一个副本,到用的集群后再改   )
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

配置 /tem 启动后清除问题 hdfs-site.xml:( /opt/tmp是新建的放置文件的目录)

vi etc/hadoop/hdfs-site.xml

<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/tmp</value>
</property>
</configuration>

配置slaves

vi slaves

修改为机器名

最后添加系统变量:

vi etc/profile

export JAVA_HOME=Java目录
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export HADOOP_HOME=Hadoop目录
export PATH=$HADOOP_HOME/bin:$PATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

配置后source下profile 文件:source etc/profile

启动与常见问题###

第一次启动首先格式化文件

执行 : hdfs namenode -format

在sbin目录下的

执行 : ./start-dfs.sh

1.仍然需要输入密码的问题

chown supershuai: /home/hadoop/.ssh         (supershuai是我的用户名名)
chown supershuai: /home/hadoop/.ssh/*  
chmod 700 /home/hadoop/.ssh  
chmod 600 /home/hadoop/.ssh/* 

2.Unable to load native-hadoop library for your platform... using builtin-java classes where applicable的问题

将native文件解压到Hadoop目录下的lib文件以及lib文件下的native文件
执行: tar -xvf hadoop-native-64-2.6.0.tar -C $HADOOP_HOME/lib/native
执行: tar -xvf hadoop-native-64-2.6.0.tar -C $HADOOP_HOME/lib
配置到环境变量
vim /etc/profile
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"

3.ssh在Hadoop中的连接被拒绝问题

ssh/sshd_config文件配置
辑配置文件,允许以 root 用户通过 ssh 登录:sudo vi /etc/ssh/sshd_config
找到:PermitRootLogin prohibit-password禁用
添加:PermitRootLogin yes

4.jps启动后只有jps进程

这时建议要去查看logs下的.log文档,根据具体的问题进行解决。包括删除tmp目录下的文件并且重新执行 hdfs namenode -format命令

当然以上的所有文件要在普通用户的管理和创建下进行,不然会因为权限问题导致很多错误。

5.防火墙问题

关闭防火墙:   sudo ufw disable

开启防火墙:    sudo ufw enable

开放某一个 PORT 8080:    sudo ufw allow 8080

删除一个已经开启的 PORT 8080:    sudo ufw delete allow 8080

查看防火墙状态:   sudo ufw status

Hadoop搭建record下的更多相关文章

  1. hadoop搭建开发环境及编写Hello World

    hadoop搭建开发环境及编写Hello World   本文地址:http://www.cnblogs.com/archimedes/p/hadoop-helloworld.html,转载请注明源地 ...

  2. 单机Hadoop搭建

    通过一段时间的学习,我在我的centos上安装了单机hadoop,如果这对你有帮助,就进来探讨学习一下 Hadoop伪分布式配置 Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以 ...

  3. hadoop搭建伪分布式集群(centos7+hadoop-3.1.0/2.7.7)

    目录: Hadoop三种安装模式 搭建伪分布式集群准备条件 第一部分 安装前部署 1.查看虚拟机版本2.查看IP地址3.修改主机名为hadoop4.修改 /etc/hosts5.关闭防火墙6.关闭SE ...

  4. hadoop搭建一:虚拟机网络配置和基础(未完成)

    基于VMware 15+CentOS 7+Hadoop 2.6,hadoop的搭建主要用于个人学习,水平有限. hadoop搭建一:虚拟机网络配置和基础 hadoop搭建二:hadoop全分布搭建 h ...

  5. 【hadoop】——window下elicpse连接hadoop集群基础超详细版

    1.Hadoop开发环境简介 1.1 Hadoop集群简介 Java版本:jdk-6u31-linux-i586.bin Linux系统:CentOS6.0 Hadoop版本:hadoop-1.0.0 ...

  6. Hadoop:搭建hadoop集群

    操作系统环境准备: 准备几台服务器(我这里是三台虚拟机): linux ubuntu 14.04 server x64(下载地址:http://releases.ubuntu.com/14.04.2/ ...

  7. hadoop搭建杂记:Linux下hadoop的安装配置

    VirtualBox搭建伪分布式模式:hadoop的下载与配置 VirtualBox搭建伪分布式模式:hadoop的下载与配置 由于个人机子略渣,无法部署XWindow环境,直接用的Shell来操作, ...

  8. hadoop搭建杂记:Linux下hostname的更改办法

    VirtualBox搭建hadoop伪分布式模式:更改hostname VirtualBox搭建hadoop伪分布式模式:更改hostname master: ip:192.168.56.120 机器 ...

  9. hadoop搭建杂记:Linux下虚拟机集群网络搭建

    VirtualBox搭建hadoop伪分布式模式 VirtualBox搭建hadoop伪分布式模式 master: ip:192.168.56.120 机器名: master 启动NameNode 启 ...

随机推荐

  1. ERROR 1235 (42000): This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery'问题的解决

    .与limit相关的sql语句作为临时表 select * from 临时表 limit ) as B 缺点:只能查临时表的数据 .可以查原表的数据 select * from test where ...

  2. pycharm 安装vue

    1.设置JS为ES6 2.安装vue.js 3.重启pycharm 4.检查

  3. OAuth2.0的那点荒唐小秘密 -几个简单概念和原理

    OAuth2.0这个名词你是否在项目中时常听到呢?是否觉得好像懂,又好像不太懂呢? 最近一直想写篇关于OAuth2.0的东西,记录下我的学习与感悟,然各种理由的拖延,直到今日才静下心来写下这篇博客.当 ...

  4. python返回值内取出某一段数据的方法

    面讲的方法只适用于返回值长度固定的内容,长度不固定,每次取得值就不会一样 比如,我们需要取出“提取码: y3rx ”“:”后面的“y3rx” 目标数据在内容的第5位到第9位,做左侧为第1位,冒号后面有 ...

  5. mybatis generator cmd 终端命令 生成dao model mapper

    mybatis generator cmd 终端命令 生成dao model mapper 文件包下载 mybatis-generator-core-1.3.2.jar 下载地址:https://gi ...

  6. Java并发专栏

    1. Java并发 2. 守护线程与非守护线程 3. 为什么启动线程用start()而不用run()? 4. Java线程join方法总结 5. 生产者与消费者 6. wait.notify/noti ...

  7. 一道面试题引发的对 Java 内存模型的一点疑问

    一道面试题引发的对Java内存模型的一点疑问 问题描述 如上图所示程序,按道理,子线程会通过 num++ 操作破坏 while 循环的条件,从而终止循环,执行最后的输出操作.但在我的多次运行中,偶尔会 ...

  8. jmeter性能测试2:基础功能介绍

    对于英语不好的同学建议先改为简体中文再进行使用 1.添加->threads->线程组(控制总体并发)            线程数:虚拟用户数.一个虚拟用户占用一个进程或线程        ...

  9. C语言学习笔记--void

    void真正发挥的作用在于: (1) 对函数返回的限定: (2) 对函数参数的限定. 先给一个例子 定义函数返回值 函数名(参数1,参数2,参数3,.......){内容}int  sum(int a ...

  10. ubuntu16.04+Opencv3.4.0安装(slam版)

    本文记录ubuntu下安装opencv过程,步骤来自 opencv官网可以对照官网步骤:https://docs.opencv.org/3.4.0/d7/d9f/tutorial_linux_inst ...