一、系统环境: 

Hadoop 0.20.2、JDK 1.6、Linux操作系统

二、使用背景 

网上关于Hadoop的集群配置,很多情况下,都是把namenode和secondnamenode部署在同一服务器上。为了降低风险,一个大的集群环境,最好是把这两个配置到不同的服务器上。

三、操作 

要达到这要求,需要对conf/master、conf/hdfs-site.xml和conf/core-site.xml这三个配置文件进行设置。

1、conf/master文件: 

Hadoop的官网和大多网上的安装手册,都要求此文件配置namenode机器的IP或是名称。www.codesky.net 其实,master文件不决定哪个是namenode,而决定的是secondarynamenode(决定谁是namenode的关键配置是core-site.xml中的fs.default.name这个参数)。所以,这里直接写上作为secondnamenode的IP或机器名称(可以是集群中任一个datanode节点)就可以了。一行一个(可以配置多个secondnamenode)。

2、hdfs-site.xml:这个配置文件要改1个参数: 

<property> 

  <name>dfs.http.address</name> 

  <value>hostIP:50070</value> 

  <description> 

    The address and the base port where the dfs namenode web ui will listen on. 

    If the port is 0 then the server will start on a free port. 

  </description> 

</property>

3、core-site.xml:这里有2个参数可配置,但一般来说我们不做修改。 

fs.checkpoint.period表示多长时间记录一次hdfs的镜像。www.codesky.net 默认是1小时。fs.checkpoint.size表示一次记录多大的size,默认64M。

<property> 

  <name>fs.checkpoint.period</name> 

  <value>3600</value> 

  <description>The number of seconds between two periodic checkpoints. 

  </description> 

</property>

<property> 

  <name>fs.checkpoint.size</name> 

  <value>67108864</value> 

  <description>The size of the current edit log (in bytes) that triggers 

       a periodic checkpoint even if the fs.checkpoint.period hasn't expired. 

  </description> 

</property>

四、检查结果 

配置完成之后,我们需要检查一下是否成功。 

1、在运行secondarynamenode的机器上,运行命令jps查看是否存在secondarynamenode进程。如不存在则表示secondarynamenode的启动有异常。 

2、如果存在,在查看对应的目录下是否有备份记录。有以下目录结构表示设置成功。 

进入hdfs-site.xml文件中配置的fs.checkpoint.dir目录,运行以下命令: 

-bash-3.2$ ll namesecondary/ 

drwxr-xr-x 2 analyzer analyzer 4096 11-03 17:28 current 

drwxr-xr-x 2 analyzer analyzer 4096 09-10 01:20 image 

-rw-r--r-- 1 analyzer analyzer    0 11-03 16:22 in_use.lock 

drwxr-xr-x 2 analyzer analyzer 4096 11-03 16:28 previous.checkpoint

-bash-3.2$ ll namesecondary/current/ 

-rw-r--r-- 1 analyzer analyzer      4 11-03 17:28 edits 

-rw-r--r-- 1 analyzer analyzer 602092 11-03 17:28 fsimage 

-rw-r--r-- 1 analyzer analyzer      8 11-03 17:28 fstime 

-rw-r--r-- 1 analyzer analyzer    101 11-03 17:28 VERSION

