Zookeeper命令及单机部署

部署方式
分布式

一个业务分拆多个子业务,部署在不同的服务器上(不同的服务器,运行不同的代码,为了同一个目的),解决网站高并发带来问题

集群

同一个业务,部署在多个服务器上(不同的服务器,运行相同的代码),多台服务器部署相同应用构成一个集群,通过负载均衡设备共同对外提供服务

SOA

业务系统分解为多个组件,让每个组件都独立提供离散,自治,可复用的服务能力,通过服务的组合和编排来实现上层的业务流程,简化维护,降低整体风险,伸缩灵活

微服务

架构设计概念,各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合)其它特性(单一职责,边界,异步通信,独立部署)是分布式概念的跟严格执行SOA到微服务架构的演进过程
作用:各服务可独立应用,组合服务也可系统应用

Zookeepr

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

zookeeper 未授权访问是指安装部署之后默认情况下不需要任何身份验证,从而导致 zookeeper 被远程利用,导致大量服务级别的信息泄露。

默认端口

2181:对客户端提供服务
3888:选举leader使用
2888:集群内机器通讯使用(Leader监听此端口)

Zookeeper四字命令

conf:输出相关服务配置的详细信息。
cons:列出所有连接到服务器的客户端的完全的连接 / 会话的详细信息。包括“接受 / 发送”的包数量、会话 id 、操作延迟、最后的操作执行等等信息。
dump:列出未经处理的会话和临时节点。
envi:输出关于服务环境的详细信息(区别于 conf 命令)。
reqs:列出未经处理的请求
ruok:测试服务是否处于正确状态。如果确实如此,那么服务返回“imok ”,否则不做任何相应。
stat:输出关于性能和连接的客户端的列表。
wchs:列出服务器 watch 的详细信息。
wchc:通过 session 列出服务器 watch 的详细信息,它的输出是一个与watch 相关的会话的列表。
wchp:通过路径列出服务器 watch 的详细信息。它输出一个与 session相关的路径。

Zookeeper单机部署

下载镜像
wget https://downloads.apache.org/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2-bin.tar.gz
解压
tar -zxf zookeeper-3.4.5.tar.gz

创建两个文件夹,data 和 logs
在这里插入图片描述

复制文件conf/zoo_sample.cfg到zoo.cfg
在这里插入图片描述
修改配置文件,修改data和logs为刚才创建的路径
dataDir=/root/zookeeper-3.4.5/data
dataLogDir=/root/zookeeper-3.4.5/logs

查看Zookeeper部署方式:standalone(单机部署)

在这里插入图片描述

客户端测试连接到zk服务区

./zkCli.sh -server 127.0.0.1:2181
在这里插入图片描述

可以做一些操作

[zk: 127.0.0.1:2181(CONNECTED) 1] ls /   #查看当前Zookeeper中所包含的内容
[zookeeper]
[zk: 127.0.0.1:2181(CONNECTED) 2] create /dudu hello!   #创建一个新的Znode节点dudu
Created /dudu
[zk: 127.0.0.1:2181(CONNECTED) 3] get /dudu  #get确认第二步中所创建的数据
hello!
cZxid = 0x4
ctime = Fri Nov 06 17:37:39 CST 2020
mZxid = 0x4
mtime = Fri Nov 06 17:37:39 CST 2020
pZxid = 0x4
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 6
numChildren = 0
[zk: 127.0.0.1:2181(CONNECTED) 4] ls /                             
[zookeeper, dudu]
[zk: 127.0.0.1:2181(CONNECTED) 5] delete /dudu  #删除创建的Znode
[zk: 127.0.0.1:2181(CONNECTED) 6] ls /
[zookeeper]
[zk: 127.0.0.1:2181(CONNECTED) 7] 

ACL权限控制

ZK的节点有5种操作权限:CREATE、READ、WRITE、DELETE、ADMIN 也就是 增、删、改、查、管理权限,这5种权限简写为crwda(即:每个单词的首字符缩写)。
注:这5种权限中,delete是指对子节点的删除权限,其它4种权限指对自身节点的操作权限

身份的认证有4种方式:

  • world:默认方式,相当于全世界都能访问
  • auth:代表已经认证通过的用户(cli中可以通过addauth digest user:pwd 来添加当前上下文中的授权用户)
  • digest:即用户名:密码这种方式认证,这也是业务系统中最常用的
  • ip:使用Ip地址认证

使用[scheme:ID:permissions]来表示acl权限

[zk: 127.0.0.1:2181(CONNECTED) 1] getAcl /zookeeper  #获取zookeeper节点的acl权限信息
'world,'anyone
: cdrwa
[zk: 127.0.0.1:2181(CONNECTED) 2] setAcl /zookeeper crwa  #设置acl权限,不允许删除
crwa does not have the form scheme:id:perm
Acl is not valid : /zookeeper
[zk: 127.0.0.1:2181(CONNECTED) 3] setAcl /zookeeper world:anyone:crwa
cZxid = 0x0
ctime = Thu Jan 01 08:00:00 CST 1970
mZxid = 0x0
mtime = Thu Jan 01 08:00:00 CST 1970
pZxid = 0x0
cversion = -1
dataVersion = 0
aclVersion = 1
ephemeralOwner = 0x0
dataLength = 0
numChildren = 1
[zk: 127.0.0.1:2181(CONNECTED) 4] getAcl /zookeeper
'world,'anyone
: crwa
[zk: 127.0.0.1:2181(CONNECTED) 5] 

四字命令

查看配置文件
在这里插入图片描述
查看环境变量
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值