如何在Ubuntu 20.04上安装Apache ZooKeeper

摘要:
在本文中,我们将向您展示如何在Ubuntu 20.04服务器上安装Apache ZooKeeper。前提条件:运行Ubuntu 20.04并配置根密码的服务器。安装Java Apache ZooKeeper是用Java编写的,因此您需要在系统中安装Java。现在,您可以使用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上安装Apache ZooKeeper第1张

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

免责声明:文章转载自《如何在Ubuntu 20.04上安装Apache ZooKeeper》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Oracle ERP系统月结与年结流程探讨HTTP协议从入门到大牛,初识HTTP协议(学习笔记)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

linux下常用文件传输命令 (转)

因为工作原因,需要经常在不同的服务器见进行文件传输,特别是大文件的传输,因此对linux下不同服务器间数据传输命令和工具进行了研究和总结。主要是rcp,scp,rsync,ftp,sftp,lftp,wget,curl。 rcp rcp不是一种安全的的传输文件的方式,rcp通过rsh(rsh见下面)来执行远程命令,要使用rcp必须经过一些配置,现在rcp...

【vim使用】利用可视块模式给多行代码添加注释

在开发中,可能会遇到一次性给多行代码增加注释的情况。 在Python中,要给代码添加注释,可以在代码前增加一个"#"。 操作步骤如下: ①、在命令模式下,移动到要添加注释代码的第一行,按下"^"将光标移动到行首。 ②、按下"Ctrl + v",命令模式 --> 可视块模式。 ③、使用"j"向下连续选中要添加的代码行。 ④、输入"I",可视块模式 -...

Eclipse利用Maven快速上手搭建MyBatis

一、what is maven? Maven项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。 Maven 除了以程序构建能力为特色之外,还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目。由于 Maven 的面向项目的方法,许多...

Confluence安装部署

前言:Confluence是一个专业的企业知识管理与协同软件,可以用于构建企业wiki。通过它可以实现团队成员之间的协作和知识共享。现在大多数公司都会部署一套Confluence,用作内部WiKi。 首先前提安装好JDK,最好是Oracle的JDK。安装过程此处略过 一、下载安装 Confluence有很多版本,我们可以直接通过如下连接进行查看 https...

mstsc命令详解

1: 在xp sp2中用mstsc /console命令可以登录到远程桌面的控制台(和在电脑前以同一用户登录),xp升级到sp3后,不能这样用了。sp3中命令应该换成mstsc /admin。 2: xp sp3中mstsc的参数如下: 3: MSTSC [] [/v:] [/admin] [/f[ullscreen]] [/w:...

HBase Client JAVA API

旧 的 HBase 接口逻辑与传统 JDBC 方式很不相同,新的接口与传统 JDBC 的逻辑更加相像,具有更加清晰的 Connection 管理方式。 同时,在旧的接口中,客户端何时将 Put 写到服务端也需要设置,一个 Put 马上写到服务端,还是攒到一批写到服务端,新用户往往对此不太清楚。 在新的接口中,引入了 BufferedMutator,可以提...