You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streampipes.apache.org by go...@apache.org on 2021/05/10 21:03:13 UTC
[incubator-streampipes] 02/07: Merge branch 'edge-extensions' of
https://github.com/apache/incubator-streampipes into edge-extensions
This is an automated email from the ASF dual-hosted git repository.
gomm pushed a commit to branch edge-extensions
in repository https://gitbox.apache.org/repos/asf/incubator-streampipes.git
commit 77edacb7c53ce6dd2e9384e1b4193293af8d4e2b
Merge: bf01f58 c84435e
Author: Daniel Gomm <da...@outlook.de>
AuthorDate: Wed Apr 28 21:26:39 2021 +0200
Merge branch 'edge-extensions' of https://github.com/apache/incubator-streampipes into edge-extensions
Conflicts:
streampipes-node-controller/src/main/java/org/apache/streampipes/node/controller/management/resource/ResourceManager.java
.idea/runConfigurations/node_controller_cloud.xml | 2 +-
.../runConfigurations/node_controller_edge_01.xml | 4 +-
.../node_controller_edge_01__kafka_.xml | 2 +-
.../runConfigurations/node_controller_edge_02.xml | 2 +-
.idea/runConfigurations/node_controller_fog.xml | 2 +-
.../streampipes/model/pipeline/Pipeline.java | 40 ++
.../streampipes/model/resource/Hardware.java | 42 ++
.../model/resource/NodeResourceRequirement.java | 2 +-
streampipes-node-controller/pom.xml | 5 +
.../node/controller/api/AbstractResource.java | 2 +
.../node/controller/api/HealthCheckResource.java | 4 +-
.../api/NodeInfoDescriptionResource.java | 3 +-
.../node/controller/config/ConfigKeys.java | 51 ---
.../node/controller/config/EnvConfigParam.java | 84 ++++
.../node/controller/config/NodeConfiguration.java | 496 +++++++++++++++++++++
.../controller/config/NodeControllerConfig.java | 290 ------------
.../node/controller/config/utils/ConfigUtils.java | 69 +++
.../container/DockerExtensionsContainer.java | 6 +-
.../controller/container/DockerKafkaContainer.java | 4 +-
.../management/NodeControllerSubmitter.java | 17 +-
.../management/connect/ConnectManager.java | 11 +-
.../management/janitor/JanitorManager.java | 4 +-
.../controller/management/node/NodeConstants.java | 29 +-
.../controller/management/node/NodeManager.java | 11 +-
.../orchestrator/DockerOrchestratorManager.java | 2 -
.../docker/AbstractStreamPipesDockerContainer.java | 20 +-
.../docker/DockerContainerDeclarerSingleton.java | 4 +-
.../orchestrator/docker/utils/DockerUtils.java | 1 -
.../management/pe/InvocableElementManager.java | 12 +-
.../relay/bridges/MultiBrokerBridge.java | 4 +-
.../management/resource/ResourceManager.java | 15 +-
.../pipeline/AbstractPipelineExecutor.java | 31 +-
.../manager/matching/InvocationGraphBuilder.java | 30 +-
.../management/cluster/AbstractClusterManager.java | 8 +-
.../streampipes/rest/impl/PipelineResource.java | 5 +
.../builder/AbstractProcessingElementBuilder.java | 2 +-
.../sdk/builder/ResourceRequirementsBuilder.java | 109 +++++
.../sdk/helpers/NodeResourceRequirements.java | 9 +
.../apache/streampipes/vocabulary/StreamPipes.java | 3 +
ui/src/app/core-model/gen/streampipes-model.ts | 16 +-
.../pipeline-assembly.component.ts | 12 +
.../node-tag-selector.component.ts | 15 +
.../save-pipeline/save-pipeline.component.html | 43 +-
.../save-pipeline/save-pipeline.component.ts | 97 +++-
44 files changed, 1148 insertions(+), 472 deletions(-)
diff --cc streampipes-node-controller/src/main/java/org/apache/streampipes/node/controller/management/resource/ResourceManager.java
index a57acba,e0d185b..1e3db98
--- a/streampipes-node-controller/src/main/java/org/apache/streampipes/node/controller/management/resource/ResourceManager.java
+++ b/streampipes-node-controller/src/main/java/org/apache/streampipes/node/controller/management/resource/ResourceManager.java
@@@ -19,13 -19,11 +19,11 @@@ package org.apache.streampipes.node.con
import com.fasterxml.jackson.core.JsonProcessingException;
import org.apache.streampipes.commons.exceptions.SpRuntimeException;
-import org.apache.streampipes.node.controller.config.NodeConfiguration;
+import org.apache.streampipes.node.controller.config.NodeControllerConfig;
- import org.apache.streampipes.node.controller.management.offloading.model.OffloadingStrategy;
- import org.apache.streampipes.node.controller.management.offloading.OffloadingPolicyManager;
- import org.apache.streampipes.node.controller.management.offloading.model.policies.Comparator;
- import org.apache.streampipes.node.controller.management.offloading.model.policies.ThresholdViolationOffloadingPolicy;
- import org.apache.streampipes.node.controller.management.offloading.model.property.CPULoadResourceProperty;
- import org.apache.streampipes.node.controller.management.offloading.model.selection.RandomSelectionStrategy;
+ import org.apache.streampipes.node.controller.management.offloading.AutoOffloadingManager;
+ import org.apache.streampipes.node.controller.management.offloading.policies.Comparator;
+ import org.apache.streampipes.node.controller.management.offloading.policies.MultiOccurrenceThresholdViolationPolicy;
+ import org.apache.streampipes.node.controller.management.offloading.policies.OffloadingPolicy;
import org.apache.streampipes.node.controller.management.resource.model.ResourceMetrics;
import org.apache.streampipes.node.controller.management.resource.utils.DiskSpace;
import org.apache.streampipes.node.controller.management.resource.utils.ResourceUtils;
@@@ -50,13 -48,11 +48,16 @@@ public class ResourceManager
private final OperatingSystem os = si.getOperatingSystem();
private final Calendar cal = Calendar.getInstance();
private final ResourceMetrics resourceMetrics = new ResourceMetrics();
+ // Offloading policy
+ private final OffloadingPolicy<Float> multiStepThresholdPolicy = new MultiOccurrenceThresholdViolationPolicy<>(5,
+ Comparator.GREATER,99f, 5);
- private ResourceManager() {}
+ private ResourceManager() {
+ //Offloading Policy
+ OffloadingPolicyManager.getInstance().addOffloadingStrategy(new OffloadingStrategy<Float>(new
+ ThresholdViolationOffloadingPolicy<>(5, Comparator.GREATER,0.6f, 5),
+ new CPULoadResourceProperty(), new RandomSelectionStrategy()));
+ }
public static ResourceManager getInstance() {
if (instance == null) {