zoukankan      html  css  js  c++  java
  • zookeeper centos分布式安装使用

     1. 请先安装jdk和下载zookeeper。ssh免密登录请自行配置。大家可以到官网下载或我的网盘。

    网盘地址:

    共3台机器c0,c1,c2 

    192.168.132.148 c0
    192.168.132.144 c1
    192.168.132.149 c2

    2. 上传到centos服务器上,我的路径是~/soft/download/文件夹下面。zookeeper-3.4.14,

    并解压

    tar -zxvf zookeeper-3.4.14.tar.gz

    复制到指定目录: ~/soft/java/,我习惯安装程序放这个目录,大家可以用其它名称。

    mv zookeeper-3.4.14 ~/soft/java/

    3. 修改配置文件。增加ZK_HOME, 每台机器都需要修改。

    vi /etc/profile
    export ZK_HOME=/home/xiaozw/soft/java/zookeeper-3.4.14
    export PATH=$PATH:${JAVA_PATH}:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$ZK_HOME/bin

    刷新

    source /etc/profile

    修改zookeeper配置文件zoo.cfg,进入conf/目录下面。复制配置文件出来,并修改。

    cp zoo_sample.cfg zoo.cfg

    tickTime 心跳周期。

    dataDir 数据目录。根据自己实际情况修改。我的目录:/home/xiaozw/soft/tmp/zookeeper

    clientPort server供客户端连接端口。

     在dataDir目录下新建myid文件,并写入0. 如果目录不存在,请先创建。

    c0:

    echo 0 > myid

    c1:

    echo 0 > myid 

    c2:

    echo 0 > myid 

    server.0=c0:2888:3888
    server.1=c1:2888:3888
    server.2=c2:2888:3888

     4. 启动zookeeper.

    --启动zk需要每台机器都启动。

    zkServer.sh start

    --查看zk状态。

    zkServer.sh status

    先启动然后查看状态。

    客户端程序使用。

    zkCli.sh c1:2181

    创建节点。

    create /root helloworld

    private static final String conString ="192.168.1.102:2181,192.168.1.103:2181,192.168.1.105:2181";
    
        /**
         * 获取数据
         * @throws Exception
         */
        @Test
        public void test1() throws Exception{
            ZooKeeper zk=new ZooKeeper(conString,2000,null);
            Stat stat=new Stat();
            byte[] bytes= zk.getData("/root/s1",null,stat);
            System.out.println("返回:"+new String(bytes));
        }
    
        /**
         * 创建路径
         * @throws Exception
         */
        @Test
        public void createPath() throws Exception{
            ZooKeeper zk=new ZooKeeper(conString,2000,null);
            String path="/root/s7";
            Stat stat=new Stat();
            String re= zk.create(path,"s7_data".getBytes(),ZooDefs.Ids.OPEN_ACL_UNSAFE,CreateMode.EPHEMERAL);
            System.out.println("返回:"+re);
        }
    
        /**
         * 删除路径
         * @throws Exception
         */
        @Test
        public void deletePath() throws Exception{
            ZooKeeper zk=new ZooKeeper(conString,2000,null);
            String path="/root/s4";
            zk.delete(path,0);
            System.out.println("返回:");
        }
    
        /**
         * 设置数据
         * @throws Exception
         */
        @Test
        public void setData() throws Exception{
            ZooKeeper zk=new ZooKeeper(conString,2000,null);
            String path="/root/s1";
            Stat stat= zk.setData(path,"zzzzz".getBytes(),0);
            System.out.println("返回:"+stat);
        }
    
        /**
         * 获取children
         * @throws Exception
         */
        @Test
        public void getChildren() throws Exception{
            ZooKeeper zk=new ZooKeeper(conString,2000,null);
            String path="/root/s1";
           List<String> list=zk.getChildren("/root",null);
           list.forEach(a->{
               System.out.println("返回:"+a);
           });
        }

    网盘测试项目代码和配置下载:

    链接:https://pan.baidu.com/s/11Bu9KoQ_1W_hacSjS2kkyw
    提取码:3sa3

  • 相关阅读:
    97. Interleaving String
    96. Unique Binary Search Trees
    95. Unique Binary Search Trees II
    94. Binary Tree Inorder Traversal
    odoo many2many字段 指定打开的form视图
    docker sentry 配置文件位置
    postgres 计算时差
    postgres 字符操作补位,字符切割
    postgres判断字符串是否为时间,数字
    odoo fields_view_get
  • 原文地址:https://www.cnblogs.com/xiaozw/p/11157388.html
Copyright © 2011-2022 走看看