-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMyrtusSmartTrafficManagementTopologyTemplate.tosca
More file actions
113 lines (111 loc) · 3.78 KB
/
Copy pathMyrtusSmartTrafficManagementTopologyTemplate.tosca
File metadata and controls
113 lines (111 loc) · 3.78 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
tosca_definitions_version: tosca_simple_yaml_1_3
metadata:
name: "TrafficApplication"
targetNamespace: "example.eu.myrtus.servicetemplates"
topology_template:
node_templates:
groups:
compute_nodes:
node_templates:
EdgeComputeNode:
type: example.eu.myrtus.nodetypes.myrtus.dpe.compute
properties:
cpu_cores: "4"
memory_gb: "8"
layer: "edge"
num_instances: "50"
FogComputeNode:
type: example.eu.myrtus.nodetypes.myrtus.dpe.compute
properties:
cpu_cores: "16"
memory_gb: "32"
layer: "fog"
num_instances: "10"
CloudComputeNode:
type: example.eu.myrtus.nodetypes.myrtus.dpe.compute
properties:
cpu_cores: "64"
memory_gb: "32"
layer: "cloud"
num_instances: "1"
software_component_nodes:
node_templates:
MultisensorMerger:
type: example.eu.myrtus.nodetypes.myrtus.DPE.nodes.LakesidePod
metadata:
dataSensitivity: "Medium"
dataIntegrity: "High"
properties:
dockerImage: "ci.hesi.energy:5000/myrtus/multi_sensor_merger"
port: "5557"
required_cpu_cores: "4"
required_memory_gb: "8"
creation_probability: "0.4"
min_exec_steps: "60"
max_exec_steps: "120"
layer_restriction: "none"
requirements:
- connects:
node: ''
relationship:
capability: service
- host:
node: ''
relationship:
capability: host
MapMatcher:
type: example.eu.myrtus.nodetypes.myrtus.DPE.nodes.LakesidePod
metadata:
dataSensitivity: "Medium"
dataIntegrity: "High"
properties:
dockerImage: "ci.hesi.energy:5000/myrtus/map-matcher"
port: "5557"
required_cpu_cores: "2"
required_memory_gb: "4"
creation_probability: "0.3"
min_exec_steps: "30"
max_exec_steps: "90"
layer_restriction: "none"
requirements:
- host:
node: ''
relationship:
capability: host
RedLightDetection:
type: example.eu.myrtus.nodetypes.myrtus.DPE.nodes.LakesidePod
metadata:
dataSensitivity: "Medium"
dataIntegrity: "High"
properties:
dockerImage: "ci.hesi.energy:5000/myrtus/sensor_tracker"
port: "5557"
required_memory_gb: "4"
required_cpu_cores: "2"
creation_probability: "0.3"
min_exec_steps: "10"
max_exec_steps: "60"
layer_restriction: "edge"
requirements:
- host:
node: ''
relationship:
capability: host
policies:
communication_cost_objective:
type: tosca.policies.Performance
description: Objective to minimize the total communication cost for all inter-component connections.
properties:
target_metric: "total_communication_cost"
objective: "minimize"
targets: [MultisensorMerger, MapMatcher, RedLightDetection]
dependency_objective:
type: tosca.policies.Performance
description: Objective to minimize the dependency on more expensive parts of the architecture
properties:
target_metric: "dependency_score"
objective: "minimize"
edge_weight: "0.1"
fog_weight: "0.5"
cloud_weight: "1.0"
targets: [MultisensorMerger, MapMatcher, RedLightDetection]