mac 安装zkcli_mac zookeeper安装使用

zookeeper是构建分布式系统的重要组件,今天尝试了使用homebrew在mac上安装zookeeper,本文是安装过程的完整记录.

安装zookeeper

查看可用版本

使用命令$ brew info zookeeper查看可用版本信息:

zookeeper: stable 3.4.8, HEAD

Centralized server for distributed coordination of services

https://zookeeper.apache.org/

Not installed

From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/zookeeper.rb

==> Options

--with-perl

Build Perl bindings

--with-python

Build with python support

--HEAD

Install HEAD version

==> Caveats

To have launchd start zookeeper now and restart at login:

brew services start zookeeper

Or, if you don't want/need a background service you can just run:

zkServer start

可见homebrew提供的最新稳定版是3.4.8,zookeeper官网上最新的稳定版是3.4.11.

安装应用

使用命令$ brew install zookeeper安装:

Error: The following formula:

zookeeper

cannot be installed as a binary package and must be built from source.

To continue, you must install Xcode from the App Store,

or the CLT by running:

xcode-select --install

结果报错了,提示先安装xcode-select,使用命令$ xcode-select --install安装,输出

xcode-select: note: install requested for command line developer tools

安装好以后再次执行$ brew install zookeeper:

Warning: You are using OS X 10.13.

We do not provide support for this pre-release version.

You may encounter build failures or other breakages.

Please create pull-requests instead of filing issues.

==> Downloading https://www.apache.org/dyn/closer.cgi?path=zookeeper/zookeeper-3

==> Best Mirror http://mirrors.shu.edu.cn/apache/zookeeper/zookeeper-3.4.8/zooke

curl: (22) The requested URL returned error: 404 Not Found

Trying a mirror...

==> Downloading https://archive.apache.org/dist/zookeeper/zookeeper-3.4.8/zookee

######################################################################## 100.0%

==> ./configure --prefix=/usr/local/Cellar/zookeeper/3.4.8 --without-cppunit

==> make install

==> Caveats

To have launchd start zookeeper now and restart at login:

brew services start zookeeper

Or, if you don't want/need a background service you can just run:

zkServer start

==> Summary

🍺 /usr/local/Cellar/zookeeper/3.4.8: 237 files, 17.6M, built in 52 seconds

此时使用$ ls /usr/local/etc再次查看配置文件目录:

bash_completion.d mongod.conf redis-sentinel.conf zookeeper

dump.rdb openssl redis.conf

发现多了zookeeper,执行$ cd /usr/local/etc/zookeeper进入zookeeper,执行$ ls查看:

defaults log4j.properties zoo.cfg zoo_sample.cfg

发现有zoo.cfg和zoo_sample.cfg这2个配置文件.使用$ cat zoo.cfg查看zoo.cfg的内容:

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

# do not use /tmp for storage, /tmp here is just

# example sakes.

dataDir=/usr/local/var/run/zookeeper/data

# the port at which the clients will connect

clientPort=2181

# the maximum number of client connections.

# increase this if you need to handle more clients

#maxClientCnxns=60

#

# Be sure to read the maintenance section of the

# administrator guide before turning on autopurge.

#

# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance

#

# The number of snapshots to retain in dataDir

#autopurge.snapRetainCount=3

# Purge task interval in hours

# Set to "0" to disable auto purge feature

#autopurge.purgeInterval=1

zookeeper操作

启动zookeeper

使用命令$ zkServer,结果启动失败:

ZooKeeper JMX enabled by default

Using config: /usr/local/etc/zookeeper/zoo.cfg

Usage: ./zkServer.sh {start|start-foreground|stop|restart|status|upgrade|print-cmd}

接下来使用$ zkServer start:

ZooKeeper JMX enabled by default

Using config: /usr/local/etc/zookeeper/zoo.cfg

Starting zookeeper ... STARTED

可见启动成功,并且使用了/usr/local/etc/zookeeper/下的配置文件zoo.cfg

连接zookeeper

执行命令$ zkCli,输出

Connecting to localhost:2181

Welcome to ZooKeeper!

JLine support is enabled

[zk: localhost:2181(CONNECTING) 0]

WATCHER::

WatchedEvent state:SyncConnected type:None path:null

就像在这里卡住了一样,随便输入ls,然后终端变成了

ls

[zk: localhost:2181(CONNECTED) 1] ls

[zk: localhost:2181(CONNECTED) 2] ls /

[zookeeper]

[zk: localhost:2181(CONNECTED) 3] ls /zookeeper

[quota]

[zk: localhost:2181(CONNECTED) 4]

其实这是JLine交互控制台,会开启一个和zookeeper服务器之间的session.另外,关于jline参考http://ningg.top/zookeeper-getting-started/.可以通过执行quit命令,即[zk: localhost:2181(CONNECTED) 4] quit退出交互控制台.

查看zookeeper状态

执行$ zkServer status:

ZooKeeper JMX enabled by default

Using config: /usr/local/etc/zookeeper/zoo.cfg

Mode: standalone

这里的standalone指的是单机模式

关闭zookeeper

执行$ zkServer stop:

ZooKeeper JMX enabled by default

Using config: /usr/local/etc/zookeeper/zoo.cfg

Stopping zookeeper ... STOPPED

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值