| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> zookeeper的安装与特性 -> 正文阅读 |
|
[大数据]zookeeper的安装与特性 |
一.zk的安装? ????????Step1:配置JAVA环境,检验环境: ????????????????java -version ????????Step2: 下载解压 zookeeper(可能网络不通,就上传压缩包) ????????????????wget https://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.5.8/apache-zookeeper-3.5.8-bin.tar.gz ????????????????tar -zxvf apache-zookeeper-3.5.8-bin.tar.gz ????????????????cd apache-zookeeper-3.5.8-bin ????????Step3: 重命名配置文件 zoo_sample.cfg ????????????????cp zoo_sample.cfg zoo.cfg ? ? ? ? ? ? ? ? mkdir data ? ? ? ? ? ? ? ? vim zoo.cfg 修改持久化文件地址为我们创建的data文件夹 ????????Step4: 启动zookeeper ????????????????bin/zkServer.sh start conf/zoo.cfg ????????Step5:连接服务器 ????????????????bin/zkCli.sh -server ip:port 二.使用命令行操作zookeeper 1. 创建zookeeper 节点命令 ????????create [-s] [-e] [-c] [-t ttl] path [data] [acl] ????????中括号为可选项,没有则默认创建持久化节点 -s: 顺序节点 -e: 临时节点 -c: 容器节点 -t: 可以给节点添加过期时间,默认禁用,需要通过系统参数启用 创建节点
如上,没有加任何可选参数,创建的就是持久化节点? ? 查看节点:
???????? ? 修改节点数据:
? 查看节点状态信息:
? Stat
? 查看节点状态信息同时查看数据
创建子节点: ?????????这里要注意,zookeeper是以节点组织数据的,没有相对路径这么一说,所以,所有的节点一定是以 / 开头。
三.Zookeeper 的 ACL 权限控制Zookeeper 的ACL 权限控制,可以控制节点的读写操作,保证数据的安全性,Zookeeper ACL 权限设置分为 3 部分组成,分别是:权限模式(Scheme)、授权对象(ID)、权限信息(Permission)。最终组成一条例如“scheme:id:permission”格式的 ACL 请求信息。 ????????????????Scheme(权限模式):用来设置 ZooKeeper 服务器进行权限验证的方式。ZooKeeper 的权限验证方式大体分为两种类型: ????????一种是范围验证。所谓的范围验证就是说 ZooKeeper 可以针对一个 IP 或者一段 IP 地址授予某种权限。比如我们可以让一个 IP 地址为“ip:192.168.0.110”的机器对服务器上的某个数据节点具有写入的权限。或者也可以通过“ip:192.168.0.1/24”给一段 IP 地址的机器赋权。 ????????另一种权限模式就是口令验证,也可以理解为用户名密码的方式。在 ZooKeeper 中这种验证方式是 Digest 认证,而 Digest 这种认证方式首先在客户端传送“username:password”这种形式的权限表示符后,ZooKeeper 服务端会对密码 部分使用 SHA-1 和 BASE64 算法进行加密,以保证安全性。 ????????授权对象(ID) ????????授权对象就是说我们要把权限赋予谁,而对应于 4 种不同的权限模式来说,如果我们选择采用 IP 方式,使用的授权对象可以是一个 IP 地址或 IP 地址段;而如果使用 Digest 或 Super 方式,则对应于一个用户名。如果是 World 模式,是授权系统中所有的用户。 ????????权限信息(Permission) ????????权限就是指我们可以在数据节点上执行的操作种类,如下所示:在 ZooKeeper 中已经定义好的权限有 5 种:
命令:
可以通过系统参数zookeeper.skipACL=yes进行配置,默认是no,可以配置为true, 则配置过的ACL将不再进行权限检测 生成授权ID的两种方式: a.代码生成ID:
b.在xshell 中生成
设置ACL有两种方式 ????????节点创建的同时设置ACL ????????????????create [-s] [-e] [-c] path [data] [acl] ????????或者用setAcl 设置 ????????????????setAcl /zk-node digest:gj:X/NSthOB0fD/OT6iilJ55WJVado=:cdrwa 添加授权信息后,不能直接访问,直接访问将报如下异常
? 访问前需要添加授权信息
? 另一种授权模式: auth 明文授权 使用之前需要先addauth digest username:password 注册用户信息,后续可以直接用明文授权
IP授权模式:
?多个指定IP可以通过逗号分隔, 如 setAcl /node-ip ip:IP1:rw,ip:IP2:a |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 4:56:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |