zookeeper搭建以及acl許可權訪問控制

2021-09-05 01:36:42 字數 3249 閱讀 6178

1. 搭建zookeeper環境

cp zoo.cfg.template zoo.cfg

基本沒有要修改的配置,預設配置就可以啟動

1. 啟動zookeeper

2. 通過zk客戶端連線剛才啟動的zk服務

3. 建立乙個節點測試一下有沒有問題

啟動成功,並成功建立、訪問節點。

現在,我們的zk節點需要進行許可權設定

workd 剛剛建立的test節點,我們來看一下test節點的許可權是什麼樣的

節點許可權是world,也就是預設許可權,為所有client端開放,這樣肯定是不安全的,我們先基於auth模式進行許可權的控制

auth 模式進行許可權控制

3. auth加密形式(還是依賴以上建立的test節點進行許可權控制)

4. 為節點建立auth許可權認證方式(drawc為上述具體操作許可權)

setacl /test auth:user:123:drawc

5. 登陸解密流程

1. 建立使用者上下文

addauth digest user:123

2. 設定登陸

setacl /test auth:user:123:drawc

6. 現在看一下是否能訪問得了該節點,發現是沒有問題的,因為現在許可權上下文中是包含user:123 的資訊的

ls /test

7. 現在看一下/test節點的許可權資訊

現在,成功的為節點設定了訪問許可權,清除一下上下文,再次進行訪問,或者直接退出當前客戶端重新登陸一下,訪問/test節點,會發生什麼

退出客戶端

quit

重新連線客戶端

會發現沒有許可權進行訪問,此時進行登陸、授權訪問該節點

8. 設定許可權上下文

addauth digest user:123

9. 設定節點訪問許可權

setacl /test auth:user:123:drawc

10. 訪問test節點

會發現,可以正常進行訪問,這就是auth許可權的控制流程,接下來我們來說一下digest的訪問控制

digest加密模式相對於auth來說要稍微麻煩一些,需要對要設定的密碼進行base64(sha1(password))的處理

搞起首先,先把之前建立的測試節點乾掉把,在建立乙個沒有許可權控制的測試節點

delete /test

create /test mytest

get /test

生成乙個符合degist的密碼(設定的密碼是password喲)

3. 為節點設定degist許可權(這回不需要設定上下文)

password替換為生成的base64的編碼

檢視節點許可權後訪問一下,發現是訪問不了的

getacl /test

get /test

接下來設定一下許可權再訪問

發現是可以正常訪問的,沒毛病老鐵,這是digest模式的許可權設定方式,接下來介紹一下ip的許可權模式

還是剛才的test節點,刪除後重新建立乙個測試節點

delete /test

create /test mytest

get /test

設定節點訪問許可權為ip模式,現在有個小問題是在設定ip模式的時候呢,localhost是沒辦法設定的,所以本地要設定成127.0.0.1,所以我們在客戶端連線zksercer的時候呢,要連線成127.0.0.1

連線上之後,命令列的前面可以看到,當前連線的ip是127.0.0.1

接下來對節點設定ip訪問

setacl /test ip:127.0.0.1:drawc,ip:192.168.1.2:drawc

這個ip如果設定的不是本地或者你的ip,是訪問不到的,例如:

是不是沒毛病。

最近每天晚上都兩點睡,連續好幾個月了,身體有點吃不消了,在這個經濟下行的時代,想做點什麼,想給有想法的大佬做舔狗

zookeeper以及集群的搭建

1.zookeeper的搭建不難,難的是對他的理解以及良好的使用.單機版的zookeeper只需要解壓後直接命令 啟動即可 解壓zookeeper,tar zxvf zookeeper 3.4.6.tar.g 2.集群的話,需要複製檔案 把單機版的zookeeper 3.4.6拷貝到 usr loc...

Zookeeper集群搭建以及zab協議

單機環境下,jdk zookeeper安裝完畢,基於一台虛擬機器,進行zookeeper的偽集群搭建,zookeeper集群中包含三個節點,節點對外提供服務埠號分別為2181,2182,2183 基於zookeeper 3.4.10複製三份zookeeper安裝好的伺服器檔案,目錄名稱分別為zook...

zookeeper集群搭建

接觸zookeeper集群已有很長很長一段時間了,zookeeper在專案中的使用相當的頻繁,如dubb服務 amq集群 大資料領域hadoop等。zookeeper的集群建立非常簡單,一直想寫一篇文章來對集群使用的介紹,但一直沒能抽出空,今天正好閒來無事,就重新實踐一遍來整理記錄,下文是基本的集群...