[cloudstack] 01/01: Merge branch '4.13' into 4.14
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch 4.14 in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 46ead2df710f3713019119ad671ad2b18611ac1e Merge: b0d300c 8afb451 Author: Daan Hoogland AuthorDate: Fri Oct 30 15:54:26 2020 + Merge branch '4.13' into 4.14 .../com/cloud/api/query/ViewResponseHelper.java| 7 +--- .../main/java/com/cloud/server/StatsCollector.java | 14 ++- .../src/main/java/com/cloud/vm/UserVmManager.java | 2 +- .../main/java/com/cloud/vm/UserVmManagerImpl.java | 45 -- 4 files changed, 31 insertions(+), 37 deletions(-)
[cloudstack] 01/01: Merge branch '4.13' into 4.14
This is an automated email from the ASF dual-hosted git repository. nvazquez pushed a commit to branch 4.14 in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 5c6e79b1eb2a428a579a320633ec4f06b594a375 Merge: 3bd1dde f843c53 Author: nvazquez AuthorDate: Sat Jul 18 14:15:46 2020 -0300 Merge branch '4.13' into 4.14 .../cloudstack/storage/datastore/db/SnapshotDataStoreDao.java| 2 ++ .../cloudstack/storage/image/db/SnapshotDataStoreDaoImpl.java| 9 + server/src/main/java/com/cloud/storage/StorageManagerImpl.java | 5 - 3 files changed, 15 insertions(+), 1 deletion(-)
[cloudstack] 01/01: Merge branch '4.13'
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 8173741742aac675af4f1d57c543d664a890d171 Merge: 09697fe 74cf326 Author: Daan Hoogland AuthorDate: Wed May 6 14:46:16 2020 + Merge branch '4.13' .../java/com/cloud/hypervisor/kvm/storage/KVMStorageProcessor.java| 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
[cloudstack] 01/01: Merge branch '4.13'
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 8e4be6dc60ad2bed1d393384d00887b858ee7cf4 Merge: b406e1d 2637a86 Author: Daan Hoogland AuthorDate: Thu Apr 16 15:27:52 2020 +0200 Merge branch '4.13' .../framework/jobs/impl/AsyncJobManagerImpl.java| 21 +++-- .../LibvirtDeleteVMSnapshotCommandWrapper.java | 8 .../router/VirtualNetworkApplianceManager.java | 2 ++ .../router/VirtualNetworkApplianceManagerImpl.java | 7 ++- systemvm/debian/opt/cloud/bin/baremetal-vr.py | 8 systemvm/debian/opt/cloud/bin/cs/CsAddress.py | 5 - systemvm/debian/opt/cloud/bin/cs/CsConfig.py| 3 +++ 7 files changed, 50 insertions(+), 4 deletions(-) diff --cc server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManager.java index eba23f3,c767e56..6edbb44 --- a/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManager.java +++ b/server/src/main/java/com/cloud/network/router/VirtualNetworkApplianceManager.java @@@ -71,44 -67,9 +71,46 @@@ public interface VirtualNetworkApplianc "If true, router minimum required version is checked before sending command", false); static final ConfigKey UseExternalDnsServers = new ConfigKey(Boolean.class, "use.external.dns", "Advanced", "false", "Bypass internal dns, use external dns1 and dns2", true, ConfigKey.Scope.Zone, null); + static final ConfigKey ExposeDnsAndBootpServer = new ConfigKey(Boolean.class, "expose.dns.externally", "Advanced", "true", + "open dns, dhcp and bootp on the public interface", true, ConfigKey.Scope.Zone, null); +// Health checks +static final ConfigKey RouterHealthChecksEnabled = new ConfigKey(Boolean.class, "router.health.checks.enabled", "Advanced", "true", +"If true, router health checks are allowed to be executed and read. If false, all scheduled checks and API calls for on demand checks are disabled.", +true, ConfigKey.Scope.Global, null); +static final ConfigKey RouterHealthChecksBasicInterval = new ConfigKey(Integer.class, "router.health.checks.basic.interval", "Advanced", "3", +"Interval in minutes at which basic router health checks are performed. If set to 0, no tests are scheduled.", +true, ConfigKey.Scope.Global, null); +static final ConfigKey RouterHealthChecksAdvancedInterval = new ConfigKey(Integer.class, "router.health.checks.advanced.interval", "Advanced", "10", +"Interval in minutes at which advanced router health checks are performed. If set to 0, no tests are scheduled.", +true, ConfigKey.Scope.Global, null); +static final ConfigKey RouterHealthChecksConfigRefreshInterval = new ConfigKey(Integer.class, RouterHealthChecksConfigRefreshIntervalCK, "Advanced", "10", +"Interval in minutes at which router health checks config - such as scheduling intervals, excluded checks, etc is updated on virtual routers by the management server. This value should" + +" be sufficiently high (like 2x) from the router.health.checks.basic.interval and router.health.checks.advanced.interval so that there is time between new results generation and results generation for passed data.", +false, ConfigKey.Scope.Global, null); +static final ConfigKey RouterHealthChecksResultFetchInterval = new ConfigKey(Integer.class, RouterHealthChecksResultFetchIntervalCK, "Advanced", "10", +"Interval in minutes at which router health checks results are fetched by management server. On each result fetch, management server evaluates need to recreate VR as per configuration of " + RouterHealthChecksFailuresToRecreateVrCK + +"This value should be sufficiently high (like 2x) from the router.health.checks.basic.interval and router.health.checks.advanced.interval so that there is time between new results generation and fetch.", +false, ConfigKey.Scope.Global, null); +static final ConfigKey RouterHealthChecksFailuresToRecreateVr = new ConfigKey(String.class, RouterHealthChecksFailuresToRecreateVrCK, "Advanced", "", +"Health checks failures defined by this config are the checks that should cause router recreation. If empty the recreate is not attempted for any health check failure. Possible values are comma separated script names " + +"from systemvm’s /root/health_scripts/ (namely - cpu_usage_check.py, dhcp_check.py, disk_space_check.py, dns_check.py, gateways_check.py, haproxy_check.py, iptables_check.py, memory_usage_check.py, router_version_check.py), connectivity.test " + +" or services (namely - loadbalancing.service, webserver.service, dhcp.service) ", +true, ConfigKey.Scope.Zone,
[cloudstack] 01/01: Merge branch '4.13'
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 66f5ecf908f26cf2617cdbb700180b34c7012897 Merge: da865f0 809dc33 Author: Daan Hoogland AuthorDate: Sat Mar 28 19:30:17 2020 +0100 Merge branch '4.13' .../hypervisor/vmware/resource/VmwareResource.java | 11 --- .../com/cloud/network/guru/ControlNetworkGuru.java | 19 --- .../router/VirtualNetworkApplianceManagerImpl.java | 22 -- .../utils/imagestore/ImageStoreUtil.java | 2 +- 4 files changed, 13 insertions(+), 41 deletions(-)
[cloudstack] 01/01: Merge branch '4.13'
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 173174c804754941fe2496ff97dcd62c63b68f6b Merge: 36efbfc e9b652a Author: Daan Hoogland AuthorDate: Tue Mar 24 13:41:45 2020 + Merge branch '4.13' .../com/cloud/upgrade/DatabaseUpgradeChecker.java | 5 +++ .../com/cloud/upgrade/dao/Upgrade41300to41310.java | 52 ++ 2 files changed, 57 insertions(+) diff --cc engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java index ee2b0cd,301594d..671f0ed --- a/engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java +++ b/engine/schema/src/main/java/com/cloud/upgrade/DatabaseUpgradeChecker.java @@@ -66,7 -66,7 +66,8 @@@ import com.cloud.upgrade.dao.Upgrade411 import com.cloud.upgrade.dao.Upgrade41120to41130; import com.cloud.upgrade.dao.Upgrade41120to41200; import com.cloud.upgrade.dao.Upgrade41200to41300; + import com.cloud.upgrade.dao.Upgrade41300to41310; +import com.cloud.upgrade.dao.Upgrade41300to41400; import com.cloud.upgrade.dao.Upgrade420to421; import com.cloud.upgrade.dao.Upgrade421to430; import com.cloud.upgrade.dao.Upgrade430to440; @@@ -188,8 -188,7 +189,12 @@@ public class DatabaseUpgradeChecker imp .next("4.11.2.0", new Upgrade41120to41130()) .next("4.11.3.0", new Upgrade41120to41200()) .next("4.12.0.0", new Upgrade41200to41300()) ++<<< HEAD +.next("4.13.0.0", new Upgrade41300to41400()) +.next("4.13.1.0", new Upgrade41300to41400()) ++=== + .next("4.13.0.0", new Upgrade41300to41310()) ++>>> 4.13 .build(); }
[cloudstack] 01/01: Merge branch '4.13'
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit a62a10c81439fc0af18ddd604c29b2314ff725cc Merge: 0ad2370 4d8a2da Author: Daan Hoogland AuthorDate: Wed Feb 26 16:18:41 2020 +0100 Merge branch '4.13' api/src/main/java/com/cloud/projects/Project.java | 2 +- .../api/command/admin/cluster/ListClustersCmd.java | 8 +++ .../src/main/java/com/cloud/host/dao/HostDao.java | 2 ++ .../main/java/com/cloud/host/dao/HostDaoImpl.java | 13 +++ .../java/com/cloud/vm/dao/DomainRouterDao.java | 7 ++ .../java/com/cloud/vm/dao/DomainRouterDaoImpl.java | 8 +++ .../storage/datastore/db/ImageStoreDao.java| 2 ++ .../storage/datastore/db/ImageStoreDaoImpl.java| 8 +++ .../main/java/com/cloud/utils/db/GenericDao.java | 2 ++ .../java/com/cloud/utils/db/GenericDaoBase.java| 9 .../cloudstack/api/ListClustersMetricsCmd.java | 8 +-- .../apache/cloudstack/api/ListHostsMetricsCmd.java | 6 -- .../cloudstack/api/ListStoragePoolsMetricsCmd.java | 6 -- .../apache/cloudstack/api/ListVMsMetricsCmd.java | 6 -- .../cloudstack/api/ListVolumesMetricsCmd.java | 6 -- .../apache/cloudstack/api/ListZonesMetricsCmd.java | 6 -- .../apache/cloudstack/metrics/MetricsService.java | 3 ++- .../cloudstack/metrics/MetricsServiceImpl.java | 25 ++ .../response/InfrastructureResponse.java | 12 +++ .../java/com/cloud/api/query/QueryManagerImpl.java | 6 +++--- .../com/cloud/server/ManagementServerImpl.java | 2 +- .../java/com/cloud/user/AccountManagerImpl.java| 14 ++-- .../java/com/cloud/user/MockUsageEventDao.java | 5 + ui/scripts/system.js | 10 - 24 files changed, 134 insertions(+), 42 deletions(-)
[cloudstack] 01/01: Merge branch '4.13' into ha-config-to-master
This is an automated email from the ASF dual-hosted git repository. dahn pushed a commit to branch ha-config-to-master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit af98ff812a8a3eee39ce79518cca92be669f6da7 Merge: cc093c6 54cc73a Author: Daan Hoogland AuthorDate: Tue Jan 14 14:37:40 2020 +0100 Merge branch '4.13' into ha-config-to-master .../java/com/cloud/ha/HighAvailabilityManager.java | 46 +- .../main/java/com/cloud/configuration/Config.java | 43 + .../configuration/ConfigurationManagerImpl.java| 174 ++--- .../com/cloud/ha/HighAvailabilityManagerImpl.java | 114 +++--- .../main/java/com/cloud/test/DatabaseConfig.java | 59 +++ 5 files changed, 219 insertions(+), 217 deletions(-) diff --cc server/src/main/java/com/cloud/ha/HighAvailabilityManagerImpl.java index 348a417,076f500..01df157 --- a/server/src/main/java/com/cloud/ha/HighAvailabilityManagerImpl.java +++ b/server/src/main/java/com/cloud/ha/HighAvailabilityManagerImpl.java @@@ -16,32 -16,9 +16,6 @@@ // under the License. package com.cloud.ha; - import java.util.ArrayList; - import java.util.Date; - import java.util.HashMap; - import java.util.List; - import java.util.Map; - import java.util.concurrent.Executors; - import java.util.concurrent.ScheduledExecutorService; - import java.util.concurrent.TimeUnit; - - import javax.inject.Inject; - import javax.naming.ConfigurationException; - - import org.apache.cloudstack.engine.orchestration.service.VolumeOrchestrationService; - import org.apache.cloudstack.framework.config.ConfigKey; - import org.apache.cloudstack.framework.config.Configurable; - import org.apache.cloudstack.framework.config.dao.ConfigurationDao; - import org.apache.cloudstack.managed.context.ManagedContext; - import org.apache.cloudstack.managed.context.ManagedContextRunnable; - import org.apache.cloudstack.management.ManagementServerHost; - import org.apache.log4j.Logger; - import org.apache.log4j.NDC; - --import com.cloud.agent.AgentManager; --import com.cloud.alert.AlertManager; --import com.cloud.cluster.ClusterManagerListener; - import com.cloud.configuration.Config; import com.cloud.dc.ClusterDetailsDao; import com.cloud.dc.DataCenterVO; import com.cloud.dc.HostPodVO; @@@ -103,14 -100,11 +97,16 @@@ import javax.naming.ConfigurationExcept * ha.retry.wait | time to wait before retrying the work item | seconds | 120 || || stop.retry.wait | time to wait * before retrying the stop | seconds | 120 || * } **/ - public class HighAvailabilityManagerImpl extends ManagerBase implements HighAvailabilityManager, ClusterManagerListener, Configurable { + public class HighAvailabilityManagerImpl extends ManagerBase implements Configurable, HighAvailabilityManager, ClusterManagerListener { + + private static final int SECONDS_TO_MILLISECONDS_FACTOR = 1000; protected static final Logger s_logger = Logger.getLogger(HighAvailabilityManagerImpl.class); +private ConfigKey MaxRetries = new ConfigKey<>("Advanced", Integer.class, +"max.retries","5", +"Total number of attempts for trying migration of a VM.", +true, ConfigKey.Scope.Cluster); + WorkerThread[] _workers; boolean _stopped; long _timeToSleep; @@@ -1037,17 -988,23 +1015,37 @@@ return haWorks.size() > 0; } +@Override +public boolean hasPendingMigrationsWork(long vmId) { +List haWorks = _haDao.listPendingMigrationsForVm(vmId); +for (HaWorkVO work : haWorks) { +if (work.getTimesTried() <= _maxRetries) { +return true; +} else { +s_logger.warn("HAWork Job of migration type " + work + " found in database which has max " + +"retries more than " + _maxRetries + " but still not in Done, Cancelled, or Error State"); +} +} +return false; +} ++ + /** + * @return The name of the component that provided this configuration + * variable. This value is saved in the database so someone can easily + * identify who provides this variable. + **/ + @Override + public String getConfigComponentName() { + return HighAvailabilityManager.class.getSimpleName(); + } + + /** + * @return The list of config keys provided by this configuable. + */ + @Override + public ConfigKey[] getConfigKeys() { + return new ConfigKey[] {TimeBetweenCleanup, MaxRetries, TimeToSleep, TimeBetweenFailures, + StopRetryInterval, RestartRetryInterval, MigrateRetryInterval, InvestigateRetryInterval, + HAWorkers, ForceHA}; + } }
[cloudstack] 01/01: Merge branch '4.13' into master
This is an automated email from the ASF dual-hosted git repository. rohit pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cloudstack.git commit 12f0ac674bd3fb6e6fb910379226e0515671ef8e Merge: 50fc045 61b8b77 Author: Rohit Yadav AuthorDate: Tue Sep 10 21:56:23 2019 +0530 Merge branch '4.13' into master