This is an automated email from the ASF dual-hosted git repository.
dahn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack-documentation.git
The following commit(s) were added to refs/heads/main by this push:
new d6a2ce8 Add documentation for Cluster DRS (#334)
d6a2ce8 is described below
commit d6a2ce871e85ec2ae8a8d55507bbf884a6e3478e
Author: Vishesh <[email protected]>
AuthorDate: Fri Oct 27 18:50:12 2023 +0530
Add documentation for Cluster DRS (#334)
---
source/_static/images/drs-cluster-settings.png | Bin 0 -> 200916 bytes
source/_static/images/drs-cluster-tab.png | Bin 0 -> 269893 bytes
source/_static/images/drs-plan.png | Bin 0 -> 53124 bytes
source/adminguide/clusters.rst | 107 +++++++++++++++++++++++++
source/adminguide/index.rst | 7 ++
5 files changed, 114 insertions(+)
diff --git a/source/_static/images/drs-cluster-settings.png
b/source/_static/images/drs-cluster-settings.png
new file mode 100644
index 0000000..28db8ad
Binary files /dev/null and b/source/_static/images/drs-cluster-settings.png
differ
diff --git a/source/_static/images/drs-cluster-tab.png
b/source/_static/images/drs-cluster-tab.png
new file mode 100644
index 0000000..1ec570e
Binary files /dev/null and b/source/_static/images/drs-cluster-tab.png differ
diff --git a/source/_static/images/drs-plan.png
b/source/_static/images/drs-plan.png
new file mode 100644
index 0000000..d68ec71
Binary files /dev/null and b/source/_static/images/drs-plan.png differ
diff --git a/source/adminguide/clusters.rst b/source/adminguide/clusters.rst
new file mode 100644
index 0000000..1c8f131
--- /dev/null
+++ b/source/adminguide/clusters.rst
@@ -0,0 +1,107 @@
+.. Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information#
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+
+Adding Clusters
+---------------
+
+Additional clusters can be added at any time to add a new set of hosts.
+For requirements and instructions, see :ref:`adding-a-cluster`.
+
+
+CloudStack DRS
+--------------
+DRS is a process that can rebalance instances across hypervisor hosts in a
cluster as defined by the algorithm selected.
+There are two algorithms available:
+
+#. **Condensed** spread instances across hosts as densely as possible.
+ This is useful for reducing the number of hosts used.
+#. **Balanced** spread instances across hosts as evenly as possible.
+ This is useful for reducing the load on each host. This is the default
algorithm.
+
+.. note::
+ Deployment planner will not consider DRS while deploying instances.
+
+Configuring DRS
+~~~~~~~~~~~~~~~
+Following are the configuration parameters for DRS.
+
+.. list-table:: DRS related cluster parameters
+ :header-rows: 1
+
+ * - Parameter
+ - Default
+ - Description
+ * - ``drs.plan.expire.interval``
+ - `30`
+ - The interval in days after which the DRS events will be cleaned up.
+ * - ``drs.automatic.enable``
+ - `false`
+ - Enable/disable automatic DRS on a cluster.
+ * - ``drs.automatic.interval``
+ - `60`
+ - The interval in minutes after which a periodic background thread will
schedule DRS for a cluster.
+ * - ``drs.max.migrations``
+ - `50`
+ - Maximum number of instances to be migrated in one DRS execution.
+ * - ``drs.algorithm``
+ - `condensed`
+ - DRS algorithm to be executed on the cluster. Available algorithms -
`condensed`, `balanced`.
+ * - ``drs.imbalance``
+ - `0.4`
+ - Percentage (as a value between 0.0 and 1.0) of imbalance allowed in the
cluster. 1.0 means no imbalance
+ is allowed and 0.0 means imbalance is allowed.
+ * - ``drs.metric``
+ - `memory`
+ - The cluster imbalance metric to use when considering the imbalance in
cluster. Possible values are memory, cpu.
+
+.. note::
+ Scope of ``drs.plan.expire.interval`` is global and for rest is cluster
level.
+
+.. note::
+ Very high value for ``drs.max.migrations`` can result in management server
using up all of it's workers for DRS tasks
+ and not being able to execute other tasks.
+
+Executing manual DRS on a cluster
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+DRS can also be manually executed for a cluster.
+
+Follow these steps to execute DRS for a cluster using the UI:
+
+#. Configure DRS parameters as per the requirement.
+ |drs-cluster-settings.png|
+#. Open DRS tab for the cluster.
+ |drs-cluster-tab.png|
+#. Select the iteration percentage to execute for the cluster.
+#. Click on `Generate DRS Plan` button. A modal will appear showing migrations
+ for that cluster as per the configured algorithm.
+ |drs-plan.png|
+#. Validate the migrations, and click on `Execute` button to execute the
+ suggested migrations.
+
+
+.. note::
+ Only one DRS process can run for a cluster at a time. If you try to run DRS
while another
+ DRS process is running, the second process will fail.
+
+
+.. |drs-cluster-settings.png| image:: /_static/images/drs-cluster-settings.png
+ :alt: DRS settings for a cluster.
+
+.. |drs-cluster-tab.png| image:: /_static/images/drs-cluster-tab.png
+ :alt: DRS tab for a cluster.
+
+.. |drs-plan.png| image:: /_static/images/drs-plan.png
+ :alt: DRS plan for a cluster.
diff --git a/source/adminguide/index.rst b/source/adminguide/index.rst
index 0809f86..aeb3cbf 100644
--- a/source/adminguide/index.rst
+++ b/source/adminguide/index.rst
@@ -89,6 +89,13 @@ Working with Templates & ISOs
templates
+Working with Clusters
+------------------
+
+.. toctree::
+ :maxdepth: 4
+
+ clusters
Working with Hosts
------------------