linux中zookeeper

安装jdk

tar -zxvf jdk-11.0.1_linux-x64_bin.tar.gz -C /usr/src

sudo vim /etc/profile
输入如下内容
export JAVA_HOME=/usr/src/jdk-11.0.1 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=.:${JAVA_HOME}/bin:$PATH shutdown -r now java -version

安装zookeeper

wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/zookeeper-3.4.10.tar.gz

tar -zxvf zookeeper-3.4.10.tar.gz -C /usr/src

配置zookeeper

zookeeper工作原理,leader选举作为主服务器使用,最少3台服务器

cd /usr/src/zookeeper-3.4.10/conf
cp zoo_sample.cfg zoo.cfg
sudo zoo.cfg 输入如下内容 # tick时间
tickTime=2000
# tick数量
initLimit=10
# 请求和响应能够传递的tick数量
syncLimit=5
# 保存snapshots的数据目录
dataDir=/root/zookeeper
# 客户端端口
clientPort=2181
# 最大客户端连接数
maxClientCnxns=60
# snapshots保存数量
autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1
# server.serverid=你的服务器ip:leader和follower通信端口:选举投票端口
server.1=yourserverip1:2888:3888
server.2=yourserverip2:2888:3888
server.3=yourserverip3:2888:3888 记录serverid到dataDir中
mkdir /root/zookeeper
cd /root/zookeeper
echo 1 > myid 禁用防火墙
sudo ufw disable
sudo ufw status 开启zookeeper
cd /usr/src/zookeeper-3.4.10/bin
./zkServer.sh start
./zkServer.sh status

zookeeper结点操作

zookeeper提供的数据保管功能,leader服务器实现更新数据

连接zookeeper
./zkCli.sh
connect yourip:2181 // 连接其他机器的zookeeper
ls / // 查看根结点
create /node1 "testnode1" // 创建结点
create /node1/node11 "testnode11"
get /node1/node11 // 获取结点数据
get /node1/node11 watch // 监听结点数据
set /node1 "data" // 修改结点值
delete /node1 // 删除节点 短暂结点和持久结点
create -e /node2 // 断开连接,自动删除
create /node2 // 持久保存 序列号结点
create -s /node3 // 结点名称后面自动添加序号

在java中使用

