标签:net 数据 pwd 同步 下载 防火墙 双向 创建目录 system
环境准备:1台机器,1个zk
首先,验证本机是否有JDK环境
[root@node01 ~]# java -version
java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)
如果没有java环境,请参考https://www.cnblogs.com/ghh520/p/13239027.html进行安装
下载zookeeper安装包,链接: https://pan.baidu.com/s/12TrG2eaEhAyVHTGJM2BFJQ 密码: aaoo
移植到/usr/local目录下,进行解压
[root@node01 local]# tar -zxvf zookeeper-3.4.9.tar.gz
在zookeeper-3.4.9目录下创建data文件夹,用户存放日志数据
[root@node01 local]# cd zookeeper-3.4.9/
[root@node01 zookeeper-3.4.9]# mkdir data
将配置文件复制
[root@node01 zookeeper-3.4.9]# cd conf/
[root@node01 conf]# cp zoo_sample.cfg zoo.cfg
[root@node01 conf]# ll
总用量 16
-rw-rw-r-- 1 1001 1001 535 8月 23 2016 configuration.xsl
-rw-rw-r-- 1 1001 1001 2161 8月 23 2016 log4j.properties
-rw-r--r-- 1 root root 940 4月 23 19:48 zoo.cfg
-rw-rw-r-- 1 1001 1001 922 8月 23 2016 zoo_sample.cfg
修改数据目录为自己建的目录
[root@node01 conf]# vi zoo.cfg
dataDir=/usr/local/zookeeper-3.4.9/data/
启动和查看状态
[root@node01 zookeeper-3.4.9]# cd bin/
[root@node01 bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@node01 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: standalone
关闭zk
[root@node01 bin]# ./zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg
Stopping zookeeper ... STOPPED
环境准备:1台机器,3个zk
先看一下,没有zookeeper在运行
[root@node01 bin]# ps aux|grep zoo
root 2602 0.0 0.0 112828 972 pts/0 S+ 11:54 0:00 grep --color=auto zoo
将单机的,复制3份
[root@node01 local]# cp -R zookeeper-3.4.9/ zookeeper01
[root@node01 local]# cp -R zookeeper-3.4.9/ zookeeper02
[root@node01 local]# cp -R zookeeper-3.4.9/ zookeeper03
3个zk分别写一个id
[root@node01 local]# echo 1 >> zookeeper01/data/myid
[root@node01 local]# echo 2 >> zookeeper02/data/myid
[root@node01 local]# echo 3 >> zookeeper03/data/myid
分别修改3个配置文件zookeeper01、zookeeper02、zookeeper03,下面以zookeeper01举例修改:
[root@node01 conf]# pwd
/usr/local/zookeeper01/conf
[root@node01 conf]# vi zoo.cfg
3个机器的端口和路径修改,端口要不同,3台分别为2181,2182,2183
文件里修改ClientPort 2181
3台尾部都加上如下,注意修改IP
文件里末尾加上:
server.1=192.168.190.130:2881:3881
server.2=192.168.190.130:2882:3882
server.3=192.168.190.130:2883:3883
其余两台按照上面同样进行修改,3台配置完成之后,去启动
第一台启动,此时会报错,报错属于正常
第二台启动,角色选举正常
第三台启动,角色是跟随者
此时,再次查看第一台的状态是跟随者
可以将3台都分别关闭了
环境准备:3台机器,3个zk
首先,关闭防火墙
[root@node01 conf]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
关闭selinux
[root@node01 conf]# vi /etc/selinux/config
3台主机都起个主机名,分别为node01、node02、node03,其余两台也进行配置
[root@node01 conf]# vi /etc/hostname
node01
配置映射,互相认识一下,加入一下内容,修改为自己的IP,其余两台同样进行配置
[root@node01 conf]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.30.253.113 github.com
151.101.185.194 github.global.ssl.fastly.net
172.16.45.131 node01
172.16.45.132 node02
172.16.45.133 node03
3台修改完都重启一下
[root@node01 conf]# reboot
还可以配置个SSH免密登录
第一台机器,生成密钥,一路回车
[root@node01 conf]# ssh-keygen -t rsa
在第一台机器中,把密钥传送给3台机器
[root@node01 conf]# ssh-copy-id node01
[root@node01 conf]# ssh-copy-id node02
[root@node01 conf]# ssh-copy-id node03
开始做完全分布式:
如果做了前面的伪分布式,请先删除那3分单机的,再重新复制3分单机的
给3台分别写入id
3台修改路径,不需要修改clientPort
3台文件最后都加上一下内容
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
第一台机器,将配好的另外2个zk,传给另外2台机器
scp -r /usr/local/zookeeper02/ root@node02:/usr/local/zookeeper02
scp -r /usr/local/zookeeper03/ root@node03:/usr/local/zookeeper03
3台分别启动和查看状态,1主2从
直接运行zkCli.sh是连接自己的客户端,也可以连接其他机器客户端,如下:
[root@node01 bin]# ./zkCli.sh -server node03:2181
help
ls path [watch]
create [-s] [-e] path data acl
get path [watch]
set path data [version]
delete path [version]
stat path [watch]
setAcl path
例如:
可以创建目录,写内容
可以监听到目录的变化
标签:net 数据 pwd 同步 下载 防火墙 双向 创建目录 system
原文地址:https://www.cnblogs.com/ghh520/p/13246001.html