You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by ur...@apache.org on 2022/05/05 18:03:30 UTC

[pulsar-site] branch main updated: Docs sync done from apache/pulsar(#afc48e6)

This is an automated email from the ASF dual-hosted git repository.

urfree pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git


The following commit(s) were added to refs/heads/main by this push:
     new 9617b7c57a Docs sync done from apache/pulsar(#afc48e6)
9617b7c57a is described below

commit 9617b7c57aa7b8870a76c5a57cf4eeb145085ba4
Author: Pulsar Site Updater <de...@pulsar.apache.org>
AuthorDate: Thu May 5 18:03:26 2022 +0000

    Docs sync done from apache/pulsar(#afc48e6)
---
 site2/docs/admin-api-brokers.md                             |  4 ++--
 site2/docs/administration-load-balance.md                   |  5 ++++-
 site2/docs/client-libraries-python.md                       | 11 +++++++++++
 site2/docs/reference-configuration.md                       |  2 +-
 site2/website-next/docs/admin-api-brokers.md                |  4 ++--
 site2/website-next/docs/administration-load-balance.md      |  5 ++++-
 site2/website-next/docs/client-libraries-python.md          | 13 +++++++++++++
 site2/website-next/docs/reference-configuration.md          |  2 +-
 .../version-2.1.1-incubating/admin-api-brokers.md           |  4 ++--
 .../versioned_docs/version-2.10.0/io-elasticsearch-sink.md  |  1 -
 .../versioned_docs/version-2.2.0/admin-api-brokers.md       |  4 ++--
 .../versioned_docs/version-2.2.1/admin-api-brokers.md       |  4 ++--
 .../versioned_docs/version-2.2.1/client-libraries-python.md | 13 +++++++++++++
 .../versioned_docs/version-2.3.0/admin-api-brokers.md       |  4 ++--
 .../versioned_docs/version-2.3.1/admin-api-brokers.md       |  4 ++--
 .../versioned_docs/version-2.3.2/admin-api-brokers.md       |  4 ++--
 .../version-2.3.2/administration-load-balance.md            |  5 ++++-
 .../versioned_docs/version-2.3.2/client-libraries-python.md | 13 +++++++++++++
 .../versioned_docs/version-2.4.0/admin-api-brokers.md       |  4 ++--
 .../version-2.4.0/administration-load-balance.md            |  5 ++++-
 .../versioned_docs/version-2.4.1/admin-api-brokers.md       |  4 ++--
 .../version-2.4.1/administration-load-balance.md            |  5 ++++-
 .../versioned_docs/version-2.4.2/admin-api-brokers.md       |  4 ++--
 .../version-2.4.2/administration-load-balance.md            |  5 ++++-
 .../versioned_docs/version-2.5.0/admin-api-brokers.md       |  4 ++--
 .../versioned_docs/version-2.5.1/admin-api-brokers.md       |  4 ++--
 .../version-2.5.1/administration-load-balance.md            |  5 ++++-
 .../versioned_docs/version-2.5.2/admin-api-brokers.md       |  4 ++--
 .../version-2.5.2/administration-load-balance.md            |  5 ++++-
 .../versioned_docs/version-2.10.0/io-elasticsearch-sink.md  |  1 -
 30 files changed, 112 insertions(+), 40 deletions(-)

diff --git a/site2/docs/admin-api-brokers.md b/site2/docs/admin-api-brokers.md
index 2197217729..be7716891b 100644
--- a/site2/docs/admin-api-brokers.md
+++ b/site2/docs/admin-api-brokers.md
@@ -124,7 +124,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin.md) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -132,7 +132,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
 <!--DOCUSAURUS_CODE_TABS-->
 <!--pulsar-admin-->
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 $ pulsar-admin brokers update-dynamic-config --config brokerShutdownTimeoutMs --value 100
diff --git a/site2/docs/administration-load-balance.md b/site2/docs/administration-load-balance.md
index 9035087bc3..8fb7a276b0 100644
--- a/site2/docs/administration-load-balance.md
+++ b/site2/docs/administration-load-balance.md
@@ -143,6 +143,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -156,7 +159,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](assets/UniformLoadShedder.png)
diff --git a/site2/docs/client-libraries-python.md b/site2/docs/client-libraries-python.md
index 245fc70b38..d502be2745 100644
--- a/site2/docs/client-libraries-python.md
+++ b/site2/docs/client-libraries-python.md
@@ -168,6 +168,17 @@ while True:
 client.close()
 ```
 
+### Create a Python client with multiple advertised listeners
+To ensure clients in both internal and external networks can connect to a Pulsar cluster, Pulsar introduces [advertisedListeners](concepts-multiple-advertised-listeners.md).
+
+The following example creates a Python client using multiple advertised listeners:
+
+```python
+import pulsar
+
+client = pulsar.Client('pulsar://localhost:6650', listener_name='external')
+```
+
 ## Schema
 
 ### Supported schema types
diff --git a/site2/docs/reference-configuration.md b/site2/docs/reference-configuration.md
index 53709fe06e..6a497dd779 100644
--- a/site2/docs/reference-configuration.md
+++ b/site2/docs/reference-configuration.md
@@ -329,7 +329,7 @@ brokerServiceCompactionThresholdInBytes|If the estimated backlog size is greater
 |loadBalancerNamespaceBundleMaxMsgRate| maximum msgRate (in + out) in a bundle, otherwise bundle split will be triggered  |1000|
 |loadBalancerNamespaceBundleMaxBandwidthMbytes| maximum bandwidth (in + out) in a bundle, otherwise bundle split will be triggered  |100|
 |loadBalancerNamespaceMaximumBundles| maximum number of bundles in a namespace  |128|
-|loadBalancerLoadSheddingStrategy | The shedding strategy of load balance. <br /><br />Available values: <li>`org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.OverloadShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`</li><br />For the comparisons of the shedding strategies, see [here](administration-load-balance/#shed-load-automatically).|`org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
+|loadBalancerLoadSheddingStrategy | The shedding strategy of load balance. <br /><br />Available values: <li>`org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.OverloadShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`</li><br />For the comparisons of the shedding strategies, see [here](administration-load-balance/#shed-load-automatically).<br />**Note**: You need to restart brokers if this configur [...]
 |replicationMetricsEnabled| Enable replication metrics  |true|
 |replicationConnectionsPerBroker| Max number of connections to open for each broker in a remote cluster More connections host-to-host lead to better throughput over high-latency links.  |16|
 |replicationProducerQueueSize|  Replicator producer queue size  |1000|
diff --git a/site2/website-next/docs/admin-api-brokers.md b/site2/website-next/docs/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/docs/admin-api-brokers.md
+++ b/site2/website-next/docs/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/docs/administration-load-balance.md b/site2/website-next/docs/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/docs/administration-load-balance.md
+++ b/site2/website-next/docs/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website-next/docs/client-libraries-python.md b/site2/website-next/docs/client-libraries-python.md
index 41294f115a..4b6b4f9e41 100644
--- a/site2/website-next/docs/client-libraries-python.md
+++ b/site2/website-next/docs/client-libraries-python.md
@@ -191,6 +191,19 @@ client.close()
 
 ```
 
+### Create a Python client with multiple advertised listeners
+To ensure clients in both internal and external networks can connect to a Pulsar cluster, Pulsar introduces [advertisedListeners](concepts-multiple-advertised-listeners).
+
+The following example creates a Python client using multiple advertised listeners:
+
+```python
+
+import pulsar
+
+client = pulsar.Client('pulsar://localhost:6650', listener_name='external')
+
+```
+
 ## Schema
 
 ### Supported schema types
diff --git a/site2/website-next/docs/reference-configuration.md b/site2/website-next/docs/reference-configuration.md
index ef443b3b83..3a9278edd5 100644
--- a/site2/website-next/docs/reference-configuration.md
+++ b/site2/website-next/docs/reference-configuration.md
@@ -325,7 +325,7 @@ brokerServiceCompactionThresholdInBytes|If the estimated backlog size is greater
 |loadBalancerNamespaceBundleMaxMsgRate| maximum msgRate (in + out) in a bundle, otherwise bundle split will be triggered  |1000|
 |loadBalancerNamespaceBundleMaxBandwidthMbytes| maximum bandwidth (in + out) in a bundle, otherwise bundle split will be triggered  |100|
 |loadBalancerNamespaceMaximumBundles| maximum number of bundles in a namespace  |128|
-|loadBalancerLoadSheddingStrategy | The shedding strategy of load balance. <br /><br />Available values: <li>`org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.OverloadShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`</li><br />For the comparisons of the shedding strategies, see [here](administration-load-balance/#shed-load-automatically).|`org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
+|loadBalancerLoadSheddingStrategy | The shedding strategy of load balance. <br /><br />Available values: <li>`org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.OverloadShedder`</li><li>`org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`</li><br />For the comparisons of the shedding strategies, see [here](administration-load-balance/#shed-load-automatically).<br />**Note**: You need to restart brokers if this configur [...]
 |replicationMetricsEnabled| Enable replication metrics  |true|
 |replicationConnectionsPerBroker| Max number of connections to open for each broker in a remote cluster More connections host-to-host lead to better throughput over high-latency links.  |16|
 |replicationProducerQueueSize|  Replicator producer queue size  |1000|
diff --git a/site2/website-next/versioned_docs/version-2.1.1-incubating/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.1.1-incubating/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.1.1-incubating/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.1.1-incubating/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.10.0/io-elasticsearch-sink.md b/site2/website-next/versioned_docs/version-2.10.0/io-elasticsearch-sink.md
index 7b23b23dbc..4a5e349413 100644
--- a/site2/website-next/versioned_docs/version-2.10.0/io-elasticsearch-sink.md
+++ b/site2/website-next/versioned_docs/version-2.10.0/io-elasticsearch-sink.md
@@ -78,7 +78,6 @@ The configuration of the Elasticsearch sink connector has the following properti
 | `username` | String| false |" " (empty string)| The username used by the connector to connect to the elastic search cluster. <br /><br />If `username` is set, then `password` should also be provided. |
 | `password` | String| false | " " (empty string)|The password used by the connector to connect to the elastic search cluster. <br /><br />If `username` is set, then `password` should also be provided.  |
 | `ssl` | ElasticSearchSslConfig | false |  | Configuration for TLS encrypted communication |
-| `compatibilityMode` | enum (AUTO,ELASTICSEARCH,ELASTICSEARCH_7,OPENSEARCH) | AUTO |  | Specify compatibility mode with the ElasticSearch cluster. `AUTO` value will try to auto detect the correct compatibility mode to use. Use `ELASTICSEARCH_7` if the target cluster is running ElasticSearch 7 or prior. Use `ELASTICSEARCH` if the target cluster is running ElasticSearch 8 or higher. Use `OPENSEARCH` if the target cluster is running OpenSearch. |
 
 ### Definition of ElasticSearchSslConfig structure:
 
diff --git a/site2/website-next/versioned_docs/version-2.2.0/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.2.0/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.2.0/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.2.0/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.2.1/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.2.1/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.2.1/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.2.1/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.2.1/client-libraries-python.md b/site2/website-next/versioned_docs/version-2.2.1/client-libraries-python.md
index 41294f115a..4b6b4f9e41 100644
--- a/site2/website-next/versioned_docs/version-2.2.1/client-libraries-python.md
+++ b/site2/website-next/versioned_docs/version-2.2.1/client-libraries-python.md
@@ -191,6 +191,19 @@ client.close()
 
 ```
 
+### Create a Python client with multiple advertised listeners
+To ensure clients in both internal and external networks can connect to a Pulsar cluster, Pulsar introduces [advertisedListeners](concepts-multiple-advertised-listeners).
+
+The following example creates a Python client using multiple advertised listeners:
+
+```python
+
+import pulsar
+
+client = pulsar.Client('pulsar://localhost:6650', listener_name='external')
+
+```
+
 ## Schema
 
 ### Supported schema types
diff --git a/site2/website-next/versioned_docs/version-2.3.0/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.3.0/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.3.0/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.3.0/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.3.1/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.3.1/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.3.1/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.3.1/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.3.2/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.3.2/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.3.2/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.3.2/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.3.2/administration-load-balance.md b/site2/website-next/versioned_docs/version-2.3.2/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/versioned_docs/version-2.3.2/administration-load-balance.md
+++ b/site2/website-next/versioned_docs/version-2.3.2/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website-next/versioned_docs/version-2.3.2/client-libraries-python.md b/site2/website-next/versioned_docs/version-2.3.2/client-libraries-python.md
index 41294f115a..4b6b4f9e41 100644
--- a/site2/website-next/versioned_docs/version-2.3.2/client-libraries-python.md
+++ b/site2/website-next/versioned_docs/version-2.3.2/client-libraries-python.md
@@ -191,6 +191,19 @@ client.close()
 
 ```
 
+### Create a Python client with multiple advertised listeners
+To ensure clients in both internal and external networks can connect to a Pulsar cluster, Pulsar introduces [advertisedListeners](concepts-multiple-advertised-listeners).
+
+The following example creates a Python client using multiple advertised listeners:
+
+```python
+
+import pulsar
+
+client = pulsar.Client('pulsar://localhost:6650', listener_name='external')
+
+```
+
 ## Schema
 
 ### Supported schema types
diff --git a/site2/website-next/versioned_docs/version-2.4.0/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.4.0/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.4.0/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.4.0/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.4.0/administration-load-balance.md b/site2/website-next/versioned_docs/version-2.4.0/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/versioned_docs/version-2.4.0/administration-load-balance.md
+++ b/site2/website-next/versioned_docs/version-2.4.0/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website-next/versioned_docs/version-2.4.1/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.4.1/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.4.1/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.4.1/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.4.1/administration-load-balance.md b/site2/website-next/versioned_docs/version-2.4.1/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/versioned_docs/version-2.4.1/administration-load-balance.md
+++ b/site2/website-next/versioned_docs/version-2.4.1/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website-next/versioned_docs/version-2.4.2/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.4.2/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.4.2/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.4.2/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.4.2/administration-load-balance.md b/site2/website-next/versioned_docs/version-2.4.2/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/versioned_docs/version-2.4.2/administration-load-balance.md
+++ b/site2/website-next/versioned_docs/version-2.4.2/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website-next/versioned_docs/version-2.5.0/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.5.0/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.5.0/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.5.0/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.5.1/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.5.1/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.5.1/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.5.1/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.5.1/administration-load-balance.md b/site2/website-next/versioned_docs/version-2.5.1/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/versioned_docs/version-2.5.1/administration-load-balance.md
+++ b/site2/website-next/versioned_docs/version-2.5.1/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website-next/versioned_docs/version-2.5.2/admin-api-brokers.md b/site2/website-next/versioned_docs/version-2.5.2/admin-api-brokers.md
index 652329c196..accaac4f2e 100644
--- a/site2/website-next/versioned_docs/version-2.5.2/admin-api-brokers.md
+++ b/site2/website-next/versioned_docs/version-2.5.2/admin-api-brokers.md
@@ -175,7 +175,7 @@ One way to configure a Pulsar [broker](reference-terminology.md#broker) is to su
 
 But since all broker configuration in Pulsar is stored in ZooKeeper, configuration values can also be dynamically updated *while the broker is running*. When you update broker configuration dynamically, ZooKeeper will notify the broker of the change and the broker will then override any existing configuration values.
 
-* The [`brokers`](reference-pulsar-admin.md#brokers) command for the [`pulsar-admin`](reference-pulsar-admin) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
+* The `brokers` command for the [`pulsar-admin`](https://pulsar.apache.org/tools/pulsar-admin/) tool has a variety of subcommands that enable you to manipulate a broker's configuration dynamically, enabling you to [update config values](#update-dynamic-configuration) and more.
 * In the Pulsar admin {@inject: rest:REST:/} API, dynamic configuration is managed through the `/admin/v2/brokers/configuration` endpoint.
 
 ### Update dynamic configuration
@@ -186,7 +186,7 @@ But since all broker configuration in Pulsar is stored in ZooKeeper, configurati
   values={[{"label":"pulsar-admin","value":"pulsar-admin"},{"label":"REST API","value":"REST API"},{"label":"JAVA","value":"JAVA"}]}>
 <TabItem value="pulsar-admin">
 
-The [`update-dynamic-config`](reference-pulsar-admin.md#brokers-update-dynamic-config) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
+The [`update-dynamic-config`](https://pulsar.apache.org/tools/pulsar-admin/) subcommand will update existing configuration. It takes two arguments: the name of the parameter and the new value using the `config` and `value` flag respectively. Here's an example for the [`brokerShutdownTimeoutMs`](reference-configuration.md#broker-brokerShutdownTimeoutMs) parameter:
 
 ```shell
 
diff --git a/site2/website-next/versioned_docs/version-2.5.2/administration-load-balance.md b/site2/website-next/versioned_docs/version-2.5.2/administration-load-balance.md
index 811e8e5b0f..a9fd48348d 100644
--- a/site2/website-next/versioned_docs/version-2.5.2/administration-load-balance.md
+++ b/site2/website-next/versioned_docs/version-2.5.2/administration-load-balance.md
@@ -157,6 +157,9 @@ loadBalancerSheddingGracePeriodMinutes=30
 
 Pulsar supports the following types of shedding strategies. From Pulsar 2.10, the **default** shedding strategy is `ThresholdShedder`.
 
+> **Note**<br /> 
+> You need to restart brokers if the shedding strategy is [dynamically updated](admin-api-brokers.md/#dynamic-broker-configuration). 
+
 ##### ThresholdShedder
 This strategy tends to shed the bundles if any broker's usage is above the configured threshold. It does this by first computing the average resource usage per broker for the whole cluster. The resource usage for each broker is calculated using the following method: LocalBrokerData#getMaxResourceUsageWithWeight. The weights for each resource are configurable. Historical observations are included in the running average based on the broker's setting for loadBalancerHistoryResourcePercentag [...]
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder`
@@ -170,7 +173,7 @@ This strategy will attempt to shed exactly one bundle on brokers which are overl
 ![Shedding strategy - OverloadShedder](/assets/OverloadShedder.png)
 
 ##### UniformLoadShedder
-This strategy tends to distribute load uniformly across all brokers. This strategy checks laod difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
+This strategy tends to distribute load uniformly across all brokers. This strategy checks load difference between broker with highest load and broker with lowest load. If the difference is higher than configured thresholds `loadBalancerMsgRateDifferenceShedderThreshold` and `loadBalancerMsgThroughputMultiplierDifferenceShedderThreshold` then it finds out bundles which can be unloaded to distribute traffic evenly across all brokers. Configure broker with below value to use this strategy.
 `loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.UniformLoadShedder`
 
 ![Shedding strategy - UniformLoadShedder](/assets/UniformLoadShedder.png)
diff --git a/site2/website/versioned_docs/version-2.10.0/io-elasticsearch-sink.md b/site2/website/versioned_docs/version-2.10.0/io-elasticsearch-sink.md
index a014c44b89..c00fd5244f 100644
--- a/site2/website/versioned_docs/version-2.10.0/io-elasticsearch-sink.md
+++ b/site2/website/versioned_docs/version-2.10.0/io-elasticsearch-sink.md
@@ -78,7 +78,6 @@ The configuration of the Elasticsearch sink connector has the following properti
 | `username` | String| false |" " (empty string)| The username used by the connector to connect to the elastic search cluster. <br><br>If `username` is set, then `password` should also be provided. |
 | `password` | String| false | " " (empty string)|The password used by the connector to connect to the elastic search cluster. <br><br>If `username` is set, then `password` should also be provided.  |
 | `ssl` | ElasticSearchSslConfig | false |  | Configuration for TLS encrypted communication |
-| `compatibilityMode` | enum (AUTO,ELASTICSEARCH,ELASTICSEARCH_7,OPENSEARCH) | AUTO |  | Specify compatibility mode with the ElasticSearch cluster. `AUTO` value will try to auto detect the correct compatibility mode to use. Use `ELASTICSEARCH_7` if the target cluster is running ElasticSearch 7 or prior. Use `ELASTICSEARCH` if the target cluster is running ElasticSearch 8 or higher. Use `OPENSEARCH` if the target cluster is running OpenSearch. |
 
 ### Definition of ElasticSearchSslConfig structure: