BookKeeper 介绍(2)--安装

本文主要介绍 Bookkeeper 的安装,文中所使用到的软件版本:Java 1.8.0_321、BookKeeper 4.16.5、CentOS 7.9.2009。

1、单机安装

官网(https://bookkeeper.apache.org/releases)下载安装包并解压:

tar zxvf bookkeeper-server-4.16.5-bin.tar.gz

在单台机器上允许多个 bookies:

bin/bookkeeper localbookie 10

2、集群安装

假设在 10.49.196.30、10.49.196.31、10.49.196.32 上部署 Bookkeeper。

2.1、Zookeeper 安装

可以使用独立的 Zookeeper,安装方式可参考:Zookeeper入门实战(1)-概念、安装及命令行;这里使用 Bookkeep 自带的 Zookeeper,修改配置启动即可。

A、修改 conf/zookeeper.conf

#注释掉如下行
#dynamicConfigFile=conf/zookeeper.conf.dynamic

#新增如下内容
server.1=10.49.196.30:2888:3888
server.2=10.49.196.31:2888:3888
server.3=10.49.196.32:2888:3888
#关闭 AdminServer
admin.enableServer=false

B、启动 Zookeeper

在三台机器上运行:

bin/bookkeeper-daemon.sh start zookeeper

2.2、元数据设置

A、修改 conf/bk_server.conf

该文件是 bookie 的配置文件,主要需要修改 metadataServiceUri 参数,其他可根据需要修改。

metadataServiceUri=zk+hierarchical://10.49.196.30:2181;10.49.196.31:2181;10.49.196.32:2181/ledgers

B、元数据设置

在任一机器上运行(只需运行一次):

bookkeeper-server/bin/bookkeeper shell metaformat

2.3、启动 bookies

bin/bookkeeper-daemon.sh start bookie

2.4、关闭集群

bin/bookkeeper-daemon.sh stop bookie    #关闭 bookie
bin/bookkeeper-daemon.sh stop zookeeper #关闭 zookeeper

3、bookkeepeer 命令

bookkeeper 命令可以用来在前台启动服务(bookkeeper-daemon.sh 是在后台启动服务)、在单台机器运行多个 bookies、运行管理命令等。查看用法:

bin/bookkeeper help

输出:

Usage: bookkeeper <command>
where command is one of:

[service commands]

    bookie              Run a bookie server
    autorecovery        Run AutoRecovery service
    zookeeper           Run zookeeper server

[development commands]

    localbookie <n>     Run a test ensemble of <n> bookies locally
    standalone          Run a standalone cluster (with all service components) locally

[tooling commands]

    upgrade             Upgrade bookie filesystem
    shell               Run shell for admin commands

[other commands]

    help                This help message

 bin/bookkeeper shell 运行管理命令,查看使用方法:

bin/bookkeeper shell help

如查看 bookie 的相关信息:

bin/bookkeeper shell bookieinfo

4、bookkeepeer 配置

可以在 conf/bk_server.conf 配置文件中修改配置,以调整 BookKeeper 的性能和行为。下面介绍一些常用参数配置。

4.1、Server parameters

参数 说明 默认值
bookiePort bookie 端口  3181
listeningInterface bookie 监听的网卡,不设置将监听所有网卡  
advertisedAddress 设置 bookie IP 地址或主机名  
useHostNameAsBookieID bookie 注册到 zookeeper 时是否使用主机名;如为 false,注册时将使用 IP 地址 false

4.2、Http server settings

参数 说明 默认值
httpServerEnabled 是否启用 HTTP 服务 false
httpServerPort HTTP 服务端口 8080
httpServerHost HTTP 服务地址 0.0.0.0

4.3、Journal settings

参数 说明 默认值
journalDirectories Bookkeeper 预写日志目录;可以设置多个,用英文逗号分隔 /tmp/bk-journal
journalDirectory 自 4.5.0 过期,使用 journalDirectories 代替 /tmp/bk-txn
journalMaxSizeMB journal 日志文件的最大大小,单位为 MB 2048
journalMaxBackups journal 文件的最大个数 5
journalQueueSize journal 队列大小 10000

4.4、Ledger storage settings

参数 说明 默认值
ledgerDirectories ledger 数据保存目录 /tmp/bk-data
indexDirectories ledger 索引文件保存目录,如不设置使用 ledgerDirectories 参数的值 /tmp/bk-data

4.5、Default Entry log settings

参数 说明 默认值
logSizeLimit entry 日志文件的最大大小,单位为字节 2147483648
readBufferSizeBytes  读缓存通道大小,单位为字节  512
writeBufferSizeBytes  写缓存通道大小,单位为字节  65536

4.6、Metadata Service Settings

参数 说明 默认值
metadataServiceUri 元数据服务的 zookeeper 地址 zk+hierarchical://localhost:2181/ledgers

4.7、Statistics

参数 说明 默认值
enableStatistics 是否启用统计功能 false
statsProviderClass

提供统计信息的类
Prometheus : org.apache.bookkeeper.stats.prometheus.PrometheusMetricsProvider
Codahale : org.apache.bookkeeper.stats.codahale.CodahaleMetricsProvider

org.apache.bookkeeper.stats.prometheus.PrometheusMetricsProvider
limitStatsLogging

是否限制统计功能打印日志

false

4.8、Prometheus Metrics Provider Settings

参数 说明 默认值
prometheusStatsHttpAddress Prometheus 统计程序 HTTP 地址 0.0.0.0
prometheusStatsHttpPort Prometheus 统计程序 HTTP 端口 8000
prometheusStatsLatencyRolloverSeconds 获取统计信息的时间间隔,单位为秒 60

 

 

参考:
https://bookkeeper.apache.org/docs/overview/

 

posted @ 2024-06-16 21:46  且行且码  阅读(85)  评论(0编辑  收藏  举报