配置前先把域名映射配好哈 详情参考我的其他随笔(哪里不通可以在下方评论)

下载好hdfs.tar.gz 后

在/home/ldy下

mkdir apps/

tar -xzvf hdfs.tar.gz  -C  /home/ldy/apps/       #专门用来安装hdfs 和jdk的

修改环境变量:vim /etc/profile

在最后的fi上面添加

export HDP_HOME=/home/ldy/apps/hadoop-2.8.5/etc/hadoop    #路径因人而定

export PATH=$PATH:$HDP_HOME/sbin : $HDP_HOME/bin

hadoop-daemon.sh 等命令在sbin目录下(旧版的在bin下)   最好两个都配。jdk的配置也是一样的道理

当出现命令not found 时:source /etc/profile 即可

配置文件:

在/home/ldy/apps/hadoop-2.8.5/etc/hadoop下

vim hadoop-env.sh    #告诉它java_home即可

Vim core-site.xml

如果你只有一个namenode的话,得将fs.defaultFS改成fs.default.name

Vim hdfs-site.xml

vim slaves

这里记录了datenode服务器的主机名,域名映射配好后,启动集群后各服务器就可以互相连通了

注:core-site.xml配置错误会导致 incorrect namenode addr

name标签的值不可以修改

以上目录不存在会自动创建

9000端口负责客户端与服务端的交互

50070端口是一个外部服务器,可以通过该端口在浏览器访问namenode

域名映射后value值可以写主机名,且所有服务器的core-site.xml的地址必须一致,确保使用同一个文件系统

配置一下secondary namenodes:(这个是优化设置,配了会好些)

建议大家先配好一个服务器然后直接复制粘贴文件到其他服务器,省得麻烦

复制本地文件到其他服务器需要远程连接,开启ssh服务以及使用scp远程连接命令

注:需要连接的主机也要开通ssh以及安装scp

开启ssh:

运行 ps -e | grep ssh,查看是否有sshd进程

如果没有,说明server没启动,通过 /etc/init.d/ssh -start 启动server进程

如果提示ssh不存在 那么就是没安装server

安装server

1.sudo apt-get update

2.sudo apt-get install openssh-server

apt-get过程中可能出现:

E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarly unavailable)

E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is an other process using it?

当出现这个报错时直接:

sudo rm /var/lib/dpkg/lock-frontend

sudo rm /var/lib/dpkg/lock

接下来有可能还会报下面的错:

E: Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)

Unable to lock directory /var/lib/apt/lists

sudo rm /var/lib/apt/lists/lock

apt-get update  即可(scp属于ssh,开了ssh也就安装好了scp)

Scp :

scp -r  /home/ldy/apps/hadoop-2.8.5   ubuntu-01:/home/ldy/apps/

#将本地的hadoop文件复制到ubuntu-01主机的apps目录下

报错:   ssh连接The authenticity of host can't be established

修改/etc/ssh/ssh_config文件的配置

修改:(没有就在最后面添加)

StrictHostKeyChecking no

注:一般是禁止root用户登录的,切换到普通用户可正常使用

当出现这个错误时:

Permisson denied ,please try again

出现这个错误是因为请求被拒绝,是ssh的权限问题,需要修改ssh权限,切换root, 直接vim /etc/ssh/sshd_config

将PermitRootLogin no 改为 PermitRootLogin yes

记得重启ssh:sudo service ssh restart

hadoop  namenode -format (一次就够了)

start-dfs.sh  (开启namenode和datanode服务)

使用这个命令每次都要输密码,这里可以设一个免密登录,在namenode服务器上设比较好

免密登录:

ssh-keygen;(一直回车就行)

ssh-copy-id  主机名;(有多少个主机执行多少次这个命令)

vim etc/hadoop/slaves  (加上所有需要免密的主机名)

注意:虚拟机重启后得重新执行 start-dfs.sh,namenode和datanode才启动(其本质是软件)

这样就成功了

若有不对敬请指正........

