作者:曾经沧海难为水文杰59552066 | 来源:互联网 | 2023-07-09 17:41
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
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
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
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
5、启动zk并查看状态
1 2
$ sh $ZK_INSTALL_DIR/bin/zkServer.sh start $ sh $ZK_INSTALL_DIR/bin/zkServer.sh status
6、利用zkCli操作zk
1
$ sh $ZK_INSTALL_DIR/bin/zkCli.sh
可以输入以下命令进行操作, 查看结果
1 2 3
> ls / > create /test value1 > get /test
二、通过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 = 大专栏