You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by "Anonymitaet (via GitHub)" <gi...@apache.org> on 2023/07/27 07:15:34 UTC

[GitHub] [pulsar-site] Anonymitaet opened a new pull request, #657: [DO NOT REVIEW][feat][doc] add migration tutorials for broker load balancing

Anonymitaet opened a new pull request, #657:
URL: https://github.com/apache/pulsar-site/pull/657

   ## What change does this PR introduce?
   
   This PR adds migration tutorials for broker load balancing (topics in the red box below)
   
   
   
   ## Doc development plan - Read before review
   
   For the current doc of Broker Load Balancer, we want to tackle the following challenges:
   - Create new documentation to cover all aspects of the feature (especially for the new extensible load balancer).
   - Fill in any content gaps that may exist.
   - Consolidate existing documentation into the new IA, as it is currently scattered and disorganized.
   - Organize the documentation in a cohesive manner, ensuring it flows logically.
   
   Consequently, we’ve created the following content development plans:
   - [Broker Load Balancing | Information Architecture](https://xmind.works/share/dzbyKsnS)  
     This document presents a high-level architecture overview, including how we address content gaps and reconcile existing documentation.
   
   - [Broker Load Balancing | Doc Outline](https://docs.google.com/document/d/1zshyn93XJp8Y-uvYLTnFCrcUWaHxeiTjPqdaUrR6zf0/edit#heading=h.6iz0wf853c5u)
     This document delves into the specifics of the content development plan, providing purpose and context for each section.
   
   - [x] `doc` <!-- Your PR contains doc changes. Please attach the local preview screenshots (run `./preview.sh` at root path) to your PR description, or else your PR might not get merged. -->
   
   ## Ackowledgements
   
   @Demogorgon314  @D-2-Ed many thanks for your technical guidance and great support! 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#issuecomment-1658322990

   @Demogorgon314 @heesung-sn @D-2-Ed this doc has been reviewed by you in [Broker Load Balancing | Migration](https://docs.google.com/document/d/1S5U4cZhEhvnULWkmKEwoIJcwXejLfsx9XNaNG_HfJRw/edit), can you take a quick look at this PR?
   
   @momo-jun @Huanli-Meng could you please help review this PR?
   
   Thank you all!


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet merged pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet merged PR #657:
URL: https://github.com/apache/pulsar-site/pull/657


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on a diff in pull request #657: [DO NOT REVIEW][feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1275834690


##########
sidebars.json:
##########
@@ -35,7 +35,8 @@
             "concepts-broker-load-balancing-features",
             "concepts-broker-load-balancing-benefits",
             "concepts-broker-load-balancing-concepts",
-            "concepts-broker-load-balancing-types"
+            "concepts-broker-load-balancing-types",
+            "concepts-broker-load-balancing-migration"

Review Comment:
   For reviewers: I know here is not the perfect place, but there is no better place to locate this tutorial, so I put all types of docs under the same subject "Broker Load Balancing". I'll adjust it once there is a better solution.
   
   <img width="305" alt="image" src="https://github.com/apache/pulsar-site/assets/50226895/8a41222b-a43f-4408-85e7-b43654e3c7e6">
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Demogorgon314 commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Demogorgon314 (via GitHub)" <gi...@apache.org>.
Demogorgon314 commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281299256


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \

Review Comment:
   ```suggestion
       pulsar-admin brokers update-dynamic-config \
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] heesung-sn commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "heesung-sn (via GitHub)" <gi...@apache.org>.
heesung-sn commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1280984113


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use

Review Comment:
   Change "when to use" to "Available Shedding Strategy."



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl

Review Comment:
   @Demogorgon314 does this loadManagerClassName change work dynamically? I don't think this way is recommended due to potential initilaization errors.



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+    ```
+
+    You do not need to restart the Pulsar cluster. The new settings will take effect after 1 to 2 minutes.
+
+## Migrate from modular to extensible broker load balancer
+
+You can migrate from the modular to the extensible broker load balancer, by manually changing settings in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. [Upgrade the Pulsar cluster](./helm-upgrade.md) to 3.0.x.
+
+2. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+3. Change the following settings in the broker.conf file:
+
+   - Update [broker load balancer](./concepts-broker-load-balancing-overview.md) by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ExtensibleLoadManagerImpl`. 
+
+   - Update [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) by setting `loadBalancerLoadSheddingStrategy` to `TransferShedder`. 
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ExtensibleLoadManagerImpl 
+
+    loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.extensions.scheduler.TransferShedder
+    ```
+
+    :::note
+
+      - The [extensible broker load balancer](./concepts-broker-load-balancing-types.md) is **available in Pulsar 3.0.0** or later.
+      - The [TransferShedder unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) is **only available** in the [extensible load balancer](./concepts-broker-load-balancing-types.md).
+  
+    :::
+
+4. Restart the Pulsar cluster. The new settings will take effect after the restart.  
+
+## Migrate from extensible to modular broker load balancer
+
+You can migrate from the extensible to the modular broker load balancer, by manually changing the setting in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+2. Change the following settings in the broker.conf file:
+   
+   - Update broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to ModularLoadManagerImpl

Review Comment:
   Could you remove the code link as the config file lines are updated frequently?



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+    ```
+
+    You do not need to restart the Pulsar cluster. The new settings will take effect after 1 to 2 minutes.
+
+## Migrate from modular to extensible broker load balancer
+
+You can migrate from the modular to the extensible broker load balancer, by manually changing settings in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. [Upgrade the Pulsar cluster](./helm-upgrade.md) to 3.0.x.
+
+2. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+3. Change the following settings in the broker.conf file:
+
+   - Update [broker load balancer](./concepts-broker-load-balancing-overview.md) by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ExtensibleLoadManagerImpl`. 

Review Comment:
   Could you remove the code link as the config file lines are updated frequently?



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+    ```
+
+    You do not need to restart the Pulsar cluster. The new settings will take effect after 1 to 2 minutes.
+
+## Migrate from modular to extensible broker load balancer
+
+You can migrate from the modular to the extensible broker load balancer, by manually changing settings in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. [Upgrade the Pulsar cluster](./helm-upgrade.md) to 3.0.x.

Review Comment:
   to a version greater or equal to `3.0.0.`



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.

Review Comment:
   Could you remove the code link as the config file lines are updated frequently?



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+    ```
+
+    You do not need to restart the Pulsar cluster. The new settings will take effect after 1 to 2 minutes.
+
+## Migrate from modular to extensible broker load balancer
+
+You can migrate from the modular to the extensible broker load balancer, by manually changing settings in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. [Upgrade the Pulsar cluster](./helm-upgrade.md) to 3.0.x.
+
+2. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+3. Change the following settings in the broker.conf file:
+
+   - Update [broker load balancer](./concepts-broker-load-balancing-overview.md) by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ExtensibleLoadManagerImpl`. 
+
+   - Update [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) by setting `loadBalancerLoadSheddingStrategy` to `TransferShedder`. 
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ExtensibleLoadManagerImpl 
+
+    loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.extensions.scheduler.TransferShedder
+    ```
+
+    :::note
+
+      - The [extensible broker load balancer](./concepts-broker-load-balancing-types.md) is **available in Pulsar 3.0.0** or later.
+      - The [TransferShedder unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) is **only available** in the [extensible load balancer](./concepts-broker-load-balancing-types.md).
+  
+    :::
+
+4. Restart the Pulsar cluster. The new settings will take effect after the restart.  
+
+## Migrate from extensible to modular broker load balancer
+
+You can migrate from the extensible to the modular broker load balancer, by manually changing the setting in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+2. Change the following settings in the broker.conf file:
+   
+   - Update broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to ModularLoadManagerImpl
+    
+   - Update [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) to OverloadShedder, ThresholdShedder, or UniformLoadShedder based on your needs.
+
+    ```
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+
+    loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder
+    ```
+
+    :::note
+
+    [TransferShedder](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) is **only supported** in the extensible broker load balancer, so you need to change TransferShedder to other [bundle unloading strategies](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies).
+
+    :::
+
+3. Restart the Pulsar cluster. The new settings will take effect after the restart.  
+

Review Comment:
   @Demogorgon314 
   
   I think we need to explain how Pulsar optimizes the lookup/assignment during this migration. `Topic Lookup and Assignment Redirection during Migration` Please provide the migration logic as you worked on this part.
   
   For example,
   During migration from modular to extensible, the lookup and assignment will be redirected to the brokers with the extensible load balancer.
   
   During migration from extensible to modular, the lookup and assignment will be redirected to the brokers with the modular load balancer.
   
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281215423


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.

Review Comment:
   This is a permanlink which will not be changed
   <img width="827" alt="image" src="https://github.com/apache/pulsar-site/assets/50226895/7c81c4ba-6b31-4f2e-9984-66f69db41f6f">
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281214726


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use

Review Comment:
   "Available Shedding Strategy" is provided below in a table
   <img width="485" alt="image" src="https://github.com/apache/pulsar-site/assets/50226895/2978f148-4fe2-4771-b66d-45bca2716d58">
   
   Here want to show "when to use" to give users reminders that they can use a certain type of migration in a certain case
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281443738


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+    ```
+
+    You do not need to restart the Pulsar cluster. The new settings will take effect after 1 to 2 minutes.
+
+## Migrate from modular to extensible broker load balancer
+
+You can migrate from the modular to the extensible broker load balancer, by manually changing settings in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. [Upgrade the Pulsar cluster](./helm-upgrade.md) to 3.0.x.
+
+2. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+3. Change the following settings in the broker.conf file:
+
+   - Update [broker load balancer](./concepts-broker-load-balancing-overview.md) by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ExtensibleLoadManagerImpl`. 
+
+   - Update [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) by setting `loadBalancerLoadSheddingStrategy` to `TransferShedder`. 
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ExtensibleLoadManagerImpl 
+
+    loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.extensions.scheduler.TransferShedder
+    ```
+
+    :::note
+
+      - The [extensible broker load balancer](./concepts-broker-load-balancing-types.md) is **available in Pulsar 3.0.0** or later.
+      - The [TransferShedder unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) is **only available** in the [extensible load balancer](./concepts-broker-load-balancing-types.md).
+  
+    :::
+
+4. Restart the Pulsar cluster. The new settings will take effect after the restart.  
+
+## Migrate from extensible to modular broker load balancer
+
+You can migrate from the extensible to the modular broker load balancer, by manually changing the setting in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ```
+
+2. Change the following settings in the broker.conf file:
+   
+   - Update broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to ModularLoadManagerImpl
+    
+   - Update [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) to OverloadShedder, ThresholdShedder, or UniformLoadShedder based on your needs.
+
+    ```
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+
+    loadBalancerLoadSheddingStrategy=org.apache.pulsar.broker.loadbalance.impl.ThresholdShedder
+    ```
+
+    :::note
+
+    [TransferShedder](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) is **only supported** in the extensible broker load balancer, so you need to change TransferShedder to other [bundle unloading strategies](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies).
+
+    :::
+
+3. Restart the Pulsar cluster. The new settings will take effect after the restart.  
+

Review Comment:
   OK, updated in https://github.com/apache/pulsar-site/pull/657/files#diff-2abdb541a434c7250793845da41718b322344e45cc83098c3c57addacc4b5a6aR81 and https://github.com/apache/pulsar-site/pull/657/files#diff-2abdb541a434c7250793845da41718b322344e45cc83098c3c57addacc4b5a6aR122



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281440589


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl
+    ```
+
+    You do not need to restart the Pulsar cluster. The new settings will take effect after 1 to 2 minutes.
+
+## Migrate from modular to extensible broker load balancer
+
+You can migrate from the modular to the extensible broker load balancer, by manually changing settings in the broker.conf file.
+
+:::note
+
+The pulsar-admin tool is not supported for this migration.
+
+:::
+
+### Change broker.conf file 
+
+1. [Upgrade the Pulsar cluster](./helm-upgrade.md) to 3.0.x.

Review Comment:
   OK, updated



##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl

Review Comment:
   OK, then the doc keep unchanged



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#issuecomment-1661564960

   @heesung-sn do you have more comments? If no, I'll merge this PR.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#issuecomment-1658320046

   The preview looks good:
   
   ![image](https://github.com/apache/pulsar-site/assets/50226895/3f33fcfe-d0cc-4649-b3d1-647b58026786)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Demogorgon314 commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Demogorgon314 (via GitHub)" <gi...@apache.org>.
Demogorgon314 commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281300330


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \
+    --config loadManagerClassName \
+    --value org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl

Review Comment:
   Yes, I tried out `SimpleLoadManagerImpl` with `ModularLoadManagerImpl`, and it functions properly even after dynamic changes, but when I switched from `ModularLoadManagerImpl` to `ExtensibleLoadManagerImpl`, it did not work.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [pulsar-site] Anonymitaet commented on a diff in pull request #657: [feat][doc] add migration tutorials for broker load balancing

Posted by "Anonymitaet (via GitHub)" <gi...@apache.org>.
Anonymitaet commented on code in PR #657:
URL: https://github.com/apache/pulsar-site/pull/657#discussion_r1281442752


##########
docs/concepts-broker-load-balancing-migration.md:
##########
@@ -0,0 +1,170 @@
+---
+id: concepts-broker-load-balancing-migration
+title: Migration
+sidebar_label: "Migration"
+---
+
+Pulsar has 3 types of broker load balancers, that is, simple, modular, and extensible. 
+
+You can perform the following migrations.
+
+Migration|When to use
+|---|---
+[Migrate from simple to modular](#migrate-from-simple-to-modular-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+[Migrate from modular to extensible](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of TransferShedder.
+[Migrate from extensible to modular](#migrate-from-modular-to-extensible-broker-load-balancer)| If you want to use the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies) of OverloadShedder, ThresholdShedder, or UniformLoadShedder.
+
+:::note
+
+It is not recommended to migrate from the modular or extensible to the simple broker load balancer since the simple broker load balancer is deprecated and no longer in use.
+
+:::
+
+
+## Considerations
+
+Before migrating from one broker load balancer type to another, review the relationship between [broker load balancer type](./concepts-broker-load-balancing-types.md), Pulsar version, and [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). You may need to upgrade Pulsar versions or update the [bundle unloading strategy](./concepts-broker-load-balancing-concepts.md#bundle-unloading-strategies). Below are brief summaries.
+
+This broker load balancer type | is available in this Pulsar version
+|---|---
+Simple|All versions
+Modular|1.7 and later
+Extensible|3.0 and later
+
+This bundle unloading strategy|is available for this broker load balancer type|in available this Pulsar version
+|---|---|---
+OverloadShedder|Modular|1.18 and later
+ThresholdShedder|Modular|2.6 and later
+UniformLoadShedder|Modular|2.10 and later
+TransferShedder|Extensible|3.0 and later
+
+## Migrate from simple to modular broker load balancer
+
+You can migrate from the simple to the modular broker load balancer, by manually changing the configuration settings in the broker.conf file or by using the pulsar-admin tool. 
+
+### Change broker.conf file 
+
+1. Access to the broker.conf file.
+
+    ```bash
+    vim apache-pulsar-@pulsar:version@/conf/broker.conf
+    ``````
+
+2. Change the broker load balancer by setting [loadManagerClassName](https://github.com/apache/pulsar/blob/69d7a2bf14555f11a716a9545c5cf391d8179a27/conf/broker.conf#L1309C20-L1309C20) to `ModularLoadManagerImpl` in the broker.conf file.
+
+    ```conf
+    loadManagerClassName=org.apache.pulsar.broker.loadbalance.extensions.ModularLoadManagerImpl
+    ```
+
+3. Restart the Pulsar cluster. The new setting will take effect after the restart.  
+
+### Use pulsar-admin tool
+
+1. Access the [pulsar-admin tool](https://pulsar.apache.org/docs/next/reference-cli-tools/).
+
+    ```bash
+    cd apache-pulsar-@pulsar:version@/bin
+    ```
+
+2. Set `--config` to `loadManagerClassName` and `--value` to `org.apache.pulsar.broker.loadbalance.impl.ModularLoadManagerImpl`.
+
+    ```bash
+    pulsar-admin update-dynamic-config \

Review Comment:
   OK,updated



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@pulsar.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org