Revisit solution to configure Bookkeeper RocksDB settings - default to individual config files (#583)
This commit is contained in:
parent
f98ee7d69c
commit
43f8dfa04e
@ -61,19 +61,5 @@ data:
|
|||||||
{{- end }}
|
{{- end }}
|
||||||
# TLS config
|
# TLS config
|
||||||
{{- include "pulsar.bookkeeper.config.tls" . | nindent 2 }}
|
{{- include "pulsar.bookkeeper.config.tls" . | nindent 2 }}
|
||||||
{{- if .Values.bookkeeper.useRocksDBConfigInConfigData }}
|
|
||||||
# Set RocksDB default format version to 5
|
|
||||||
# RocksDB format_version 5 has been supported since RocksDB 6.6 . It's required for certain performance optimizations.
|
|
||||||
PULSAR_PREFIX_dbStorage_rocksDB_format_version: "5"
|
|
||||||
# Specify non-existing files to avoid Bookkeeper from loading RocksDB config from existing files
|
|
||||||
PULSAR_PREFIX_defaultRocksdbConf: "conf/non_existing_default_rocksdb.conf"
|
|
||||||
PULSAR_PREFIX_entryLocationRocksdbConf: "conf/non_existing_entry_location_rocksdb.conf"
|
|
||||||
PULSAR_PREFIX_ledgerMetadataRocksdbConf: "conf/non_existing_ledger_metadata_rocksdb.conf"
|
|
||||||
{{- else }}
|
|
||||||
# Specify existing files to load RocksDB config from existing files
|
|
||||||
PULSAR_PREFIX_defaultRocksdbConf: "conf/default_rocksdb.conf"
|
|
||||||
PULSAR_PREFIX_entryLocationRocksdbConf: "conf/entry_location_rocksdb.conf"
|
|
||||||
PULSAR_PREFIX_ledgerMetadataRocksdbConf: "conf/ledger_metadata_rocksdb.conf"
|
|
||||||
{{- end }}
|
|
||||||
{{ toYaml .Values.bookkeeper.configData | indent 2 }}
|
{{ toYaml .Values.bookkeeper.configData | indent 2 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
@ -177,6 +177,22 @@ spec:
|
|||||||
command: ["sh", "-c"]
|
command: ["sh", "-c"]
|
||||||
args:
|
args:
|
||||||
- |
|
- |
|
||||||
|
# set required environment variables to use rocksdb config files provided in the Pulsar image
|
||||||
|
export PULSAR_PREFIX_defaultRocksdbConf=${PULSAR_PREFIX_defaultRocksdbConf:-conf/default_rocksdb.conf}
|
||||||
|
export PULSAR_PREFIX_entryLocationRocksdbConf=${PULSAR_PREFIX_entryLocationRocksdbConf:-conf/entry_location_rocksdb.conf}
|
||||||
|
export PULSAR_PREFIX_ledgerMetadataRocksdbConf=${PULSAR_PREFIX_ledgerMetadataRocksdbConf:-conf/ledger_metadata_rocksdb.conf}
|
||||||
|
if [ -x bin/update-rocksdb-conf-from-env.py ] && [ -f "${PULSAR_PREFIX_entryLocationRocksdbConf}" ]; then
|
||||||
|
echo "Updating ${PULSAR_PREFIX_entryLocationRocksdbConf} from environment variables starting with dbStorage_rocksDB_*"
|
||||||
|
bin/update-rocksdb-conf-from-env.py "${PULSAR_PREFIX_entryLocationRocksdbConf}"
|
||||||
|
else
|
||||||
|
# Ensure that Bookkeeper will not load RocksDB config from existing files and fallback to use default RocksDB config
|
||||||
|
# See https://github.com/apache/bookkeeper/pull/3523 as reference
|
||||||
|
export PULSAR_PREFIX_defaultRocksdbConf=conf/non_existing_default_rocksdb.conf
|
||||||
|
export PULSAR_PREFIX_entryLocationRocksdbConf=conf/non_existing_entry_location_rocksdb.conf
|
||||||
|
export PULSAR_PREFIX_ledgerMetadataRocksdbConf=conf/non_existing_ledger_metadata_rocksdb.conf
|
||||||
|
# Ensure that Bookkeeper will use RocksDB format_version 5 (this currently applies only to the entry location rocksdb due to a bug in Bookkeeper)
|
||||||
|
export PULSAR_PREFIX_dbStorage_rocksDB_format_version=${PULSAR_PREFIX_dbStorage_rocksDB_format_version:-5}
|
||||||
|
fi
|
||||||
{{- if .Values.bookkeeper.additionalCommand }}
|
{{- if .Values.bookkeeper.additionalCommand }}
|
||||||
{{ .Values.bookkeeper.additionalCommand }}
|
{{ .Values.bookkeeper.additionalCommand }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|||||||
@ -728,10 +728,6 @@ bookkeeper:
|
|||||||
## templates/bookkeeper-service-account.yaml
|
## templates/bookkeeper-service-account.yaml
|
||||||
service_account:
|
service_account:
|
||||||
annotations: {}
|
annotations: {}
|
||||||
## Use RocksDB config in configData
|
|
||||||
## Use dbStorage_rocksDB_* / PULSAR_PREFIX_dbStorage_rocksDB_* settings defined in configData instead of conf/*_rocksdb.conf files in the Pulsar docker image
|
|
||||||
## See https://github.com/apache/bookkeeper/pull/3523 as reference
|
|
||||||
useRocksDBConfigInConfigData: true
|
|
||||||
## Bookkeeper configmap
|
## Bookkeeper configmap
|
||||||
## templates/bookkeeper-configmap.yaml
|
## templates/bookkeeper-configmap.yaml
|
||||||
##
|
##
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user