hadoop集群搭建及易踩坑收录的更多相关文章

  1. Hadoop 集群搭建

    Hadoop 集群搭建 2016-09-24 杜亦舒 目标 在3台服务器上搭建 Hadoop2.7.3 集群,然后测试验证,要能够向 HDFS 上传文件,并成功运行 mapreduce 示例程序 搭建 ...

  2. Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!)

    Hadoop集群搭建安装过程(三)(图文详解---尽情点击!!!) 一.JDK的安装 安装位置都在同一位置(/usr/tools/jdk1.8.0_73) jdk的安装在克隆三台机器的时候可以提前安装 ...

  3. Hadoop集群搭建安装过程(二)(图文详解---尽情点击!!!)

    Hadoop集群搭建安装过程(二)(配置SSH免密登录)(图文详解---尽情点击!!!) 一.配置ssh无密码访问 ®生成公钥密钥对 1.在每个节点上分别执行: ssh-keygen -t rsa(一 ...

  4. Hadoop集群搭建安装过程(一)(图文详解---尽情点击!!!)

    Hadoop集群搭建(一)(上篇中讲到了Linux虚拟机的安装) 一.安装所需插件(以hadoop2.6.4为例,如果需要可以到官方网站进行下载:http://hadoop.apache.org) h ...

  5. 大数据 --> Hadoop集群搭建

    Hadoop集群搭建 1.修改/etc/hosts文件 在每台linux机器上,sudo vim /etc/hosts 编写hosts文件.将主机名和ip地址的映射填写进去.编辑完后,结果如下: 2. ...

  6. Linux环境下Hadoop集群搭建

    Linux环境下Hadoop集群搭建 前言: 最近来到了武汉大学,在这里开始了我的研究生生涯.昨天通过学长们的耐心培训,了解了Hadoop,Hdfs,Hive,Hbase,MangoDB等等相关的知识 ...

  7. Hadoop(二) HADOOP集群搭建

    一.HADOOP集群搭建 1.集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有 Na ...

  8. 1.Hadoop集群搭建之Linux主机环境准备

    Hadoop集群搭建之Linux主机环境 创建虚拟机包含1个主节点master,2个从节点slave1,slave2 虚拟机网络连接模式为host-only(非虚拟机环境可跳过) 集群规划如下表: 主 ...

  9. Hadoop 集群搭建 mark

    Hadoop 集群搭建 原创 2016-09-24 杜亦舒 性能与架构 性能与架构 性能与架构 微信号 yogoup 功能介绍 网站性能提升与架构设计 目标 在3台服务器上搭建 Hadoop2.7.3 ...

随机推荐

  1. neo4j︱与python结合的py2neo使用教程

    —- 目前的几篇相关:—– neo4j︱图数据库基本概念.操作罗列与整理(一) neo4j︱Cypher 查询语言简单案例(二) neo4j︱Cypher完整案例csv导入.关系联通.高级查询(三) ...

  2. 早停!? earlystopping for keras

    为了获得性能良好的神经网络,网络定型过程中需要进行许多关于所用设置(超参数)的决策.超参数之一是定型周期(epoch)的数量:亦即应当完整遍历数据集多少次(一次为一个epoch)?如果epoch数量太 ...

  3. Flutter移动电商实战 --(5)dio基础_引入和简单的Get请求

    这篇开始我们学习Dart第三方Http请求库dio,这是国人开源的一个项目,也是国内用的最广泛的Dart Http请求库. 1.dio介绍和引入 dio是一个强大的Dart Http请求库,支持Res ...

  4. Android操作外置SD卡和U盘相关文章

    Android设备与外接U盘实现数据读取操作https://blog.csdn.net/true100/article/details/77775700 usbdisklibhttps://githu ...

  5. springboot 底层 JackSon 的使用

    Jackson常用的注解使用和使用场景: 接下来我们在看一段代码,这段代码是常用注解在实体类User中的简单使用:package zone.reborn.springbootstudy.entity; ...

  6. JavaScript中原型链存在的问题解析

    我们知道使用原型链实现继承是一个goodway:)看个原型链继承的例子. function A () { this.abc = 44; } A.prototype.getAbc = function ...

  7. ObjectAnimator属性动画示例代码

    import android.animation.AnimatorSet; import android.animation.ObjectAnimator; import android.app.Ac ...

  8. 将ejs模板文件的后缀换成html

    1.app.js的头部定义ejs: var ejs = require('ejs'): 2注册html模板引擎: app.engine('html',ejs.__express); 3.将模板引擎换成 ...

  9. Qt编写自定义控件15-百分比仪表盘

    前言 百分比仪表盘,主要的应用场景是展示销售完成率.产品合格率等,也可以作为一个进度百分比展示,可以独立设置对应的标题文字,标题文字的颜色和整体的颜色都可以单独设置,建议设置成统一的风格,这样会显得更 ...

  10. C# 保留两位“有效数字”,而不是两位“小数”

    1.问题描述: 最近在处理软件结果显示时,发现如果利用 Math.Round(Number,N) 取N为小数时,有的结果不能显示完全 比如:15.3245 和 0.00106 两个数字,如果 N=2 ...