单独配置secondarynamenode
一、配置说明
这是在我之前yarn框架上通过加入节点,改动相关的配置文件,使得secondarynamenode独立出来的,所以这里前期的一系列琐碎配置请參考我之前的博客:
http://blog.csdn.net/u014078192/article/details/27992567
我会在这基础上讲述怎样将secondarynamenode抽调出来。
二、配置
1)先添加一台虚拟机,配置免password。关防火墙,主机名(secondarynamenode)
确保三台机器都能ping通。
2)配置文件:
a) Master上的配置:
i. Core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/tmp</value>
</property>
</configuration>
Ii. Hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<!-- 值须要与实际的DataNode节点数要一致本文为1 -->
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<!-- 注意创建相关的文件夹结构 -->
<value>file:/home/hadoop/hadoop/dfs/namenode</value>
<final>true</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<!-- 注意创建相关的文件夹结构 -->
<value>file:/home/hadoop/hadoop/dfs/datanode</value>
</property>
<property>
<name>dfs.secondary.http.address</name>
<value>secondarynamenode:50090</value>
</property>
</configuration>
Iii、mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<final>true</final>
</property>
<property>
<name>mapred.system.dir</name>
<value>/home/hadoop/hadoop/tmp/mapred/system/</value>
</property>
</configuration>
B) secondartnamenode的配置
I、core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/tmp</value>
</property>
<property>
<name>fs.checkpoint.period</name>
<value>3600</value>
</property>
<property>
<name>fs.checkpoint.size</name>
<value>67108864</value>
</property>
</configuration>
Iii、hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<!-- 值须要与实际的DataNode节点数要一致本文为1 -->
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<!-- 注意创建相关的文件夹结构 -->
<value>file:/home/hadoop/hadoop/dfs/namenode</value>
<final>true</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<!-- 注意创建相关的文件夹结构 -->
<value>file:/home/hadoop/hadoop/dfs/datanode</value>
</property>
<property>
<name>dfs.http.address</name>
<value>master:50070</value>
</property>
</configuration>
Iii、mapred-site.xml配置能够沿用master中的mapred-site.xml
C)slave1上的配置(datanode)
I)core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop/tmp</value>
</property>
</configuration>
Ii)hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<!-- 值须要与实际的DataNode节点数要一致本文为1 -->
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<!-- 注意创建相关的文件夹结构 -->
<value>file:/home/hadoop/hadoop/dfs/namenode</value>
<final>true</final>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<!-- 注意创建相关的文件夹结构 -->
<value>file:/home/hadoop/hadoop/dfs/datanode</value>
</property>
</configuration>
Iii、mapred-site.xml配置能够沿用master中的mapred-site.xml
3)配置etc/profile,以下的代码,三台虚拟机是通用的。
#set java enviroment
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
# Hadoop
export HADOOP_HOME="/home/hadoop/hadoop"
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_COMMON_HOME=${HADOOP_HOME}
export HADOOP_HDFS_HOME=${HADOOP_HOME}
export HADOOP_MAPRED_HOME=${HADOOP_HOME}
export HADOOP_YARN_HOME=${HADOOP_HOME}
三、执行
1)格式化namenode:bin/hadoop namenode -format
2)执行:sbin/start-all.sh
master上的结果:
secondarynamenode上的结果:
slave1上的结果:
3)总结:
进程是可以启起来,但是出现一个错误:我在度娘和Google上都搜了,但是没有找到好的解决方法。我会将它发到论坛。尽快的去解决问题。
单独配置secondarynamenode的更多相关文章
- php-fpm 重启 nginx单独配置 重启
nginx单独配置 重启 [root@ssy106c14c190c69 Api]# cd /usr/local/nginx/sbin/[root@ssy106c14c190c69 sbin]# lsn ...
- 配置SecondaryNameNode
一.SecondaryNameNode概念: 光从字面上来理解,很容易让一些初学者先入为主:SecondaryNameNode(snn)就是NameNode(nn)的热备进程.其实不是.ssn是HDF ...
- 每个项目单独配置 git 用户
git多账号登陆问题 设置git全局设置: git config --global user.name "your_name" git config --global user. ...
- 配置secondarynamenode主机名masters
1.配置hadoop的secondarynamenode,配置内容如下 node2 本文转自 素颜猪 51CTO博客,原文链接:http://blog.51cto.com/suyanzhu/19592 ...
- .NET应用架构设计—面向查询服务的参数化查询设计(分解业务点,单独配置各自的数据查询契约)
阅读目录: 1.背景介绍 2.对业务功能点进行逻辑划分(如:A.B.C分别三个业务点) 2.1.配置映射关系,对业务点配置查询契约(构造VS插件方便生成查询契约) 2.2.将配置好的映射策略文件放在调 ...
- oracle 客户端单独配置
本文目的是在CentOS 5.3上安装Oracle 11.2 instant client来访问远端的Oracle 10.2数据库,笔者测试通过,应该也适用于Redhat Linux 5.x ...
- linux 搭建SVN服务器,为多个项目分别建立版本库并单独配置权限
1.安装svn服务 # yum install subversion 2.新建一个目录用于存储SVN所有文件 # mkdir /home/svn 3.在上面创建的文件夹中为项目 p ...
- Nginx虚拟主机 子文件单独配置
上一篇所有的server 全都配置在nginx.conf配置文件里,其实每个server 都可以单独做一个子文件 删除nginx.conf配置文件中的server及其余内容,加上如下图 创建保存每个虚 ...
- tp3.2 模块单独配置数据库
一 $User = M('test','tp_','mysql://root:123456@localhost/new_lezhu#utf8'); 1.test -->表名 2.tp ...
随机推荐
- CVE-2013-3346Adobe Reader和Acrobat 内存损坏漏洞分析
[CNNVD]Adobe Reader和Acrobat 内存损坏漏洞(CNNVD-201308-479) Adobe Reader和Acrobat都是美国奥多比(Adobe)公司的产品.Adobe R ...
- 安装VM虚拟机提示 尝试创建目录 C:\Public\documents\SharedVirtual Machines 时发生错误解决方法
把Windows Defender安全中心的“受控制文件夹的访问”给关闭了,然后就可以顺利安装上了. 作者:耑新新,发布于 博客园 转载请注明出处,欢迎邮件交流:zhuanxinxin@foxmai ...
- Retrofit + RxJava + OkHttp 让网络请求变的简单-基础篇
https://www.jianshu.com/p/5bc866b9cbb9 最近因为手头上的工作做完了,比较闲,想着做一些优化.看到以前用的那一套网络框架添加一个请求比较麻烦,并且比较难用,所以想改 ...
- bzoj 3144
3144 思路: xxy: 代码: #include <cstdio> #include <cstring> #include <iostream> #includ ...
- JS 如何准确获取当前页面URL网址信息
在WEB开发中,时常会用到javascript来获取当前页面的url网址信息,在这里是一些获取url信息的小总结. 下面我们举例一个URL,然后获得它的各个组成部分:http://i.cnblogs. ...
- 【Java】 foreach对数组赋值问题
今天写代码时发现了如下问题: public class Test { public static void main(String[] args) { int[] arr= new int[5]; f ...
- dubbo-demo的运行
在学习dubbo时,最主要的是将dubbo运行起来. 现在先搭建起来简单的demo. 一:安装zookeeper(在wondows下安装,且是单机模式) 1.下载zookeeper 2.下载的版本 3 ...
- hdoj2955 Robberies(01背包)
题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=2955 题意 有n家银行,每家银行有两个属性:钱数m,概率p,p表示抢这家银行被逮着的概率.有一个人想抢 ...
- 层级目录结构的Makefile递归编译方法
层级目录结构的Makefile编写方法. 层级目录结构的Makefile编写方法. 0.前言 1.如何编译整个工程 2.过滤每层不需要编译的目录 3将所有输出文件定向输出. 0.前言 假如现在有这样一 ...
- HTML基础-DAY1
HTML基础 Web的本质就是利用浏览器访问socket服务端,socket服务端收到请求回复数据提供给浏览器进行渲染显示. import socket def main(): sock = sock ...