From 8448fe27a617b9d3c8e69cc789f3bf009750e3af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Jandre?= <48719461+JoaoJandre@users.noreply.github.com> Date: Fri, 24 Jun 2022 16:56:29 -0300 Subject: [PATCH] Enable CPU cap for SSVMs and CPVMs (#6420) * Enable CPU cap for SSVMs and CPVMs * Resolve conflicts Co-authored-by: Joao --- .../src/main/resources/META-INF/db/schema-41710to41800.sql | 7 ++++++- .../com/cloud/consoleproxy/ConsoleProxyManagerImpl.java | 1 + .../secondarystorage/SecondaryStorageManagerImpl.java | 1 + 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/engine/schema/src/main/resources/META-INF/db/schema-41710to41800.sql b/engine/schema/src/main/resources/META-INF/db/schema-41710to41800.sql index 7acb3e7c1ad..2465dcc3752 100644 --- a/engine/schema/src/main/resources/META-INF/db/schema-41710to41800.sql +++ b/engine/schema/src/main/resources/META-INF/db/schema-41710to41800.sql @@ -17,4 +17,9 @@ --; -- Schema upgrade from 4.17.1.0 to 4.18.0.0 ---; \ No newline at end of file +--; + +-- Enable CPU cap for default system offerings; +UPDATE `cloud`.`service_offering` so +SET so.limit_cpu_use = 1 +WHERE so.default_use = 1 AND so.vm_type IN ('domainrouter', 'secondarystoragevm', 'consoleproxy', 'internalloadbalancervm', 'elasticloadbalancervm'); \ No newline at end of file diff --git a/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java b/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java index 4b02e7f4226..f984dab21b7 100644 --- a/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java +++ b/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyManagerImpl.java @@ -695,6 +695,7 @@ public class ConsoleProxyManagerImpl extends ManagerBase implements ConsoleProxy new ConsoleProxyVO(id, serviceOffering.getId(), name, template.getId(), template.getHypervisorType(), template.getGuestOSId(), dataCenterId, systemAcct.getDomainId(), systemAcct.getId(), accountManager.getSystemUser().getId(), 0, serviceOffering.isOfferHA()); proxy.setDynamicallyScalable(template.isDynamicallyScalable()); + proxy.setLimitCpuUse(serviceOffering.getLimitCpuUse()); proxy = consoleProxyDao.persist(proxy); try { virtualMachineManager.allocate(name, template, serviceOffering, networks, plan, null); diff --git a/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java b/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java index 10229ae17db..a6d425c0602 100644 --- a/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java +++ b/services/secondary-storage/controller/src/main/java/org/apache/cloudstack/secondarystorage/SecondaryStorageManagerImpl.java @@ -631,6 +631,7 @@ public class SecondaryStorageManagerImpl extends ManagerBase implements Secondar new SecondaryStorageVmVO(id, serviceOffering.getId(), name, template.getId(), template.getHypervisorType(), template.getGuestOSId(), dataCenterId, systemAcct.getDomainId(), systemAcct.getId(), _accountMgr.getSystemUser().getId(), role, serviceOffering.isOfferHA()); secStorageVm.setDynamicallyScalable(template.isDynamicallyScalable()); + secStorageVm.setLimitCpuUse(serviceOffering.getLimitCpuUse()); secStorageVm = _secStorageVmDao.persist(secStorageVm); try { _itMgr.allocate(name, template, serviceOffering, networks, plan, null);