日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

zookeper安装_ZooKeeper安装和配置

發布時間:2024/10/8 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 zookeper安装_ZooKeeper安装和配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

##軟件下載

寫本文時, ZooKeeper 最新穩定版本是 3.4.8, 可以從 ZooKeeper官網下載 zookeeper-3.4.8.tar.gz。將下載的 zookeeper-3.4.8.tar.gz 文件拷貝到 /opt 目錄下。

安裝和配置

JDK安裝

注意安裝 ZooKeeper 之前需要先安裝 JDK, 關于 JDK 的安裝這里不再贅述。

###解壓

sudo tar -zxvf zookeeper-3.4.8.tar.gz

###目錄重命名

sudo mv zookeeper-3.4.8 zookeeper

###修改用戶和用戶組

sudo chown —R hadoop:hadoop zookeeper/

###環境變量配置

編輯 .bashrc 文件, 在文件末尾添加以下環境變量配置:

# ZooKeeper Env

export ZOOKEEPER_HOME=/opt/zookeeper

export PATH=$PATH:$ZOOKEEPER_HOME/bin

運行以下命令使環境變量生效:

source .bashrc

核心配置文件zoo.cfg

初次使用 ZooKeeper 時, 需要將 $ZOOKEEPER_HOME/conf 目錄下的 zoo_sample.cfg 重命名為 zoo.cfg, zoo.cfg 默認配置如下:

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

# do not use /tmp for storage, /tmp here is just

# example sakes.

dataDir=/tmp/zookeeper

# the port at which the clients will connect

clientPort=2181

# the maximum number of client connections.

# increase this if you need to handle more clients

#maxClientCnxns=60

#

# Be sure to read the maintenance section of the

# administrator guide before turning on autopurge.

#

# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance

#

# The number of snapshots to retain in dataDir

#autopurge.snapRetainCount=3

# Purge task interval in hours

# Set to "0" to disable auto purge feature

#autopurge.purgeInterval=1

配置說明

tickTime: ZooKeeper 中使用的基本時間單元, 以毫秒為單位, 默認值是 2000。它用來調節心跳和超時。例如, 默認的會話超時時間是兩倍的 tickTime。

initLimit: 默認值是 10, 即 tickTime 屬性值的 10 倍。它用于配置允許 followers 連接并同步到 leader 的最大時間。如果 ZooKeeper 管理的數據量很大的話可以增加這個值。

syncLimit: 默認值是 5, 即 tickTime 屬性值的 5 倍。它用于配置leader 和 followers 間進行心跳檢測的最大延遲時間。如果在設置的時間內 followers 無法與 leader 進行通信, 那么 followers 將會被丟棄。

dataDir: ZooKeeper 用來存儲內存數據庫快照的目錄, 并且除非指定其它目錄, 否則數據庫更新的事務日志也將會存儲在該目錄下。建議配置

dataLogDir 參數來指定 ZooKeeper 事務日志的存儲目錄。

clientPort: 服務器監聽客戶端連接的端口, 也即客戶端嘗試連接的端口, 默認值是 2181。

maxClientCnxns: 在 socket 級別限制單個客戶端與單臺服務器之前的并發連接數量, 可以通過 IP 地址來區分不同的客戶端。它用來防止某種類型的 DoS 攻擊, 包括文件描述符耗盡。默認值是 60。將其設置為 0 將完全移除并發連接數的限制。

autopurge.snapRetainCount: 配置 ZooKeeper 在自動清理的時候需要保留的數據文件快照的數量和對應的事務日志文件, 默認值是 3

autopurge.purgeInterval: 和參數 autopurge.snapRetainCount 配套使用, 用于配置 ZooKeeper 自動清理文件的頻率, 默認值是 1, 即默認開啟自動清理功能, 設置為 0 則表示禁用自動清理功能。

更多 ZooKeeper 配置后面會寫文章詳細描述。

單機模式

zoo.cfg配置

ticketTime=2000

clientPort=2181

dataDir=/opt/zookeeper/data

dataLogDir=/opt/zookeeper/logs

啟動 ZooKeeper 服務

可以使用如下命令來啟動 ZooKeeper 服務

zkServer.sh start

服務啟動信息如下:

驗證 ZooKeeper 服務

服務啟動完成后, 可以使用 telnet 和 stat 命令驗證服務器啟動是否正常:

在單機模式中, Mode 的值是 "standalone"。

停止 ZooKeeper 服務

想要停止 ZooKeeper 服務, 可以使用如下命令:

zkServer.sh stop

服務停止信息如下:

##集群模式

###zoo.cfg配置

在 master 機器上, 在單機模式的配置文件下增加了最后 5 行配置:

ticketTime=2000

clientPort=2181

dataDir=/opt/zookeeper/data

dataLogDir=/opt/zookeeper/logs

initLimit=10

syncLimit=5

server.1=master:2888:3888

server.2=slave01:2888:3888

server.3=slave02:2888:3888

配置說明:

集群模式中, 集群中的每臺機器都需要感知其它機器, 在 zoo.cfg 配置文件中, 可以按照如下格式進行配置, 每一行代表一臺服務器配置:

server.id=host:port:port

id 被稱為 Server ID, 用來標識服務器在集群中的序號。同時每臺 ZooKeeper 服務器上, 都需要在數據目錄(即 dataDir 指定的目錄) 下創建一個 myid 文件, 該文件只有一行內容, 即對應于每臺服務器的Server ID。

ZooKeeper 集群中, 每臺服務器上的 zoo.cfg 配置文件內容一致。

server.1 的 myid 文件內容就是 "1"。每個服務器的 myid 內容都不同, 且需要保證和自己的 zoo.cfg 配置文件中 "server.id=host:port:port" 的 id 值一致。

id 的范圍是 1 ~ 255。

###創建myid文件

在 dataDir 指定的目錄下 (即 /opt/zookeeper/data 目錄) 創建名為 myid 的文件, 文件內容和 zoo.cfg 中當前機器的 id 一致。根據上述配置, master 的 myid 文件內容為 1。

slave配置

按照相同步驟, 為 slave01 和 slave02 配置 zoo.cfg 和 myid 文件。zoo.cfg文件內容相同, slave01 的 myid 文件內容為 2, slave02 的 myid 文件內容為 3。

集群啟動

在集群中的每臺機器上執行以下啟動命令:

zkServer.sh start

啟動信息如下:

master 和 slave01 兩臺服務器的 Mode 值均為 follower, 表明它們在集群中的角色為 Follower。

slave02 服務器的 Mode 值為 leader, 表明它在集群中的角色為 Leader。

參考資料

總結

以上是生活随笔為你收集整理的zookeper安装_ZooKeeper安装和配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。