Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save mathewmoon/94a95f2655f077e3b5e49129bfcf708c to your computer and use it in GitHub Desktop.
Save mathewmoon/94a95f2655f077e3b5e49129bfcf708c to your computer and use it in GitHub Desktop.
journalDirectory=/opt/bookkeeper/journal
# Accepts multiple directories
ledgerDirectories=/opt/bookkeeper/ledgers
# Can be the same as ledgerDirectories
#indexDirectories=/opt/bookkeeper/indexes
bookiePort=3181
# Register bookie to Zookeeper by hostname instead of IP
useHostNameAsBookieID=true
# All local clients directly from JVM
enableLocalTransport=true
# Retain status across restarts
persistBookieStatusEnabled=true
# If false, journal writes are written to the OS page cache but not flushed to disk until acknowledged. Can improve performance. Would theoretically only cause loss in event of a power failure or kernel panic
journalSyncData=false
# double check if a ledger exists in metadata service prior to gc. Should really only cause a performance hit if Zookeepers are overloaded but provides some small level of assurance that the GC won't reap data that it erroneously believes is safe in Zookeeper
verifyMetadataOnGC=true
# Settings for stat scraping
enableStatistics=true
statsProviderClass=org.apache.bookkeeper.stats.prometheus.PrometheusMetricsProvider
limitStatsLogging=false
prometheusStatsHttpPort=7070
# Whether to allow bookie to start autorecovery daemon
autoRecoveryDaemonEnabled=true
# The type of storage class for the ledger on disk
ledgerStorageClass=org.apache.bookkeeper.bookie.storage.ldb.DbLedgerStorage
ledgerManagerType=hierarchical
readOnlyModeEnabled=false
bookkeeperClientHealthCheckEnabled=true
# Size of journal before a new one is started. Total storage needed for journal volume should be journalMaxSizeMB*(journalMaxBackups + 1).
# May need to increase this by a factor of 1 in case a new journal is being written before the oldest is removed
journalMaxSizeMB=2048
journalMaxBackups=4
# How often we garbage collect old messages that we no longer need
gcOverreplicatedLedgerWaitTime=300000
# Where to find the zookeeper service at. Use this instead of a list of zkServers and point it to a single host that represents the service such as a load balancer or multiple entry DNS records. For Zookeeper in kube this should be the DNS entry for the Zookeeper service (Not the headless service)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment