热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

zookeeper安装:单机模式、伪集群模式、集群模式

zookeeper的安装分为三种模式:单机模式、伪集群模式和集群模式。安装需要用到的zookeeper文件,到http:zookeeper.apache.org通过download

zookeeper的安装分为三种模式: 单机模式、伪集群模式和集群模式。

安装需要用到的zookeeper文件,到http://zookeeper.apache.org/通过download链接下载。

一、单机模式安装zookeeper
1、设置环境变量


1
2
3
4
5
6
7
8
9

$ ZK_FILE=/vagrant/zookeeper-3.4.13.tar.gz
$ ZK_INSTALL_PATH=/opt/zk
$ ZK_INSTALL_DIR=$ZK_INSTALL_PATH/zookeeper-3.4.13
$ ZK_DATA_DIR=$ZK_INSTALL_PATH/zookeeper-3.4.13/data
$ ZK_LOG_DIR=$ZK_INSTALL_PATH/zookeeper-3.4.13/log
$ ZK_CFG=$ZK_INSTALL_DIR/conf/zoo.cfg
$ ZK_SERVER_ID=1
$ ZK_PORT=2181
$ ZK_SERVER_LIST=server.1=127.0.0.1:2888:3888

prepare-install-env

2、创建安装目录并将zk到解压安装目录


1
2
3

$ mkdir -p $ZK_INSTALL_PATH
$ tar -zxvf $ZK_FILE -C $ZK_INSTALL_PATH >> /var/null
$ ls -l $ZK_INSTALL_PATH

make-dir-and-uzip

3、新建数据和日志目录,生成myid文件,拷贝配置zoo.cfg文件

1
2
3
4
5

$ mkdir $ZK_DATA_DIR
$ mkdir $ZK_LOG_DIR
$ echo $ZK_SERVER_ID >> $ZK_DATA_DIR/myid
$ cp $ZK_INSTALL_DIR/conf/zoo_sample.cfg $ZK_CFG
$ cat $ZK_CFG

copy-zoo-cfg

4、配置zoo.cfg数据目录、日志目录、端口号、服务器列表并确认配置

1
2
3
4
5
6

$ sed -i 's#dataDir=/tmp/zookeeper#dataDir='$ZK_DATA_DIR'#' $ZK_CFG
$ sed -i '$a dataLogDir='$ZK_LOG_DIR $ZK_CFG
$ sed -i 's/2181/'$ZK_PORT'/g' $ZK_CFG
$ sed -i '$a '$ZK_SERVER_LIST $ZK_CFG

$ cat $ZK_CFG

config-zoo-cfg

5、启动zk并查看状态

1
2

$ sh $ZK_INSTALL_DIR/bin/zkServer.sh start
$ sh $ZK_INSTALL_DIR/bin/zkServer.sh status

start-zookeeper

6、利用zkCli操作zk

1

$ sh $ZK_INSTALL_DIR/bin/zkCli.sh

use-zk-cli

可以输入以下命令进行操作, 查看结果

1
2
3

> ls /
> create /test value1
> get /test

zk-cli-command

二、通过vagrant一键安装单机版的zookeeper
1、整理一中的shell命令成zk-install.sh脚本文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>zk压缩包路径>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
echo $ZK_FILE
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>zk安装路径&安装目录>>>>>>>>>>>>>>>>>>>>>"
echo $ZK_INSTALL_PATH
echo $ZK_INSTALL_DIR
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>zk数据目录&日志目录>>>>>>>>>>>>>>>>>>>>>"
echo $ZK_DATA_DIR
echo $ZK_LOG_DIR
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>zk的myid>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
echo $ZK_SERVER_ID
echo ">>>>>>>>>>>>>>>>>>>>>>>>>zk端口及服务器列表>>>>>>>>>>>>>>>>>>>>>>>>>"
echo $ZK_PORT
echo $ZK_SERVER_LIST

echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>zk配置文件>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
ZK_CFG=$ZK_INSTALL_DIR/conf/zoo.cfg
echo $ZK_CFG

echo ">>>>>>>>>>>>>>>>>>>>新建zk安装目录并解压zk到该目录>>>>>>>>>>>>>>>>>>>"
mkdir -p $ZK_INSTALL_PATH

tar -zxvf $ZK_FILE -C $ZK_INSTALL_PATH >> /var/null


echo ">>>>>>>>>>>>>>>>>>>>>新建zk数据和日志目录及myid>>>>>>>>>>>>>>>>>>>>>"
mkdir $ZK_DATA_DIR
mkdir $ZK_LOG_DIR
echo $ZK_SERVER_ID >> $ZK_DATA_DIR/myid

echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>配置zoo.cfg>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
cp $ZK_INSTALL_DIR/conf/zoo_sample.cfg $ZK_CFG

sed -i 's#dataDir=/tmp/zookeeper#dataDir='$ZK_DATA_DIR'#' $ZK_CFG
sed -i '$a dataLogDir='$ZK_LOG_DIR $ZK_CFG
sed -i 's/2181/'$ZK_PORT'/g' $ZK_CFG
sed -i '$a '$ZK_SERVER_LIST $ZK_CFG

