From 051ff9d8ecf1605d0ec0baad1332919e87eb8544 Mon Sep 17 00:00:00 2001 From: Anonymitaet Date: Wed, 2 Aug 2023 15:14:53 +0800 Subject: [PATCH] [feat][doc] add configurations for broker load balancing --- static/reference/next/config/README.md | 69 ++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/static/reference/next/config/README.md b/static/reference/next/config/README.md index 07c4274b9485..807c89e69b64 100644 --- a/static/reference/next/config/README.md +++ b/static/reference/next/config/README.md @@ -32,3 +32,72 @@ You can set specific configurations through Java properties. | **Property** | **Description** | | ------------------ | ------------------------------------------------------------ | | pulsar.enableUring | Use `io_uring` instead of `epoll` as network IO mode. `-Dpulsar.enableUring=1` means this feature is enabled. | + +## Broker load balancing configurations + +Below is a brief summary of configurations for broker load balancing. + +For detailed descriptions of each configuration, see [Broker load balancing | Configurations](pathname:///reference/#/@pulsar:version_reference@/config/reference-configuration-broker). + +> Note +> Configurations with an asterisk (*) are only available in the extensible load balancer. + +### Broker load data + +- loadBalancerReportUpdateMinIntervalMillis +- loadBalancerReportUpdateThresholdPercentage +- loadBalancerReportUpdateMaxIntervalMinutes +- loadBalancerBandwithInResourceWeight +- loadBalancerBandwithOutResourceWeight +- loadBalancerCPUResourceWeight +- loadBalancerMemoryResourceWeight +- loadBalancerDirectMemoryResourceWeight +- loadBalancerHistoryResourcePercentage + +### TopK bundle load data + +- loadBalancerReportUpdateMinIntervalMillis +- statsUpdateFrequencyInSecs +- loadBalancerMaxNumberOfBundlesInBundleLoadReport* + + +### Bundle-broker assignment + +- loadBalancerAverageResourceUsageDifferenceThresholdPercentage + +### Bundle ownership system topic (ServiceUnitStateChannel) + +- loadBalancerServiceUnitStateTombstoneDelayTimeInSeconds* + +### Bundle unloading + +- loadBalancerEnabled +- loadBalancerSheddingEnabled +- loadBalancerSheddingIntervalMinutes +- loadBalancerSheddingGracePeriodMinutes +- loadBalancerBrokerOverloadedThresholdPercentage +- loadBalancerLoadSheddingStrategy. The default value is [org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder](https://github.com/apache/pulsar/blob/782e91fe327efe2c9c9107d6c679c2837d43935b/conf/broker.conf#L1324). Available values are: + - `org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder` + - `org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder` + - `org.apache.pulsar.broker.loadbalance.impl.OverloadShedder` + - `org.apache.pulsar.broker.loadbalance.extensions.scheduler.TransferShedder` +- loadBalancerTransferEnabled* +- loadBalancerBrokerLoadTargetStd* +- loadBalancerSheddingConditionHitCountThreshold* +- loadBalancerMaxNumberOfBrokerSheddingPerCycle* +- loadBalanceSheddingDelayInSeconds* +- loadBalancerBrokerLoadDataTTLInSeconds* + +### Bundle splitting + +- loadBalancerEnabled +- loadBalancerAutoBundleSplitEnabled +- defaultNamespaceBundleSplitAlgorithm +- loadBalancerNamespaceBundleMaxTopics +- loadBalancerNamespaceBundleMaxSessions +- loadBalancerNamespaceBundleMaxMsgRate +- loadBalancerNamespaceBundleMaxBandwidthMbytes +- loadBalancerNamespaceMaximumBundles +- loadBalancerSplitIntervalMinutes* +- loadBalancerNamespaceBundleSplitConditionHitCountThreshold* +- loadBalancerMaxNumberOfBundlesToSplitPerCycle* \ No newline at end of file