hadoop.create.0.1
#!/bin/sh
exit 0
linux单机分布式实验环境数据策略
#数据:不同源 -v ,link 各自独立的文件夹
#配置:同源,写时复制 存于docker images
#程序体,基本不改变.或者写时复制 存于docker images
#源码,部分熟悉的程序体,确定它们没有严重的相对于主机的运行时变化,适合单程序体,多实例的.
# 用 -v 所有节点,包括物理机,共享一个真实物理数据源.
#原则上能够共用的,要共用.除了节省磁盘空间外,更重要的是:它们可以共享同一份文件的内存缓存,节省内存,高速!
#data 物理机内data
ids=`seq 1 9`
for id in $ids ;do
#rm -fr /data/dk/c7$id/data/hadoop2.6.5
#!注意该文件为备份,导出文件夹,不能直接挂该文件夹.写时复制;
mkdir -p /win.d/data/dk/c7$id/data/hadoop-2.6.5/{fullhdfs,vhdfs,hahdfs}/tmp /win.d/data/dk/c7$id/data/zookeeper-3.4.12/tmp/
echo $id>/win.d/data/dk/c7$id/data/zookeeper-3.4.12/tmp/myid
done
#初始配置文件都是一样的,但是后来可能会改变.所以配置文件,直接放在克隆源中!而不是放在-v;初始安装文件也是如此,不使用win.d/opt/
#confs/vhdfs/###########################################################################################
core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/data/hadoop-2.6.5/fullhdfs/tmp</value>
</property>
hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>namenode2:50090</value>
</property>
#配置java的绝对路径;配置文件中最好不要用${},因为这种写法其实还是依赖解析环境的,解偶合失效;
slaves
datanode01
datanode02
datanode03
hdfs namenode -format
start-dfs.sh
#confs/hahdfs/#######################up is full or v hdfs###############################################
#confs/hahdfs/#######################down is ha hdfs#########################################################
#hahdfs
#hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.nameservices</name>
<value>dkc7</value>
</property>
<property>
<name>dfs.ha.namenodes.dkc7</name>
<value>namenode,namenode2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.dkc7.namenode</name>
<value>namenode:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.dkc7.namenode2</name>
<value>namenode2:8020</value>
</property>
<property>
<name>dfs.namenode.http-address.dkc7.namenode</name>
<value>namenode:50070</value>
</property>
<property>
<name>dfs.namenode.http-address.dkc7.namenode2</name>
<value>namenode2:50070</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://datanode01:8485;datanode02:8485;datanode03:8485/dkc7</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/data/hadoop2.6.5/hahdfs/jn</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.dkc7</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
<!-- 此处官方文档有变化 -->
</property>
#core-site.xml
<property>
<name>hadoop.tmp.dir</name>
<value>/data/hadoop-2.6.5/confs/hahdfs/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://dkc7</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>zk01:2181,zk02:2181,zk03:2181</value>
</property>
#zookeeper-3.4.12
ids=`seq 1 9`
for id in $ids ;do
echo $id>/win.d/data/dk/c7$id/data/zookeeper-3.4.12/tmp/myid
done
#zoo.cfg
cp $ZOOKEEPER_HOME/conf/zoo.cfg
sed -i s#dataDir=.*#dataDir=/data/zookeeper-3.4.12/tmp#g $ZOOKEEPER_HOME/conf/zoo.cfg
#dataDir=/data/zookeeper-3.4.12/tmp
# run in clone-source c70,then to image
for i in 4 5 6; do
echo "server.$i=1.1.1.7$i:2888:3888">>$ZOOKEEPER_HOME/conf/zoo.cfg
echo $i>/data/zookeeper-3.4.12/tmp/myid
done
echo "rm -fr /data;ln -sf /data/dk/\$HOSTNAME/data /data">>/dockerstartup/rc.local
#zookeeper to images
excp c70 "pushd;cd /opt/hadoop-2.6.5; rm -fr etc;ln -sf confs/hahdfs/etc etc ;popd"
###########################ha hdfs启动顺序##################
zk-->zkfc-->jn-->namenode-->standby-->start-dfs
for id in 4 5 6; do
excp c78 "zkServer.sh start"
done
$ZOOKEEPER_HOME/bin/zkCli.sh
#run in namenode,it then up zk
excp c78 "hdfs zkfc -formatZK "
#id in 1 2 3 8 9 7 do:
#zkServer.sh status
#1
excp c78 "hadoop-daemon.sh start journalnode"
#2.
excp c78 "hadoop-deamon.sh start namenode"
#第一台NN第一次:
#hdfs namenode -format
#3.
#另一台NN:
excp c79 "hdfs namenode -bootstrapStandby"
excp c78 "start-dfs.sh"
excp rm1 "start-yarn.sh"
excp rm2 "start-yarn.sh"
excp c78 "stop-dfs.sh && start-dfs.sh"
#|| hadoop-daemon.sh start zkfc
#confs/hahdfs/#######################up is ha hdfs#########################################################
###############################################down is yarn#################################################
#yarn-site.xml
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarnrmcluster</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>rm2</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>zk01:2181,zk02:2181,zk03:2181</value>
</property>
#map
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
#$HADOOP_HOME/sbin/
excp rm1 "start-yarn.sh"
excp rm2 "start-yarn.sh"
############################################up is ha yarn #################################################
# set rm1=zk01 rm2=zk02 to hosts
hadoop.create.0.1的更多相关文章
- Hadoop 2.0 NameNode HA和Federation实践【转】
Hadoop 2.0 NameNode HA和Federation实践 Posted on 2012/12/10 一.背景 天云趋势在2012年下半年开始为某大型国有银行的历史交易数据备份及查询提供基 ...
- Hadoop 2.0 中的资源管理框架 - YARN(Yet Another Resource Negotiator)
1. Hadoop 2.0 中的资源管理 http://dongxicheng.org/mapreduce-nextgen/hadoop-1-and-2-resource-manage/ Hadoop ...
- Hadoop 1.0 和 2.0 中的数据处理框架 - MapReduce
1. MapReduce - 映射.化简编程模型 1.1 MapReduce 的概念 1.1.1 map 和 reduce 1.1.2 shufftle 和 排序 MapReduce 保证每个 red ...
- Hadoop 2.0中单点故障解决方案总结
Hadoop 1.0内核主要由两个分支组成:MapReduce和HDFS,众所周知,这两个系统的设计缺陷是单点故障,即MR的JobTracker和HDFS的NameNode两个核心服务均存在单点问题, ...
- Sqoop安装与使用(sqoop-1.4.5 on hadoop 1.0.4)
1.什么是Sqoop Sqoop即 SQL to Hadoop ,是一款方便的在传统型数据库与Hadoop之间进行数据迁移的工具,充分利用MapReduce并行特点以批处理的方式加快数据传输,发展至今 ...
- hadoop 2.0 详细配置教程(转载)
转载: http://www.cnblogs.com/scotoma/archive/2012/09/18/2689902.html 作者:杨鑫奇 PS:文章有部分参考资料来自网上,并经过实践后写出, ...
- ubuntu 14.04 hadoop eclipse 0配置基本环境
动人的hadoop第二天.构造hadoop该环境还花了两天时间,在这里写自己配置的过程,我希望能帮助! 我将文中用到的全部资源都分享到了 这里,点开就能下载,不须要一个个的找啦! 当中有<Ha ...
- 应用AI芯片加速 Hadoop 3.0 纠删码的计算性能
本文由云+社区发表 做为大数据生态系统中最重要的底层存储文件系统HDFS,为了保证系统的可靠性,HDFS通过多副本的冗余来防止数据的丢失.通常,HDFS中每一份数据都设置两个副本,这也使得存储利用率仅 ...
- Centos 7环境下安装配置Hadoop 3.0 Beta1简记
前言 由于以前已经写过一篇Centos 7环境下安装配置2.8的随笔,因此这篇写得精简些,只挑选一些重要环节记录一下. 安装环境为:两台主机均为Centos 7.*操作系统,两台机器配置分别为: 主机 ...
随机推荐
- 实验十一 团队项目设计完善&编码测试
任务一: 根据OOD详细设计工作要点,修改完善团队项目系统设计说明书和详细设计说明,将完善后内容以<XX团队项目软件设计方案>为名发布在团队博客中,博文中要突出对完善内容的陈述说明,修改部 ...
- python正则表达式 - re
1,匹配符号 任意字符 . : 任意字符,除了\n,flags设置为DOTALL(S)可以让.匹配\n []字符集合,字符组:规范/元字符不同于正则式主体 [0-9] : 数字 [A-Z] : 大写字 ...
- mysql修改当前用户的密码
ALTER USER USER() IDENTIFIED BY '123456';https://majing.io/posts/10000005531181
- A*算法介绍
你是否在做一款游戏的时候想创造一些怪兽或者游戏主角,让它们移动到特定的位置,避开墙壁和障碍物呢? 如果是的话,请看这篇教程,我们会展示如何使用A星寻路算法来实现它! 在网上已经有很多篇关于A星寻路算法 ...
- mac常用操作
Command+Shift+. 可以显示隐藏文件.文件夹 touch a.txt 新建txt文件
- web service 上传file说明
之前做过一个接口,PI发布WEB SERVICE给对方调,传附件到SAP... 接口中包含文件名称,文件类型,文件流... 1.SOAPUI新建项目: 文件内容的地方会自动带上一个ID,这个ID对应文 ...
- 洛谷P3627[APOI2009] (讨厌的)抢掠计划
题目描述 Siruseri 城中的道路都是单向的.不同的道路由路口连接.按照法律的规定, 在每个路口都设立了一个 Siruseri 银行的 ATM 取款机.令人奇怪的是,Siruseri 的酒吧也都设 ...
- Jedis路由key的算法剥离
在Redis集群中,会有很多个分片,如果此时利用Jedis来操作此Redis集群,那么他会把数据路由到不到的分片上.而且如果动态的往集群中增加分片,也不会影响Jedis的功能.究竟是怎么做到的呢? 由 ...
- 大量数据的excel导出
对于大型excel的创建且不会内存溢出的,就只有SXSSFWorkbook了.它的原理很简单,用硬盘空间换内存(就像hash map用空间换时间一样). private void writeToAla ...
- AngelToken钱包——值得投资与存币的钱包
Angeltoken有多好? Angeltoken到底值不值得我们投资? 简而言之 Angeltoken结合了:钱包+机器人,钱包+币币交易,钱包+宠物,钱包+结算代币等等. 它颠覆传统的运营和赚钱模 ...