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

sureshanaparti pushed a commit to branch 4.16
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/4.16 by this push:
     new a8cc261  [vmware, ssvm] Scale down of ssvm (#6042)
a8cc261 is described below

commit a8cc2611434b17803bd9b50cc3f986f22d0552c7
Author: Pearl Dsilva <[email protected]>
AuthorDate: Fri Feb 25 15:45:10 2022 +0530

    [vmware, ssvm] Scale down of ssvm (#6042)
    
    * [vmware, ssvm] Scale down of ssvm
    
    * address comments - change variable name
---
 .../src/main/java/com/cloud/storage/StorageManager.java               | 3 +++
 server/src/main/java/com/cloud/storage/StorageManagerImpl.java        | 3 ++-
 .../secondarystorage/PremiumSecondaryStorageManagerImpl.java          | 4 +++-
 3 files changed, 8 insertions(+), 2 deletions(-)

diff --git 
a/engine/components-api/src/main/java/com/cloud/storage/StorageManager.java 
b/engine/components-api/src/main/java/com/cloud/storage/StorageManager.java
index a62876a..c00273e 100644
--- a/engine/components-api/src/main/java/com/cloud/storage/StorageManager.java
+++ b/engine/components-api/src/main/java/com/cloud/storage/StorageManager.java
@@ -143,6 +143,9 @@ public interface StorageManager extends StorageService {
     ConfigKey<Integer>  SecStorageMaxMigrateSessions = new 
ConfigKey<Integer>("Advanced", Integer.class, 
"secstorage.max.migrate.sessions", "2",
             "The max number of concurrent copy command execution sessions that 
an SSVM can handle", false, ConfigKey.Scope.Global);
 
+    ConfigKey<Boolean>  SecStorageVMAutoScaleDown = new 
ConfigKey<Boolean>("Advanced", Boolean.class, "secstorage.vm.auto.scale.down", 
"false",
+            "Setting this to 'true' will auto scale down SSVMs", true, 
ConfigKey.Scope.Global);
+
     ConfigKey<Integer> MaxDataMigrationWaitTime = new 
ConfigKey<Integer>("Advanced", Integer.class, "max.data.migration.wait.time", 
"15",
             "Maximum wait time for a data migration task before spawning a new 
SSVM", false, ConfigKey.Scope.Global);
     ConfigKey<Boolean> DiskProvisioningStrictness = new 
ConfigKey<Boolean>("Storage", Boolean.class, 
"disk.provisioning.type.strictness", "false",
diff --git a/server/src/main/java/com/cloud/storage/StorageManagerImpl.java 
b/server/src/main/java/com/cloud/storage/StorageManagerImpl.java
index a0b5406..400f953 100644
--- a/server/src/main/java/com/cloud/storage/StorageManagerImpl.java
+++ b/server/src/main/java/com/cloud/storage/StorageManagerImpl.java
@@ -3331,7 +3331,8 @@ public class StorageManagerImpl extends ManagerBase 
implements StorageManager, C
                 SecStorageMaxMigrateSessions,
                 MaxDataMigrationWaitTime,
                 DiskProvisioningStrictness,
-                PreferredStoragePool
+                PreferredStoragePool,
+                SecStorageVMAutoScaleDown
         };
     }
 
diff --git 
a/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/PremiumSecondaryStorageManagerImpl.java
 
b/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/PremiumSecondaryStorageManagerImpl.java
index 74d1b50..23b4e30 100644
--- 
a/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/PremiumSecondaryStorageManagerImpl.java
+++ 
b/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/PremiumSecondaryStorageManagerImpl.java
@@ -184,7 +184,9 @@ public class PremiumSecondaryStorageManagerImpl extends 
SecondaryStorageManagerI
             return new Pair<AfterScanAction, Object>(AfterScanAction.expand, 
SecondaryStorageVm.Role.commandExecutor);
 
         }
-        scaleDownSSVMOnLoad(alreadyRunning, activeCmds, copyCmdsInPipeline);
+        if (StorageManager.SecStorageVMAutoScaleDown.value()) {
+            scaleDownSSVMOnLoad(alreadyRunning, activeCmds, 
copyCmdsInPipeline);
+        }
         return new Pair<AfterScanAction, Object>(AfterScanAction.nop, null);
     }
 

Reply via email to