zoukankan      html  css  js  c++  java
  • 如何在Ubuntu 20.04上安装Apache ZooKeeper

    ZooKeeper是Apache软件基金会的一个软件项目,它提供了一个用于构建分布式应用的高性能共享数据服务。它被一个集群用来维护共享数据,并采用强大的同步技术。它提供了一个简单的接口,用于管理配置信息、命名、分布式同步和提供组服务。
    在本文中,我们将向您展示如何在Ubuntu 20.04服务器上安装Apache ZooKeeper。
    先决条件
    一台运行Ubuntu 20.04的服务器,且配置了一个root密码。
    安装Java
    Apache ZooKeeper用Java编写,因此您需要在系统中安装Java。您可以使用以下命令进行安装:
    apt-get install default-jdk -y
    安装Java之后,请使用以下命令验证Java的安装版本:
    java --version
    您应该获得以下输出:

    openjdk 11.0.8 2020-07-14
    OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
    OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)

    安装Zookeeper
    在安装Apache zookeeper之前,您需要为zookeeper创建一个新用户。您可以使用以下命令创建它:
    useradd zookeeper -m
    接下来,使用以下命令为此用户设置密码并将其添加到sudo组:
    usermod --shell /bin/bash zookeeper
    passwd zookeeper
    usermod -aG sudo zookeeper
    接下来,为zookeeper创建一个数据目录并更改该目录的所有权:
    mkdir /zookeeper
    chown -R zookeeper:zookeeper /zookeeper
    接下来,您将需要将Zookeeper的最新版本下载到/ opt目录。您可以使用以下命令下载它:
    cd /opt
    wget https://mirrors.estointernet.in/apache/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz
    下载完成后,使用以下命令解压缩下载的文件:
    tar -xvzf apache-zookeeper-3.6.2-bin.tar.gz
    接下来,使用以下命令将提取的目录重命名为zookeeper:
    mv apache-zookeeper-3.6.2-bin zookeeper
    接下来,使用以下命令更改zookeeper目录的所有权:
    chown -R zookeeper:zookeeper /opt/zookeeper
    在独立模式下配置ZooKeeper
    接下来,您将需要创建ZooKeeper配置文件以独立模式设置ZooKeeper。您可以使用以下命令创建它:
    nano /opt/zookeeper/conf/zoo.cfg
    添加以下行:
    tickTime=2500
    dataDir=/zookeeper
    clientPort=2181
    maxClientCnxns=80
    完成后,保存并关闭文件。然后,使用以下命令启动ZooKeeper服务:
    cd /opt/zookeeper
    bin/zkServer.sh start
    您应该获得以下输出:

    ZooKeeper JMX enabled by default
    Using config: /opt/zookeeper/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED

    默认情况下,ZooKeeper监听端口2181。您可以使用以下命令检查它:
    ss -ntpl | grep 2181
    您应该获得以下输出:
    LISTEN 0 50 *:2181 *:* users:(("java",pid=12749,fd=53))
    现在,您可以使用以下命令连接到ZooKeeper本地服务器:
    bin/zkCli.sh -server 127.0.0.1:2181
    连接后,您将获得以下输出:

    WATCHER::
    
    WatchedEvent state:SyncConnected type:None path:null
    [zk: 127.0.0.1:2181(CONNECTED) 0] 

    现在,使用以下命令退出会话:
    quit
    接下来,使用以下命令停止ZooKeeper服务:
    bin/zkServer.sh stop
    您应该看到以下输出:

    ZooKeeper JMX enabled by default
    Using config: /opt/zookeeper/bin/../conf/zoo.cfg
    Stopping zookeeper ... STOPPED

    为ZooKeeper创建系统服务文件
    接下来,您将需要创建一个systemd服务文件来管理ZooKeeper服务。您可以使用以下命令创建它:
    nano /etc/systemd/system/zookeeper.service
    添加以下行:

    [Unit]
    Description=Zookeeper Daemon
    Documentation=http://zookeeper.apache.org
    Requires=network.target
    After=network.target
    
    [Service] 
    Type=forking
    WorkingDirectory=/opt/zookeeper
    User=zookeeper
    Group=zookeeper
    ExecStart=/opt/zookeeper/bin/zkServer.sh start /opt/zookeeper/conf/zoo.cfg
    ExecStop=/opt/zookeeper/bin/zkServer.sh stop /opt/zookeeper/conf/zoo.cfg
    ExecReload=/opt/zookeeper/bin/zkServer.sh restart /opt/zookeeper/conf/zoo.cfg
    TimeoutSec=30
    Restart=on-failure
    
    [Install]
    WantedBy=default.target

    保存并关闭文件,然后重新加载systemd守护程序以应用配置更改:
    systemctl daemon-reload
    接下来,使用以下命令更改ZooKeeper和数据目录的所有权:
    chown -R zookeeper:zookeeper /opt/zookeeper
    chown -R zookeeper:zookeeper /zookeeper
    接下来,使用以下命令启动ZooKeeper服务,并使其在系统重新启动时启动:
    systemctl start zookeeper
    systemctl enable zookeeper
    现在,您可以使用以下命令检查ZooKeeper服务的状态:
    systemctl status zookeeper
    您应该获得以下输出:

    至此,您已经在Ubuntu 20.04服务器上成功安装并配置了ZooKeeper。您现在可以使用ZooKeeper轻松构建和部署分布式应用程序。A5互联https://www.a5idc.net/

  • 相关阅读:
    神秘现象?多种情况比较
    [备忘]C++BUILDER的文件操作
    缘起
    [备忘]一个二维数组的冒泡排序
    无可救药地买入NDSL
    递归的实质
    [网游计划第九、十天]能力有限,做些小品
    大学有救
    struts2+convertion实现struts.xml的零配置
    BSD下的超级终端
  • 原文地址:https://www.cnblogs.com/a5idc/p/13772654.html
Copyright © 2011-2022 走看看