依赖
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.5.4-beta</version>
</dependency> 示例
package test; import java.util.List; import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.KeeperException;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooKeeper;
import org.apache.zookeeper.ZooDefs.Ids;
import org.apache.zookeeper.data.Stat; public class App
{
private static final String connectString = "yourip1:2181,yourip2:2181,yourip3:2181";
private static final Integer sessionTimeout = 3000;
private static ZooKeeper zk = null; public static void main( String[] args ) throws Exception
{
zk = new ZooKeeper(connectString, sessionTimeout, new Watcher(){ @Override
public void process(WatchedEvent event) {
System.out.println(event.getType() + "----" + event.getPath());
}
}); } public void NodeOperation() {
try {
// 创建结点
String path = zk.create("/node", "hello".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT); // 获取结点
List<String> c = zk.getChildren("/", true); // 判断结点是否存在
Stat stat = zk.exists("/node", false);
if(stat == null) {
System.out.println("结点不存在");
} // 获取结点数据
byte[] data = zk.getData("/node", false, null); // 设置结点
zk.setData("/node", "data".getBytes(), -1); // 删除结点
zk.delete("/node", -1); } catch (KeeperException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}

linux中zookeeper的更多相关文章

  1. Linux中Zookeeper部署和集群部署

    自己网上下载安装包,我下载的是tar.gz安装包直接解压,也可以下载rpm格式 1.下载zookeeper安装包,放到/usr/local/zookeeper安装包网上下载 2.解压文件tar -zx ...

  2. linux中zookeeper开机自启动和注册为服务

    1.安装jdk,zookeeper就不说啦,自己搜索下. 2.开机自启动和注册为服务. (1)开机自启动:编辑/etc/rc.d/rc.local文件,添加zkServer.sh路径. vi /etc ...

  3. Linux -- 基于zookeeper的java api(二)

    Linux -- 基于zookeeper的java api(二) 写一个关于基于集群的zookeeper的自定义实现HA 基于客户端和监控器:使用监控的方法查看每个注册过的节点的状态来做出操作. Wa ...

  4. linux -- 基于zookeeper搭建yarn的HA高可用集群

    linux -- 基于zookeeper搭建yarn的HA高可用集群 实现方式:配置yarn-site.xml配置文件 <configuration> <property> & ...

  5. linux安装zookeeper及使用

    一.安装条件 想要安装zookeeper,必须先在linux中安装好jdk.安装步骤见: https://www.cnblogs.com/expiator/p/9987351.html 二.下载并解压 ...

  6. Linux下zookeeper单机版详细安装

    Linux下zookeeper单机版详细安装 1.zookeeper简介 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop ...

  7. linux安装zookeeper,安装zkui,zookeeper可视化

    系统要求 支持的平台 ZooKeeper由多个组件组成.某些组件得到广泛支持,其他组件仅在较小的平台上受支持. 客户端是Java客户端库,应用程序使用它连接到ZooKeeper集合. Server是在 ...

  8. Linux下zookeeper集群搭建

    Linux下zookeeper集群搭建 部署前准备 下载zookeeper的安装包 http://zookeeper.apache.org/releases.html 我下载的版本是zookeeper ...

  9. Linux环境ZooKeeper安装配置及使用

    Linux环境ZooKeeper安装配置及使用 一.ZooKeeper 1.1 zookeeper作用 1.2 zookeeper角色 1.3 zookeeper功能 二.集群规划 三.安装流程 (1 ...

随机推荐

  1. opencv:图像模糊处理

    接口: blur(sourceImage,dstImage,Size(,)); // 图像模糊处理 示例代码: #include <opencv.hpp> #include <img ...

  2. laravel利用composer安装

    composer create-project laravel/laravel --prefer-dist blog prefer:提升,提拔 dist:距离 blog 创建的项目文件夹名称 lara ...

  3. ARM的37个寄存器

    31个通用寄存器,包括程序计数器(PC)在内.这些寄存器都是32位寄存器. 6个状态寄存器.这些寄存器都是32位寄存器. 通用寄存器(R0-R15)可分为三类 :不分组寄存器R0~R7: 分组寄存器R ...

  4. Node.js 问题集合

    使用node合并多个接口, 最后获取数据慢的问题                暂时没解决方法 pm2 访问 ip 记录到日志                                      ...

  5. Arcgis Android API开发之离线地图

    最近一直在倒腾Arcgis Android API等相关的东西,想把自己的做的图放到地图上去,也就是离线地图,穷人一般是没有钱的,一个月好几十的流量是开不起的,所以就左捉摸,右思考,看着API里面有离 ...

  6. Electron 打包时下载 xxx-electron-v1.6.8--x64.zip 文件出错

    Electron 打包时下载 xxx-electron-v1.6.8--x64.zip 文件出错 今天在windows上打包其它平台的Electron应用的时候,由于是第一次,所以总是下载 xxx-e ...

  7. LINUX系统yum安装SVN服务及其配置

    待: http://oplinux.com/app/svn/linux-yum-install-svn.html  //基础设置及流程 http://files.cnblogs.com/logon/s ...

  8. httpwebrequest webrequest webresponse 总结

    http://blog.csdn.net/flymorn/article/details/6769722 使用,总结,深入,全通,指正

  9. linux之文件操作

    1. 文件操作思维导图 2. linux系统目录结构及简单说明 linux目录图: root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home --- 存储普 ...

  10. Rhel7安装及网卡、yum、vmtools配置和修改主机名

    (1)安装Vmware WorkStation 11.0 和 RetHatEnterpriseLinux[RHEL]7.0 步骤就不描述了,网上都可以找到 (2)安装VMware Tools )虚拟机 ...