Hadoop2.7.7 centos7 完全分布式 配置与问题随记

这里是当初在三个ECS节点上搭建hadoop+zookeeper+hbase+solr的主要步骤,文章内容未经过润色,请参考的同学搭配其他博客一同使用,并记得根据实际情况调整相关参数。

 

0.prepare

jdk,推荐1.8

关闭防火墙

开放ECS安全组

 三台机器之间的免密登陆ssh

ip映射:【question1】hadoop启动时出现报错java.net.BindException: Cannot assign requested address

说明ip映射没有配置正确,正确的方式是在每一个节点上,都执行"内外外"的配置方式,即将本机与本机的内网ip对应,其他机器设置为外网ip

下面的文件要在每个节点上都修改

 

1. vi /etc/profile

1. vi /etc/profile
/opt/hadoop/hadoop-2.7.7 export HADOOP_HOME=/opt/hadoop/hadoop-2.7.7
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH #使环境变量生效
souce /etc/profile
#检验
hadoop version

 

2. vi /.../hadoop-2.7.7/etc/hadoop/core-site.xml

<configuration>

<property>
<name>fs.defaultFS</name>
<value>hdfs://Gwj:8020</value>
<description>定义默认的文件系统主机和端口</description>
</property> <property>
<name>io.file.buffer.size</name>
<value>4096</value>
<description>流文件的缓冲区为4K</description>
</property> <property>
<name>hadoop.tmp.dir</name>
<value>file:/opt/hadoop/hadoop-2.7.7/tempdata</value>
<description>A base for other temporary directories.</description>
</property> </configuration>

 

3. vi /.../hadoop-2.7.7/etc/hadoop/hdfs-site.xml

<configuration>

    <property>
<name>dfs.replication</name>
<value>2</value>
</property> <property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop/hadoop-2.7.7/dfs/name</value>
</property> <property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop/hadoop-2.7.7/dfs/data</value>
</property> <property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>     <!--后增,如果想让solr索引存放到hdfs中,则还须添加下面两个属性-->
        <property>
            <name>dfs.webhdfs.enabled</name>
            <value>true</value>
        </property>
        <property>
            <name>dfs.permissions.enabled</name>
            <value>false</value>
        </property>
        
        <!--【question2】SecondayNameNode默认与NameNode在同一台节点上,在实际生产过程中有安全隐患。解决方法:加入如下配置信息,指定NameNode和SecondaryNameNode节点位置-->
<property>
<name>dfs.http.address</name>
<value>Gwj:50070</value>
</property> <property>
<name>dfs.namenode.secondary.http-address</name>
<value>Ssj:50090</value>
</property>
</configuration>

 

4. vi /.../hadoop-2.7.7/etc/hadoop/mapred-site.xml

<configuration>

    <property>
<name>mapreduce.framework.name</name>
<value>local</value>
</property> <!-- 指定mapreduce jobhistory地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>0.0.0.0:10020</value>
</property> <!-- 任务历史服务器的web地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>0.0.0.0:19888</value>
</property> </configuration>

 

5. vi /.../hadoop-2.7.7/etc/hadoop/yarn-site.xml

<configuration>

	<property>
<name>yarn.resourcemanager.hostname</name>
<value>Gwj</value>
<description>指定resourcemanager所在的hostname</description>
</property> <property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
<description>NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序 </description>
</property> </configuration>

 

6.vi /.../hadoop-2.7.7/etc/hadoop/slaves

老版本是slaves文件,3.0.3 用 workers 文件代替 slaves 文件

将localhost删掉,加入dataNode节点的主机名
[root@Gwj ~]# cat /opt/hadoop/hadoop-2.7.7/etc/hadoop/slaves
Ssj
Pyf

 

7.首次使用进行格式化

hdfs namenode -format

 

8.启动

/.../hadoop-2.7.7/sbin/start/start-all.sh

	hdfs
/.../hadoop-2.7.7/sbin/start/start-dfs.sh Yarn
/.../hadoop-2.7.7/sbin/start/start-yarn.sh #start可替换为stop、status

 

9.检验

使用jps检验
hadoop
hdfs
Master---NameNode (SecondaryNameNode)
Slave---DataNode
Yarn
Master---ResourceManager
Slave---NodeManager

或者使用 “Master ip+50070”

 

---以下的yarn未设置,注意<configuration>!!!

	<property>
<name>yarn.resourcemanager.address</name>
<value>${yarn.resourcemanager.hostname}:8032</value>
</property> <property>
<description>The address of the scheduler interface.</description>
<name>yarn.resourcemanager.scheduler.address</name>
<value>${yarn.resourcemanager.hostname}:8030</value>
</property> <property>
<description>The http address of the RM web application.</description>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8088</value>
</property> <property>
<description>The https adddress of the RM web application.</description>
<name>yarn.resourcemanager.webapp.https.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property> <property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>${yarn.resourcemanager.hostname}:8031</value>
</property> <property>
<description>The address of the RM admin interface.</description>
<name>yarn.resourcemanager.admin.address</name>
<value>${yarn.resourcemanager.hostname}:8033</value>
</property> <property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>2048</value>
<discription>每个节点可用内存,单位MB,默认8182MB,根据阿里云ECS性能配置为2048MB</discription>
</property> <property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>2.1</value>
</property> <property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>2048</value>
</property> <property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property> </configuration>

 

