2-Zookeeper、HA安装
1、Zookeeper安装
1、解压 zookeeper 到安装目录中/opt/app/zookeeper 中。
2、在安装目录下创建data和logs两个目录用于存储数据和日志:
cd /opt/app/zookeeper-3.4.10
mkdir dir_data
mkdir dir_logs
3、在conf目录下新建zoo.cfg文件,写入以下内容保存:
tickTime=2000
dataDir=/opt/app/zookeeper-3.4.10/dir_data
dataLogDir=/opt/app/zookeeper-3.4.10/dir_logs
clientPort=2181
initLimit=5
syncLimit=2
server.1=s10:2888:3888 //s10,s11,s12是自己的ip
server.2=s11:2888:3888
server.3=s11:2888:3888
注:分布式协调服务:s10,s11,s12
4、在新建的dir_data下,新建一个myid文件,分配票数。
s10 : echo '1' > /opt/app/zookeeper-3.4.10/dir_data/myid
s11: echo '2' > /opt/app/zookeeper-3.4.10/dir_data/myid
s12: echo '3' > /opt/app/zookeeper-3.4.10/dir_data/myid
5、启动命令(bin目录下)
./zkServer.sh start
./zkServer.sh stop
./zkServer.sh restart
./zkServer.sh status
注:当半数以上启动时,会每个节点查看状态都能得到其对应的角色。(s10,s11,s12)
2、HA安装
1、安装HA之前,必须先安装zookeeper
2、删除原来文件(要删除以前hadoop的残留文件)
mkdir -p /opt/app/hadoop-2.7.2/journalnode //创建共享存储系统的journalnode节点编辑日志存储路劲
mkdir -p /opt/app/hadoop-2.7.2/namenode //存储namenode的临时文件(不然会在tmp下面)
mkdir -p /opt/app/hadoop-2.7.2/datanode //存储datenode的临时文件(不然会在tmp下面)
rm -rf /opt/app/hadoop-2.7.2/journalnode/*
rm -rf /opt/app/hadoop-2.7.2/namenode/*
rm -rf /opt/app/hadoop-2.7.2/datanode/*
rm -rf /tmp/* //所有的都执行
rm -rf /opt/app/hadoop-2.7.2/data/tmp/*
rm -rf /opt/app/hadoop-2.7.2/logs/*
3、更改配置文件core-site.xml
<configuration>
<!--配置名称节点集群-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://MyNNS</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/app/hadoop-2.7.2/data/tmp</value>
</property>
<!--配置zookeeper-->
<property>
<name>ha.zookeeper.quorum</name>
<value>192.168.40.10:2181,192.168.40.11:2181,192.168.40.12:2181</value>
</property>
</configuration>
4、hdfs-site
<configuration>
<!-- 配置集群中的集群名称 -->
<property>
<name>dfs.nameservices</name>
<value>MyNNS</value>
</property>
<!-- 配置名称集群中的名称节点-->
<property>
<name>dfs.ha.namenodes.MyNNS</name>
<value>nn1,nn2</value>
</property>
<!--配置nn1的主机位置与端口号 -->
<property>
<name>dfs.namenode.rpc-address.MyNNS.nn1</name>
<value>192.168.40.10:8020</value>
</property>
<!-- 配置nn2的主机名称端口号-->
<property>
<name>dfs.namenode.rpc-address.MyNNS.nn2</name>
<value>192.168.40.11:8020</value>
</property>
<!--配置nn1与nn2 web访问端口 -->
<property>
<name>dfs.namenode.http-address.MyNNS.nn1</name>
<value>192.168.40.10:50070</value>
</property>
<property>
<name>dfs.namenode.http-address.MyNNS.nn2</name>
<value>192.168.40.11:50070</value>
</property>
<!--配置journalnode日志服务器主机位置 -->
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://192.168.40.10:8485;192.168.40.11:8485;192.168.40.12:8485/MyNNS</value>
</property>
<!--配置journalnode 日志存储的地址 -->
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/opt/app/hadoop-2.7.2/journalnode</value>
</property>
<!-- 配置HA的代理服务-->
<property>
<name>dfs.client.failover.proxy.provider.MyNNS</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<!--配置SSH登录 -->
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/hadoop/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
<!-- 开启自动故障转移功能-->
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<!-- namenode临时文件存储目录-->
<property>
<name>dfs.name.dir</name>
<value>/opt/app/hadoop-2.7.2/namenode/</value>
</property>
<!-- datanode临时文件存储目录-->
<property>
<name>dfs.data.dir</name>
<value>/opt/app/hadoop-2.7.2/datanode/</value>
</property>
</configuration>
5、格式化文件系统
scp -r /opt/app/hadoop-2.7.2 s13:/opt/app/ //分发配置文件
zkServer.sh start //三台zk都必须先启动
hadoop-daemon.sh start journalnode //三台journalnode都必须先启动
hadoop namenode -format //格式化hdfs
hdfs zkfc -formatZK //初始化ZK
hadoop-daemon.sh start namenode //启动namenode(active节点上)
hdfs namenode -bootstrapStandby //同步到Standby节点上
hadoop-daemon.sh start namenode //Standby节点上开启namenode
start-all.sh //启动全部
hdfs haadmin -getServiceState nn1 //查看nn1状态
hdfs haadmin -getServiceState nn2 //查看nn1状态
6、第二次开启就不需要这么费神了
zkServer.sh start //三台zk都必须先启动
start-all.sh //启动全部
2-Zookeeper、HA安装的更多相关文章
- 安装hadoop+zookeeper ha
安装hadoop+zookeeper ha 前期工作配置好网络和主机名和关闭防火墙 chkconfig iptables off //关闭防火墙 1.安装好java并配置好相关变量 (/etc/pro ...
- spark HA 安装配置和使用(spark1.2-cdh5.3)
安装环境如下: 操作系统:CentOs 6.6 Hadoop 版本:CDH-5.3.0 Spark 版本:1.2 集群5个节点 node01~05 node01~03 为worker. node04. ...
- zookeeper的安装(图文详解。。。来点击哦!)
zookeeper的安装(图文详解...来点击哦!) 一.服务器的配置 三台服务器: 192.168.83.133 sunshine 192.168.83.134 sunshineMin 19 ...
- (原) 1.1 Zookeeper单机安装
本文为原创文章,转载请注明出处,谢谢 zookeeper 单机安装配置 1.安装前准备 linux系统(此文环境为Centos6.5) Zookeeper安装包,官网https://zookeeper ...
- ZooKeeper的安装、配置、启动和使用(一)——单机模式
ZooKeeper的安装.配置.启动和使用(一)——单机模式 ZooKeeper的安装非常简单,它的工作模式分为单机模式.集群模式和伪集群模式,本博客旨在总结ZooKeeper单机模式下如何安装.配置 ...
- ZooKeeper 的安装和配置---单机和集群
如题本文介绍的是ZooKeeper 的安装和配置过程,此过程非常简单,关键是如何应用(将放在下节及相关节中介绍). 单机安装.配置: 安装非常简单,只要获取到 Zookeeper 的压缩包并解压到某个 ...
- JDK+Tomcat+Zookeeper+DubboAdmin安装教程
JDK+Tomcat+Zookeeper+DubboAdmin安装教程 1. 安装内容: JDK 1.8.131 Tomcat 7.0.77 Zookeeper 3.4.9 Dubbo admin 2 ...
- Zookeeper的安装的配置
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt192 安装和配置详解 本文介绍的 Zookeeper 是以 3.2.2 这个 ...
- Zookeeper的安装部署
1.Zookeeper的安装部署 7.1 Zookeeper工作机制 7.1.1.Zookeeper集群角色 Zookeeper集群的角色: Leader 和 follower (Observer ...
随机推荐
- Github使用说明 --整理者米米
打开百度搜索Git官网下载对应的windows版本 傻瓜式默认安装,点击完成 PS:安装的过程比较慢 安装完成后打开命令行窗口(cmd) 查看版本号------git --version 安装成功 ...
- go bytes缓冲区使用介绍 -转自https://www.cnblogs.com/--xiaoyao--/p/5122138.html
缓冲区原理简介: go字节缓冲区底层以字节切片做存储,切片存在长度len与容量cap, 缓冲区写从长度len的位置开始写,当len>cap时,会自动扩容.缓冲区读会从内置标记off位置开始读(o ...
- Set up an SSH key with Sourcetree on macOS
1. 打开 sourcetree,进入设置-账户: 2. 选择添加账户,托管主机选择 Bitbucket(或Github),再连接账号,登录已有的 Bitbucket 账号(或 Github 账号), ...
- sql server 清除数据库中所有表的数据
CREATE PROCEDURE sp_DeleteAllData AS EXEC sp_MSForEachTable 'ALTER TABLE ? NOCHECK CONSTRAINT ALL'- ...
- Excel导出文件流下载
Controller.cs @CrossOrigin(allowCredentials="true", allowedHeaders="*", methods= ...
- JPanel添加键盘监听事件
因为在自己的游戏需求中谢了要用键盘控制飞机的移动,所以用到键盘监听事件,但是使用了JPanel之后添加了键盘监听事件,按相应的方向键飞机并没有反应.但是如果是为JFrame的内容面板加则会有反应. 为 ...
- this、apply/call、bind、闭包、函数、变量复制
一.实际场景中抽象出的一个问题 下面this各指向什么? var a = { b: function() { console.log(this); }, f: function() { var c = ...
- bzoj4980: 第一题
Description 神犇xzyo听说sl很弱,于是出了一题来虐一虐sl.一个长度为2n(可能有前缀0)的非负整数x是good的,当且仅当 存在两个长度为n(可能有前缀0)的非负整数a.b满足a+b ...
- PAT 乙级 1026 程序运行时间(15) C++版
1026. 程序运行时间(15) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 要获得一个C语言程序的运行时间, ...
- SwipeRefreshLayout 和RecyclerView 使用
使用是布局 <android.support.v4.widget.SwipeRefreshLayout android:id="@id/id_swiperefreshlayout&qu ...