Hadoop的namenode和secondnamenode分开部署在不同服务器的更多相关文章

  1. 一脸懵逼学习Hadoop分布式集群HA模式部署(七台机器跑集群)

    1)集群规划:主机名        IP      安装的软件                     运行的进程master    192.168.199.130   jdk.hadoop      ...

  2. Hadoop的namenode的管理机制,工作机制和datanode的工作原理

    HDFS前言: 1) 设计思想 分而治之:将大文件.大批量文件,分布式存放在大量服务器上,以便于采取分而治之的方式对海量数据进行运算分析: 2)在大数据系统中作用: 为各类分布式运算框架(如:mapr ...

  3. Apache Hadoop 2.9.2 完全分布式部署

    Apache Hadoop 2.9.2 完全分布式部署(HDFS) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.环境准备 1>.操作平台 [root@node101.y ...

  4. 3-3 Hadoop集群完全分布式配置部署

    Hadoop集群完全分布式配置部署 下面的部署步骤,除非说明是在哪个服务器上操作,否则默认为在所有服务器上都要操作.为了方便,使用root用户. 1.准备工作 1.1 centOS6服务器3台 手动指 ...

  5. Hadoop的HA(ZooKeeper)安装与部署

    非HA的安装步骤 https://www.cnblogs.com/live41/p/15467263.html 一.部署设定 1.服务器 c1   192.168.100.105    zk.name ...

  6. 编译安装zabbix 3.0及分开部署配置详解

    实验系统:CentOS 6.6_x86_64 实验前提:提前准备好编译环境,防火墙和selinux都关闭 实验说明:本实验共有4台主机,IP及角色分配如拓扑 下载地址:试验中用到mariadb软件的下 ...

  7. hadoop出现namenode running as process 18472. Stop it first.

    hadoop出现namenode running as process 18472. Stop it first.等等,类别似几个的出现. namenode running as process 32 ...

  8. hadoop启动namenode日志报这个错,首先说怎么看日志

    hadoop启动namenode日志报这个错,首先说怎么看日志, 启动namenode会有这个,ubuntu: starting namenode, logging to /home/xiaoye/h ...

  9. 安装php7.2并且整合nginx且分开部署

    1.安装php 7.2 2.php配置 3.nginx配置 4.测试 5.报错与解决 6.利用upstream实现负载均衡 1.安装php 7.2 启动容器: liwangdeMacBook-Air: ...

随机推荐

  1. 【leetcode刷题笔记】Maximal Rectangle

    Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing all ones and ...

  2. 比较分析与数组相关的sizeof和strlen

    首先,我们要清楚sizeof是C/C++中的一个操作符,其作用就是返回一个对象或者类型所占的内存字节数. 而,strlen是一个函数,函数原型为: size_t strlen(const char * ...

  3. hbase离线定时入库shell脚本-小栗子

    #!/bin/bash #######数据类型(cdr,ims,pc,.ngn_sip)###### dir=*** ############# #原始文件地址 oripath=/bigdata/da ...

  4. java深入探究05

    通讯录小程序 需求说明: 功能: 添加联系人 修改联系人 删除联系人 查询所有联系人 要求: console控制 数据保存在xml 1.创建联系人类 /** * 联系人实体对象 * @author A ...

  5. JavaWeb -- 服务器传递给Servlet的对象 -- ServletConfig, ServletContext,Request, Response

    1.  ServletConfig  有一些东西不合适在程序中写死,应该写在web.xml中,比如 文字怎么显示, 访问数据库名 和 密码, servlet要读取的配置文件 等等.. l在Servle ...

  6. django 使用内建过滤器实现文章摘要效果

    django 使用内建过滤器实现文章摘要效果 前端html代码 <div class="list-group"> {% if articles %} {% for ar ...

  7. DBGrid和DBGridEH

    二.应用实例 Enlib3.0组件包安装成功后 A.定制标题行 1.制作复杂标题行 标题行可设为2行以上高度,并可以为多列创建一个共同的父标题行.为实现这个效果,需在各个列标题属性中以“|”分隔父标题 ...

  8. algorithm 简单用法

    algorithm 简单用法 #include <iostream> #include <vector> #include <algorithm> using na ...

  9. Java企业微信开发_Exception_01_"errcode":60011,"errmsg":"no privilege to access/modify contact/party/agent "

    微信企业号增加成员时,返回错误信息: jsonObject:{"errcode":60011,"errmsg":"no privilege to ac ...

  10. Oracle学习笔记_05_分组函数

    组函数:avg  sum  max  min   count group by having group by 增强:rollup      cube     grouping      groupi ...