Select Git revision
DECIDE.json
-
Escalante Martinez, Marisa authoredEscalante Martinez, Marisa authored
DECIDE.json 56.43 KiB
{
"id": "73b023f0-6bf6-4084-bb17-e562f36dd16c",
"name": "SockShop",
"description": "A socks shop",
"version": "0.2.2-alpha",
"highTechnologicalRisk": false,
"consulJoinIp": "82.223.11.174",
"nfrs": [
{
"type": "Availability",
"tags": [
"Application"
],
"abstractValue": "Medium",
"value": 80.0,
"unit": "percentage"
},
{
"type": "Performance",
"tags": [
"Application"
],
"abstractValue": "Medium",
"value": 20.0,
"unit": "millisecond"
}
],
"microservices": [
{
"id": "e5a4a10d-ce95-490a-9ce6-aee2a8846e8d",
"name": "Front end",
"classification": "Computing Public IP",
"stateful": false,
"programmingLanguage": "HTML",
"tags": [
"Application"
],
"publicIP": true,
"endpoints": [
""
],
"detachableResources": [
{
"id": "edb55ae1-2e8d-4beb-992e-e97b8f0011df",
"name": "none",
"db": false,
"classification": "storage"
}
]
},
{
"id": "b8b0207a-5e87-45d6-a071-212eb69b1708",
"name": "catalogue",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Go",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "4b8d3115-1103-4a1e-9d1c-304e9384993f",
"name": "MySQL",
"db": true,
"sql": true,
"classification": "db"
}
]
},
{
"id": "91aa8048-8849-4760-a4cc-a47b25bd717a",
"name": "carts",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Java",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "afc60316-ce8b-41ac-ae4b-f4627f773860",
"name": "Mongo",
"db": true,
"classification": "db"
}
]
},
{
"id": "97d68120-9e7c-4b9c-b8c8-c7a4bfe067ed",
"name": "orders",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Java",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "2ae95c64-1156-4c88-8897-b879baa1348b",
"name": "Mongo",
"db": true,
"classification": "db"
}
]
},
{
"id": "6b8d6b05-ee2d-4ec8-b679-c37719513d0f",
"name": "payment",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Go",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "b63faa0e-cdc6-43cd-b3ee-d04a3829df04",
"name": "none",
"db": false,
"classification": "storage"
}
]
},
{
"id": "c3fb92ba-497e-4d06-b1d0-928b71c0c662",
"name": "queue-master",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Java",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "cb42120b-04fb-4c3b-9254-bb8d0017a723",
"name": "RabbitMQ",
"db": false,
"classification": "queue system"
}
]
},
{
"id": "bf9bc26a-ab23-423c-92e0-9cf898619b10",
"name": "shipping",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Java",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "4cb9cedb-40df-4a57-8e6a-f2aa5d4db1eb",
"name": "none",
"db": false,
"classification": "storage"
}
]
},
{
"id": "0c8deb9f-ffb6-4489-b416-e60532c67b1d",
"name": "user",
"classification": "Computing",
"stateful": false,
"programmingLanguage": "Go",
"tags": [
"Application"
],
"publicIP": false,
"endpoints": [
""
],
"detachableResources": [
{
"id": "bd2c3ec0-bc1e-4bd7-9c68-c945e23fcf87",
"name": "Mongo",
"db": true,
"classification": "db"
}
]
}
],
"mcsla": {
"sla": {
"description": "SockShop Service Level Agreement",
"objectives": [
{
"termName": "Availability",
"type": "slo",
"value": "80.0",
"unit": "percentage",
"conditionStatement": "greaterOrEqual",
"metrics": [
{
"id": "CSA_AV_001",
"descriptor": "Aggregation of microservices",
"scale": "ratio",
"expression": {
"expression": "AVAILABILITY_AGGREGATION_SUMTYPE",
"expressionLanguage": "predefined",
"note": "availability(term<1>, ...term<n>) = 100% - (sum<i=1..n>(100% - term<i>))",
"unit": "percentage"
},
"underlyingMetrics": [
{
"id": "e5a4a10d-ce95-490a-9ce6-aee2a8846e8d",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "Front end",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "b8b0207a-5e87-45d6-a071-212eb69b1708",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "catalogue",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "91aa8048-8849-4760-a4cc-a47b25bd717a",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "carts",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "97d68120-9e7c-4b9c-b8c8-c7a4bfe067ed",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "orders",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "6b8d6b05-ee2d-4ec8-b679-c37719513d0f",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "payment",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "c3fb92ba-497e-4d06-b1d0-928b71c0c662",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "queue-master",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "bf9bc26a-ab23-423c-92e0-9cf898619b10",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "shipping",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
},
{
"id": "0c8deb9f-ffb6-4489-b416-e60532c67b1d",
"descriptor": "Availability based on meantime between failure and meantime between recovery",
"scale": "ratio",
"note": "user",
"expression": {
"expression": "AVAILABILITY_MTBFMTTR",
"expressionLanguage": "predefined",
"note": "100 * (MTBF/(MTBF + MTTR))",
"unit": "percentage"
}
}
]
}
]
},
{
"termName": "Performance",
"type": "slo",
"value": "20.0",
"unit": "millisecond",
"conditionStatement": "lessOrEqual",
"metrics": [
{
"id": "CSA_PE_001",
"descriptor": "Maximum response time for a request",
"scale": "ratio",
"expression": {
"expression": "AGGREGATION_MAXTYPE",
"expressionLanguage": "predefined",
"note": "max(term<1>, ...term<n>)",
"unit": "millisecond"
},
"underlyingMetrics": [
{
"id": "e5a4a10d-ce95-490a-9ce6-aee2a8846e8d",
"scale": "ratio",
"note": "Front end",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "b8b0207a-5e87-45d6-a071-212eb69b1708",
"scale": "ratio",
"note": "catalogue",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "91aa8048-8849-4760-a4cc-a47b25bd717a",
"scale": "ratio",
"note": "carts",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "97d68120-9e7c-4b9c-b8c8-c7a4bfe067ed",
"scale": "ratio",
"note": "orders",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "6b8d6b05-ee2d-4ec8-b679-c37719513d0f",
"scale": "ratio",
"note": "payment",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "c3fb92ba-497e-4d06-b1d0-928b71c0c662",
"scale": "ratio",
"note": "queue-master",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "bf9bc26a-ab23-423c-92e0-9cf898619b10",
"scale": "ratio",
"note": "shipping",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
},
{
"id": "0c8deb9f-ffb6-4489-b416-e60532c67b1d",
"scale": "ratio",
"note": "user",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"unit": "millisecond"
}
}
]
}
]
}
]
},
"csSlas": {
"16": {
"description": "m4.4xlarge",
"coveredServices": [
"Virtual Machine"
],
"objectives": [
{
"termName": "Region",
"type": "sqo",
"value": "Europe",
"conditionStatement": "equal"
},
{
"termName": "Zone",
"type": "sqo",
"value": "Spain",
"conditionStatement": "equal"
},
{
"termName": "Provider",
"type": "sqo",
"value": "Amazon",
"conditionStatement": "equal"
},
{
"termName": "Availability",
"type": "slo",
"value": "99.8",
"unit": "percentage",
"conditionStatement": "greaterOrEqual",
"metrics": [
{
"id": "CS_16_001",
"descriptor": "Uptime during a specific time period",
"scale": "ratio",
"expression": {
"expression": "AVAILABILITY_UPTIME_BC",
"expressionLanguage": "predefined",
"note": "100 - (billingCycle - totalDowntime)/billingCycle",
"unit": "percentage"
}
}
]
},
{
"comment": "Response time: Virtual Machine Performance",
"termName": "Performance",
"type": "slo",
"value": "2",
"unit": "millisecond",
"conditionStatement": "lessOrEqual",
"metrics": [
{
"id": "CS_16_001",
"descriptor": "Response time for a request",
"scale": "interval",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"note": "delta(t)",
"unit": "millisecond"
}
}
]
},
{
"comment": "Legal Level/Accreditations",
"termName": "Legal Level",
"type": "sqo",
"value": "Legal Level 3",
"conditionStatement": "equal"
},
{
"termName": "Cost",
"type": "slo",
"value": "640",
"unit": "euro",
"conditionStatement": "less"
}
]
},
"18": {
"description": "c5.2xlarge",
"coveredServices": [
"Virtual Machine"
],
"objectives": [
{
"termName": "Region",
"type": "sqo",
"value": "North America",
"conditionStatement": "equal"
},
{
"termName": "Zone",
"type": "sqo",
"value": "Canada",
"conditionStatement": "equal"
},
{
"termName": "Provider",
"type": "sqo",
"value": "Amazon",
"conditionStatement": "equal"
},
{
"termName": "Availability",
"type": "slo",
"value": "99.4",
"unit": "percentage",
"conditionStatement": "greaterOrEqual",
"metrics": [
{
"id": "CS_18_001",
"descriptor": "Uptime during a specific time period",
"scale": "ratio",
"expression": {
"expression": "AVAILABILITY_UPTIME_BC",
"expressionLanguage": "predefined",
"note": "100 - (billingCycle - totalDowntime)/billingCycle",
"unit": "percentage"
}
}
]
},
{
"comment": "Response time: Virtual Machine Performance",
"termName": "Performance",
"type": "slo",
"value": "5",
"unit": "millisecond",
"conditionStatement": "lessOrEqual",
"metrics": [
{
"id": "CS_18_001",
"descriptor": "Response time for a request",
"scale": "interval",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"note": "delta(t)",
"unit": "millisecond"
}
}
]
},
{
"comment": "Legal Level/Accreditations",
"termName": "Legal Level",
"type": "sqo",
"value": "Legal Level 3",
"conditionStatement": "equal"
},
{
"termName": "Cost",
"type": "slo",
"value": "268",
"unit": "euro",
"conditionStatement": "less"
}
]
},
"20": {
"description": "g3.8xlarge",
"coveredServices": [
"Virtual Machine"
],
"objectives": [
{
"termName": "Region",
"type": "sqo",
"value": "North America",
"conditionStatement": "equal"
},
{
"termName": "Zone",
"type": "sqo",
"value": "United States",
"conditionStatement": "equal"
},
{
"termName": "Provider",
"type": "sqo",
"value": "Amazon",
"conditionStatement": "equal"
},
{
"termName": "Availability",
"type": "slo",
"value": "99.8",
"unit": "percentage",
"conditionStatement": "greaterOrEqual",
"metrics": [
{
"id": "CS_20_001",
"descriptor": "Uptime during a specific time period",
"scale": "ratio",
"expression": {
"expression": "AVAILABILITY_UPTIME_BC",
"expressionLanguage": "predefined",
"note": "100 - (billingCycle - totalDowntime)/billingCycle",
"unit": "percentage"
}
}
]
},
{
"comment": "Response time: Virtual Machine Performance",
"termName": "Performance",
"type": "slo",
"value": "2",
"unit": "millisecond",
"conditionStatement": "lessOrEqual",
"metrics": [
{
"id": "CS_20_001",
"descriptor": "Response time for a request",
"scale": "interval",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"note": "delta(t)",
"unit": "millisecond"
}
}
]
},
{
"comment": "Legal Level/Accreditations",
"termName": "Legal Level",
"type": "sqo",
"value": "Legal Level 2",
"conditionStatement": "equal"
},
{
"termName": "Cost",
"type": "slo",
"value": "2209",
"unit": "euro",
"conditionStatement": "less"
}
]
},
"21": {
"description": "p2.8xlarge",
"coveredServices": [
"Virtual Machine"
],
"objectives": [
{
"termName": "Region",
"type": "sqo",
"value": "Europe",
"conditionStatement": "equal"
},
{
"termName": "Zone",
"type": "sqo",
"value": "United Kingdom",
"conditionStatement": "equal"
},
{
"termName": "Provider",
"type": "sqo",
"value": "Amazon",
"conditionStatement": "equal"
},
{
"termName": "Availability",
"type": "slo",
"value": "99.9",
"unit": "percentage",
"conditionStatement": "greaterOrEqual",
"metrics": [
{
"id": "CS_21_001",
"descriptor": "Uptime during a specific time period",
"scale": "ratio",
"expression": {
"expression": "AVAILABILITY_UPTIME_BC",
"expressionLanguage": "predefined",
"note": "100 - (billingCycle - totalDowntime)/billingCycle",
"unit": "percentage"
}
}
]
},
{
"comment": "Response time: Virtual Machine Performance",
"termName": "Performance",
"type": "slo",
"value": "2",
"unit": "millisecond",
"conditionStatement": "lessOrEqual",
"metrics": [
{
"id": "CS_21_001",
"descriptor": "Response time for a request",
"scale": "interval",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"note": "delta(t)",
"unit": "millisecond"
}
}
]
},
{
"comment": "Legal Level/Accreditations",
"termName": "Legal Level",
"type": "sqo",
"value": "Legal Level 1",
"conditionStatement": "equal"
},
{
"termName": "Cost",
"type": "slo",
"value": "5600",
"unit": "euro",
"conditionStatement": "less"
}
]
},
"23": {
"description": "x1e.4xlarge",
"coveredServices": [
"Virtual Machine"
],
"objectives": [
{
"termName": "Region",
"type": "sqo",
"value": "Europe",
"conditionStatement": "equal"
},
{
"termName": "Zone",
"type": "sqo",
"value": "Germany",
"conditionStatement": "equal"
},
{
"termName": "Provider",
"type": "sqo",
"value": "Amazon",
"conditionStatement": "equal"
},
{
"termName": "Availability",
"type": "slo",
"value": "99",
"unit": "percentage",
"conditionStatement": "greaterOrEqual",
"metrics": [
{
"id": "CS_23_001",
"descriptor": "Uptime during a specific time period",
"scale": "ratio",
"expression": {
"expression": "AVAILABILITY_UPTIME_BC",
"expressionLanguage": "predefined",
"note": "100 - (billingCycle - totalDowntime)/billingCycle",
"unit": "percentage"
}
}
]
},
{
"comment": "Response time: Virtual Machine Performance",
"termName": "Performance",
"type": "slo",
"value": "2",
"unit": "millisecond",
"conditionStatement": "lessOrEqual",
"metrics": [
{
"id": "CS_23_001",
"descriptor": "Response time for a request",
"scale": "interval",
"expression": {
"expression": "EMPTY",
"expressionLanguage": "predefined",
"note": "delta(t)",
"unit": "millisecond"
}
}
]
},
{
"comment": "Legal Level/Accreditations",
"termName": "Legal Level",
"type": "sqo",
"value": "Legal Level 2",
"conditionStatement": "equal"
},
{
"termName": "Cost",
"type": "slo",
"value": "3376",
"unit": "euro",
"conditionStatement": "less"
}
]
}
}
},
"recommendedPatterns": [
{
"title": "Service Registry",
"uriRef": "http://decideh2020.eu/resources/patterns/service-registry",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Two-Tier Cloud Application",
"uriRef": "http://decideh2020.eu/resources/patterns/two-tier-cloud-application",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Loose Coupling",
"uriRef": "http://decideh2020.eu/resources/patterns/loose-coupling",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Distributed Application",
"uriRef": "http://decideh2020.eu/resources/patterns/distributed-application",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Three-Tier Cloud Application",
"uriRef": "http://decideh2020.eu/resources/patterns/three-tier-cloud-application",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Managed Configuration",
"uriRef": "http://decideh2020.eu/resources/patterns/managed-configuration",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Containerization",
"uriRef": "http://decideh2020.eu/resources/patterns/containerization",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Service Registry",
"uriRef": "http://decideh2020.eu/resources/patterns/service-registry",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Two-Tier Cloud Application",
"uriRef": "http://decideh2020.eu/resources/patterns/two-tier-cloud-application",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Loose Coupling",
"uriRef": "http://decideh2020.eu/resources/patterns/loose-coupling",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Distributed Application",
"uriRef": "http://decideh2020.eu/resources/patterns/distributed-application",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Three-Tier Cloud Application",
"uriRef": "http://decideh2020.eu/resources/patterns/three-tier-cloud-application",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Managed Configuration",
"uriRef": "http://decideh2020.eu/resources/patterns/managed-configuration",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
},
{
"title": "Containerization",
"uriRef": "http://decideh2020.eu/resources/patterns/containerization",
"categories": [
"http://decideh2020.eu/resources/patterncategories/basic"
],
"selected": false
}
],
"schema": [
{
"microservices": [
"e5a4a10d-ce95-490a-9ce6-aee2a8846e8d",
"edb55ae1-2e8d-4beb-992e-e97b8f0011df"
],
"csId": "20",
"index": 0
},
{
"microservices": [
"91aa8048-8849-4760-a4cc-a47b25bd717a",
"afc60316-ce8b-41ac-ae4b-f4627f773860",
"bf9bc26a-ab23-423c-92e0-9cf898619b10",
"4cb9cedb-40df-4a57-8e6a-f2aa5d4db1eb",
"b8b0207a-5e87-45d6-a071-212eb69b1708",
"4b8d3115-1103-4a1e-9d1c-304e9384993f"
],
"csId": "21",
"index": 1
},
{
"microservices": [
"c3fb92ba-497e-4d06-b1d0-928b71c0c662",
"cb42120b-04fb-4c3b-9254-bb8d0017a723",
"97d68120-9e7c-4b9c-b8c8-c7a4bfe067ed",
"2ae95c64-1156-4c88-8897-b879baa1348b"
],
"csId": "23",
"index": 2
},
{
"microservices": [
"6b8d6b05-ee2d-4ec8-b679-c37719513d0f",
"b63faa0e-cdc6-43cd-b3ee-d04a3829df04"
],
"csId": "16",
"index": 3
},
{
"microservices": [
"0c8deb9f-ffb6-4489-b416-e60532c67b1d",
"bd2c3ec0-bc1e-4bd7-9c68-c945e23fcf87"
],
"csId": "18",
"index": 4
}
],
"virtualMachines": [
{
"id": "20",
"cspName": "Amazon",
"cspId": "AMAZ",
"ram": 4,
"cores": 2,
"storage": 1,
"image": "Ubuntu 16.04",
"vmSoftwareId": "21b7ebed-5076-43b6-8351-0e06cf16eedc",
"vmResourceId": "05d76ee4-3b7e-4726-8ff3-eb24f667c70d",
"vmRegionId": "83dc7c1e-711c-4548-9a9e-128f9795cfed",
"instanceTypeId": "e3ca8e4c-0f91-4e83-9bd9-4cef88d054a8",
"keyPairId": "dbe5cc42-1f33-4ca4-b761-aec1c46a76fe",
"dockerPrivateRegistryIp": "82.223.3.19",
"dockerHostNodeName": "node-0",
"vmUser": "ubuntu",
"openedPort": "22,80,8000-9000,9411",
"dockerPrivateRegistryPort": "80",
"dockerHostPublicIp": "85.91.40.245"
},
{
"id": "21",
"cspName": "Amazon",
"cspId": "AMAZ",
"ram": 4,
"cores": 2,
"storage": 1,
"image": "Ubuntu 16.04",
"vmSoftwareId": "21b7ebed-5076-43b6-8351-0e06cf16eedc",
"vmResourceId": "05d76ee4-3b7e-4726-8ff3-eb24f667c70d",
"vmRegionId": "83dc7c1e-711c-4548-9a9e-128f9795cfed",
"instanceTypeId": "e3ca8e4c-0f91-4e83-9bd9-4cef88d054a8",
"keyPairId": "dbe5cc42-1f33-4ca4-b761-aec1c46a76fe",
"dockerPrivateRegistryIp": "82.223.3.19",
"dockerHostNodeName": "node-1",
"vmUser": "ubuntu",
"openedPort": "22,80,8000-9000,9411",
"dockerPrivateRegistryPort": "80",
"dockerHostPublicIp": "85.91.40.245"
},
{
"id": "23",
"cspName": "Amazon",
"cspId": "AMAZ",
"ram": 4,
"cores": 2,
"storage": 1,
"image": "Ubuntu 16.04",
"vmSoftwareId": "21b7ebed-5076-43b6-8351-0e06cf16eedc",
"vmResourceId": "05d76ee4-3b7e-4726-8ff3-eb24f667c70d",
"vmRegionId": "83dc7c1e-711c-4548-9a9e-128f9795cfed",
"instanceTypeId": "e3ca8e4c-0f91-4e83-9bd9-4cef88d054a8",
"keyPairId": "dbe5cc42-1f33-4ca4-b761-aec1c46a76fe",
"dockerPrivateRegistryIp": "82.223.3.19",
"dockerHostNodeName": "node-2",
"vmUser": "ubuntu",
"openedPort": "22,80,8000-9000,9411",
"dockerPrivateRegistryPort": "80",
"dockerHostPublicIp": "85.91.40.245"
},
{
"id": "16",
"cspName": "Amazon",
"cspId": "AMAZ",
"ram": 4,
"cores": 2,
"storage": 1,
"image": "Ubuntu 16.04",
"vmSoftwareId": "21b7ebed-5076-43b6-8351-0e06cf16eedc",
"vmResourceId": "05d76ee4-3b7e-4726-8ff3-eb24f667c70d",
"vmRegionId": "83dc7c1e-711c-4548-9a9e-128f9795cfed",
"instanceTypeId": "e3ca8e4c-0f91-4e83-9bd9-4cef88d054a8",
"keyPairId": "dbe5cc42-1f33-4ca4-b761-aec1c46a76fe",
"dockerPrivateRegistryIp": "82.223.3.19",
"dockerHostNodeName": "node-3",
"vmUser": "ubuntu",
"openedPort": "22,80,8000-9000,9411",
"dockerPrivateRegistryPort": "80",
"dockerHostPublicIp": "85.91.40.245"
},
{
"id": "18",
"cspName": "Amazon",
"cspId": "AMAZ",
"ram": 4,
"cores": 2,
"storage": 1,
"image": "Ubuntu 16.04",
"vmSoftwareId": "21b7ebed-5076-43b6-8351-0e06cf16eedc",
"vmResourceId": "05d76ee4-3b7e-4726-8ff3-eb24f667c70d",
"vmRegionId": "83dc7c1e-711c-4548-9a9e-128f9795cfed",
"instanceTypeId": "e3ca8e4c-0f91-4e83-9bd9-4cef88d054a8",
"keyPairId": "dbe5cc42-1f33-4ca4-b761-aec1c46a76fe",
"dockerPrivateRegistryIp": "82.223.3.19",
"dockerHostNodeName": "node-4",
"vmUser": "ubuntu",
"openedPort": "22,80,8000-9000,9411",
"dockerPrivateRegistryPort": "80",
"dockerHostPublicIp": "85.91.40.245"
}
],
"containers": [
{
"imageName": "my-traefik",
"imageTag": "1",
"dockerPrivateRegistryIp": "82.223.3.19",
"dockerPrivateRegistryPort": 80,
"hostname": "front-end",
"restart": "always",
"command": [
"--consul",
"--consul.endpoint=82.223.11.174:8500",
"--consul.prefix=SockShop/traefik"
],
"entrypoint": [
"traefik"
],
"dockerHostNodeName": "node-0",
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 80,
"addConsulTraefikRules": 0,
"portMapping": [
{
"hostPort": "80",
"containerPort": "80"
},
{
"hostPort": "8082",
"containerPort": "8082"
},
{
"hostPort": "9411",
"containerPort": "9411"
}
],
"endpoints": [
{
"protocol": "http",
"port": 80
}
],
"dockerPrivateRegistryPassword": "d3cid3",
"containerName": "traefik-private",
"dockerPrivateRegistryUser": "decide-user"
},
{
"imageName": "weaveworksdemos/front-end",
"imageTag": "latest",
"hostname": "front-end",
"restart": "always",
"dockerHostNodeName": "node-2",
"addConsulService": 1,
"consulServicePort": 8479,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8479",
"containerPort": "8079"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8479,
"skipRule": 1,
"containerNameOverride": "shop-front-end"
}
],
"containerName": "front-end",
"hostMapping": [
{
"ip": "",
"referencedContainerName": "traefik-private",
"host": "catalogue"
},
{
"ip": "",
"referencedContainerName": "traefik-private",
"host": "carts"
},
{
"ip": "",
"referencedContainerName": "traefik-private",
"host": "user"
},
{
"ip": "",
"referencedContainerName": "zipkin",
"host": "zipkin"
}
]
},
{
"imageName": "weaveworksdemos/catalogue",
"imageTag": "latest",
"hostname": "catalogue",
"restart": "always",
"dockerHostNodeName": "node-1",
"networks": [
"catalogue-network"
],
"environment": [
"ZIPKIN=http://TBD_zipkin-ip:8493/api/v1/spans"
],
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 8480,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8480",
"containerPort": "80"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8480
}
],
"containerName": "catalogue"
},
{
"imageName": "weaveworksdemos/catalogue-db",
"imageTag": "latest",
"hostname": "catalogue-db",
"restart": "always",
"dockerHostNodeName": "node-1",
"networks": [
"catalogue-network"
],
"environment": [
"MYSQL_ROOT_PASSWORD=$${MYSQL_ROOT_PASSWORD}",
"MYSQL_ALLOW_EMPTY_PASSWORD=true",
"MYSQL_DATABASE=socksdb"
],
"containerName": "catalogue-db"
},
{
"imageName": "weaveworksdemos/user-db",
"imageTag": "latest",
"hostname": "user-db",
"restart": "always",
"dockerHostNodeName": "node-4",
"networks": [
"user-network"
],
"containerName": "user-db"
},
{
"imageName": "weaveworksdemos/user",
"imageTag": "latest",
"hostname": "user",
"restart": "always",
"dockerHostNodeName": "node-4",
"networks": [
"user-network"
],
"environment": [
"MONGO_HOST=user-db:27017"
],
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 8485,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8485",
"containerPort": "80"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8485
}
],
"containerName": "user",
"hostMapping": [
{
"ip": "",
"referencedContainerName": "traefik-private",
"host": "zipkin"
}
]
},
{
"imageName": "mongo",
"imageTag": "latest",
"hostname": "carts-db",
"restart": "always",
"dockerHostNodeName": "node-1",
"networks": [
"carts-network"
],
"containerName": "carts-db"
},
{
"imageName": "weaveworksdemos/carts",
"imageTag": "latest",
"hostname": "user",
"restart": "always",
"dockerHostNodeName": "node-1",
"networks": [
"carts-network"
],
"environment": [
"JAVA_OPTS=-Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom",
"ZIPKIN=TBD_traefik-ip"
],
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 8481,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8481",
"containerPort": "80"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8481
}
],
"containerName": "carts"
},
{
"imageName": "openzipkin/zipkin",
"imageTag": "latest",
"hostname": "zipkin",
"restart": "always",
"dockerHostNodeName": "node-1",
"environment": [
"reschedule=on-node-failure"
],
"addConsulService": 1,
"consulServicePort": 9411,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8493",
"containerPort": "9411"
}
],
"endpoints": [
{
"protocol": "http",
"port": 9411
}
],
"containerName": "zipkin"
},
{
"imageName": "weaveworksdemos/shipping",
"imageTag": "latest",
"hostname": "shipping",
"restart": "always",
"dockerHostNodeName": "node-1",
"networks": [
"shipping-network"
],
"environment": [
"ZIPKIN=http://TBD_zipkin-ip}"
],
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 8483,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8483",
"containerPort": "80"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8483
}
],
"containerName": "shipping"
},
{
"imageName": "weaveworksdemos/queue-master",
"imageTag": "latest",
"hostname": "queue-master",
"restart": "always",
"dockerHostNodeName": "node-2",
"networks": [
"shipping-network"
],
"volumeMapping": [
{
"hostPath": "/var/run/docker.sock",
"containerPath": "/var/run/docker.sock"
}
],
"containerName": "queue-master"
},
{
"imageName": "rabbitmq",
"imageTag": "3.6.8",
"hostname": "rabbitmq",
"restart": "always",
"dockerHostNodeName": "node-2",
"networks": [
"shipping-network"
],
"containerName": "rabbitmq"
},
{
"imageName": "weaveworksdemos/orders",
"imageTag": "latest",
"hostname": "orders",
"restart": "always",
"dockerHostNodeName": "node-2",
"networks": [
"orders-network"
],
"environment": [
"ZIPKIN=http://TBD_zipkin-ip}"
],
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 8482,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8482",
"containerPort": "80"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8482
}
],
"containerName": "orders"
},
{
"imageName": "mongo",
"imageTag": "latest",
"hostname": "orders-db",
"restart": "always",
"dockerHostNodeName": "node-2",
"networks": [
"orders-network"
],
"containerName": "orders-db"
},
{
"imageName": "weaveworksdemos/payment",
"imageTag": "latest",
"hostname": "payment",
"restart": "always",
"dockerHostNodeName": "node-3",
"environment": [
"ZIPKIN=http://TBD_zipkin-ip}",
"reschedule=on-node-failure"
],
"consulKvProviderNodeName": "node-1",
"addConsulService": 1,
"consulServicePort": 8484,
"addConsulTraefikRules": 1,
"portMapping": [
{
"hostPort": "8484",
"containerPort": "80"
}
],
"endpoints": [
{
"protocol": "http",
"port": 8484
}
],
"containerName": "payment"
}
],
"applicationInstanceId": "c283ef91-fd08-448f-899c-de63d1709598"
}