作者:涿州雨嫣舞蹈培训中心_144 | 来源:互联网 | 2023-09-17 17:10
安装配置ZookeeperApacheZooKeeper从releases下载二进制版本wgethttps:archive.apache.orgdistzookeeperzooke
安装配置Zookeeper
Apache ZooKeeper
从releases下载二进制版本
wget https://archive.apache.org/dist/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz
Requirements
- Java 1.8
1. 添加系统账号
groupadd zookeeper
useradd -M -s /bin/bash -g zookeeper -d /usr/local/zookeeper zookeeper
2. 解包安装
tar -xzvf apache-zookeeper-3.5.9-bin.tar.gz --directory=/usr/local
cd /usr/local
ln -s apache-zookeeper-3.5.9 zookeeper
chown -R zookeeper:zookeeper zookeeper apache-zookeeper-3.5.9
mkdir /data/zookeeper
chown zookeeper:zookeeper /data/zookeeper
echo 1 > /data/zookeeper/myid
echo 2 > /data/zookeeper/myid
echo 3 > /data/zookeeper/myid
3. 编辑配置 conf/zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=300
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=10
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/data/zookeeper
# 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=2000
# It is the maximum value that client may request and the server will accept.
# It is Ok to have high maxSessionTimeout on server to allow clients to work with high session timeout if they want.
# But we request session timeout of 30 seconds by default (you can change it with session_timeout_ms in ClickHouse config).
maxSessiOnTimeout=60000000
## Reduce Snapshots
# To avoid seeks ZooKeeper allocates space in the transaction log file in blocks of preAllocSize kilobytes.
# The default block size is 64M. One reason for changing the size of the blocks is to reduce the block size
# if snapshots are taken more often. (Also, see snapCount).
preAllocSize=131072
# ZooKeeper logs transactions to a transaction log. After snapCount transactions are written to a log file a
# snapshot is started and a new transaction log file is started. The default snapCount is 10,000.
snapCount=3000000
#
# 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=10
# Purge task interval in hours
# Set to "0" to disable auto purge feature
autopurge.purgeInterval=1
server.1=10.16.19.181:2888:3888
server.2=10.16.19.182:2888:3888
server.3=10.16.19.183:2888:3888
4. 使用systemd管理进程 vim /usr/lib/systemd/system/zookeeper.service
[Unit]
Description=Zookeeper Service
Requires=network.target
After=network.target
[Service]
Type=simple
User=zookeeper
EnvirOnment=JAVA_HOME=/usr/java/latest
ExecStart=/usr/local/zookeeper/bin/zkServer.sh start-foreground
ExecStop=/usr/local/zookeeper/bin/zkServer.sh stop
ExecReload=/usr/local/zookeeper/bin/zkServer.sh restart
Restart=always
[Install]
WantedBy=multi-user.target
5. systemctl管理命令
# 开机自启动
systemctl enable zookeeper
# 重启服务
systemctl restart zookeeper
6. 特殊配置说明
# sudo
visudo
hadoop ALL=NOPASSWD: /bin/su - zookeeper
# /etc/hosts
10.16.19.181 zk1
10.16.19.182 zk2
10.16.19.183 zk3
#!/bin/sh
/usr/local/zookeeper/bin/zkCli.sh -server "zk1:2181,zk2:2181,zk3:2181"
7. 使用hadoop用户登录修改配置
$ sudo su - zookeeper
vim conf/zoo.cfg
./bin/zkServer.sh stop
# 停止后会自动重启
# 快捷使用客户命令
$ zkcli