Hadoop2.7.7 centos7 完全分布式 配置与问题随记的更多相关文章

  1. hadoop安装教程,分布式配置 CentOS7 Hadoop3.1.2

    安装前的准备 1. 准备4台机器.或虚拟机 4台机器的名称和IP对应如下 master:192.168.199.128 slave1:192.168.199.129 slave2:192.168.19 ...

  2. 在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例

    在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例                                                     ...

  3. Data - Hadoop伪分布式配置 - 使用Hadoop2.8.0和Ubuntu16.04

    系统版本 anliven@Ubuntu1604:~$ uname -a Linux Ubuntu1604 4.8.0-36-generic #36~16.04.1-Ubuntu SMP Sun Feb ...

  4. Ubuntu14.04下hadoop-2.6.0单机配置和伪分布式配置

    需要重新编译的教程:http://blog.csdn.net/ggz631047367/article/details/42460589 在Ubuntu下创建hadoop用户组和用户 hadoop的管 ...

  5. Hadoop安装教程_单机/伪分布式配置_CentOS6.4/Hadoop2.6.0

    Hadoop安装教程_单机/伪分布式配置_CentOS6.4/Hadoop2.6.0 环境 本教程使用 CentOS 6.4 32位 作为系统环境,请自行安装系统.如果用的是 Ubuntu 系统,请查 ...

  6. 分布式配置hadoop2.5.0 2.6.x

    1. sudo vim /etc/hostname 在master的机器上,改成     master 在slave上写  slave01,02,03...... 配置好后重启. 2. sudo vi ...

  7. CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装

    摘要 CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装 目录[-] 1.系统环境说明 2.安装前的准备工作 2.1 关闭防火墙 2.2 检查ssh安装情况,如果没有则安装ssh ...

  8. 转载:Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04

    原文 http://www.powerxing.com/install-hadoop/ 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单,书上有写到, ...

  9. Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04

    摘自: http://www.cnblogs.com/kinglau/p/3796164.html http://www.powerxing.com/install-hadoop/ 当开始着手实践 H ...

随机推荐

  1. PAT 统计同成绩学生

    本题要求读入 N 名学生的成绩,将获得某一给定分数的学生人数输出. 输入格式: 输入在第 1 行给出不超过 105 的正整数 N,即学生总人数.随后一行给出 N 名学生的百分制整数成绩,中间以空格分隔 ...

  2. Android开发之StrictMode

    StrictMode简介 Android开发者官网对StrictMode的介绍 StrictMode类是Android 2.3(API 9)引入的一个工具类 用来帮助开发者发现代码中一些不规范的问题, ...

  3. Android开源框架选择

    Android开源项目推荐之「网络请求哪家强」 Android开源项目推荐之「图片加载到底哪家强」 Android网络框架的封装 Android Volley+OkHttp3+Gson(Jackson ...

  4. make & make install(make altinstall) 因动态库gcc版本问题

    cc1: error: unrecognized command line option “-flot” 解决方式是:找到 configure之后的Makefile, 删除 -flot 原因是gcc ...

  5. HTML的简介和历史发展过程

    HTML的简介和历史发展过程 前言 这次写一篇对于HTML以及CSS的简介,平常我们大家都知道的编程语言有很多种,比如Java.C++.Python等等,每种编程语言都有其独具的特色,不论是语法格式还 ...

  6. 使用VBS实现SSH远程登录并自动执行命令

    set ws=createobject("wscript.shell")ws.run "Putty所在路径\putty.exe -ssh -pw 你的密码 用户名@192 ...

  7. Python函数&异常处理

    1. 函数基础 1.1 参数和返回值 1.1.1 参数 位置参数.关键字参数 def my_func1(x, y, z): print(x+y+z, "计算结束") my_func ...

  8. Flask 蓝图(Blueprint)使用方式解析

    Flask蓝图提供了模块化管理程序路由的功能,使程序结构清晰.简单易懂.下面分析蓝图的使用方法 假如说我们要为某所学校的每个人建立一份档案,一个很自然的优化方式就是这些档案如果能分类管理,就是说假如分 ...

  9. Shell总结02-shell变量、赋值与替换

    变量 shell并不区分变量的类型,或者说变量都是弱类型的,本质上都是字符串,但是如果变量值中只含有数字,shell还是支持对其进行算术运算 赋值 常见的赋值操作符有=(在其前后没有空白符)和let ...

  10. 贪吃蛇游戏(printf输出C语言版本)

    这一次我们应用printf输出实现一个经典的小游戏—贪吃蛇,主要难点是小蛇数据如何存储.如何实现转弯的效果.吃到食物后如何增加长度. 1 构造小蛇 首先,在画面中显示一条静止的小蛇.二维数组canva ...