tail -n 20 $ZK_CFG
echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>启动zk>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
sh $ZK_INSTALL_DIR/bin/zkServer.sh start

2、新建Vagrantfile文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37


# vi: set ft=ruby :

Vagrant.configure("2") do |config|
#设置虚拟机的box
config.vm.box = "centos7-base-jdk8"


#设置虚拟机的主机名
config.vm.hostname = "centos7-jdk8-zk-standalone"
#设置ip
config.vm.network "private_network", ip: "192.168.13.10"
#Virtualbox相关配置
config.vm.provider "virtualbox" do |v|
#设置虚拟机的名称
v.name = "centos7-jdk8-zk-standalone"

#设置虚拟机的内存大小为2G
v.memory = 大专栏


推荐阅读
  • 本文探讨了 Kafka 集群的高效部署与优化策略。首先介绍了 Kafka 的下载与安装步骤,包括从官方网站获取最新版本的压缩包并进行解压。随后详细讨论了集群配置的最佳实践,涵盖节点选择、网络优化和性能调优等方面,旨在提升系统的稳定性和处理能力。此外,还提供了常见的故障排查方法和监控方案,帮助运维人员更好地管理和维护 Kafka 集群。 ... [详细]
  • 在CentOS系统中部署与配置ZooKeeper详解 ... [详细]
  • WebBenchmark:强大的Web API性能测试工具
    本文介绍了一款名为WebBenchmark的Web API性能测试工具,该工具不仅支持HTTP和HTTPS服务的测试,还提供了丰富的功能来帮助开发者进行高效的性能评估。 ... [详细]
  • 本文详细介绍如何安装和配置DedeCMS的移动端站点,包括新版本安装、老版本升级、模板适配以及必要的代码修改,以确保移动站点的正常运行。 ... [详细]
  • Asynchronous JavaScript and XML (AJAX) 的流行很大程度上得益于 Google 在其产品如 Google Suggest 和 Google Maps 中的应用。本文将深入探讨 AJAX 在 .NET 环境下的工作原理及其实现方法。 ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • Kafka 是由 Apache 软件基金会开发的高性能分布式消息系统,支持高吞吐量的发布和订阅功能,主要使用 Scala 和 Java 编写。本文将深入解析 Kafka 的安装与配置过程,为程序员提供详尽的操作指南,涵盖从环境准备到集群搭建的每一个关键步骤。 ... [详细]
  • 第二章:Kafka基础入门与核心概念解析
    本章节主要介绍了Kafka的基本概念及其核心特性。Kafka是一种分布式消息发布和订阅系统,以其卓越的性能和高吞吐量而著称。最初,Kafka被设计用于LinkedIn的活动流和运营数据处理,旨在高效地管理和传输大规模的数据流。这些数据主要包括用户活动记录、系统日志和其他实时信息。通过深入解析Kafka的设计原理和应用场景,读者将能够更好地理解其在现代大数据架构中的重要地位。 ... [详细]
  • 构建高可用性Spark分布式集群:大数据环境下的最佳实践
    在构建高可用性的Spark分布式集群过程中,确保所有节点之间的无密码登录是至关重要的一步。通过在每个节点上生成SSH密钥对(使用 `ssh-keygen -t rsa` 命令并保持默认设置),可以实现这一目标。此外,还需将生成的公钥分发到所有节点的 `~/.ssh/authorized_keys` 文件中,以确保节点间的无缝通信。为了进一步提升集群的稳定性和性能,建议采用负载均衡和故障恢复机制,并定期进行系统监控和维护。 ... [详细]
  • 本文详细介绍如何在SSM(Spring + Spring MVC + MyBatis)框架中实现分页功能。包括分页的基本概念、数据准备、前端分页栏的设计与实现、后端分页逻辑的编写以及最终的测试步骤。 ... [详细]
  • 在使用 PyInstaller 将 Python 应用程序打包成独立的可执行文件时,若项目中包含动态加载的库或插件,需要正确配置 --hidden-import 和 --add-binary 参数,以确保所有依赖项均能被正确识别和打包。 ... [详细]
  • 本文探讨了使用Python实现监控信息收集的方法,涵盖从基础的日志记录到复杂的系统运维解决方案,旨在帮助开发者和运维人员提升工作效率。 ... [详细]
  • 本文探讨了异步编程的发展历程,从最初的AJAX异步回调到现代的Promise、Generator+Co以及Async/Await等技术。文章详细分析了Promise的工作原理及其源码实现,帮助开发者更好地理解和使用这一重要工具。 ... [详细]
  • MITM(中间人攻击)原理及防范初探(二)
    上一篇文章MITM(中间人攻击)原理及防范初探(一)给大家介绍了利用ettercap进行arp欺骗及劫持明文口令,后来我发现好友rootoorotor的文章介绍比我写的更透彻,所以基础利用大家可以参看 ... [详细]
author-avatar
曾经沧海难为水文杰59552066
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有