Slide 1

Slide 1 text

Distributed Systems Group University of Bamberg 21.01.2025 Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects Franka Knoch, Robin Lichtenthäler, Guido Wirtz

Slide 2

Slide 2 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Motivation A Quality Model for cloud-native application architectures 21.01.2025 2 Excerpt from the quality model (https://clounaq.de/quality-model): Lichtenthäler, Robin / Wirtz, Guido: Formulating a quality model for cloud-native software architectures: conceptual and methodological considerations, 2024, Cluster Computing, 10.1007/s10586-024-04343-4

Slide 3

Slide 3 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Motivation A Quality Model for cloud-native application architectures 21.01.2025 2 Availability Recoverability Fault Tolerance Excerpt from the quality model (https://clounaq.de/quality-model): Quality Aspect An abstract desirable observable behaviour of a system Lichtenthäler, Robin / Wirtz, Guido: Formulating a quality model for cloud-native software architectures: conceptual and methodological considerations, 2024, Cluster Computing, 10.1007/s10586-024-04343-4

Slide 4

Slide 4 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Motivation A Quality Model for cloud-native application architectures 21.01.2025 2 Availability Recoverability Fault Tolerance Service replication Distribution Physical service Distribution Physical data distribution Automated infrastructure maintenance Automated restarts Health and readiness checks Autonomous fault handling Retries Excerpt from the quality model (https://clounaq.de/quality-model): Quality Aspect Product Factor An abstract desirable observable behaviour of a system An identifiable characteristic of software system Lichtenthäler, Robin / Wirtz, Guido: Formulating a quality model for cloud-native software architectures: conceptual and methodological considerations, 2024, Cluster Computing, 10.1007/s10586-024-04343-4

Slide 5

Slide 5 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Motivation A Quality Model for cloud-native application architectures 21.01.2025 2 ➢ Quality model formulated based on literature ➢ Intended as a basis to evaluate software architectures Availability Recoverability Fault Tolerance Service replication Distribution Physical service Distribution Physical data distribution Automated infrastructure maintenance Automated restarts Health and readiness checks Autonomous fault handling Retries Excerpt from the quality model (https://clounaq.de/quality-model): Quality Aspect Product Factor An abstract desirable observable behaviour of a system An identifiable characteristic of software system Lichtenthäler, Robin / Wirtz, Guido: Formulating a quality model for cloud-native software architectures: conceptual and methodological considerations, 2024, Cluster Computing, 10.1007/s10586-024-04343-4

Slide 6

Slide 6 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Approach Overview Evaluate software architectures of cloud-native applications according to quality aspects Application Modeled software architecture Quality evaluation Quality Model Overall goal: 21.01.2025 3

Slide 7

Slide 7 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Approach Overview Evaluate software architectures of cloud-native applications according to quality aspects Application Modeled software architecture Quality evaluation Quality Model Extend the approach to express cloud-native characteristics with a focus on reliability Implement deployment options and reliability aspects (RQ1) based on the factors of the quality model Overall goal: In this work: 21.01.2025 3

Slide 8

Slide 8 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Approach Overview Evaluate software architectures of cloud-native applications according to quality aspects Application Modeled software architecture Quality evaluation Quality Model Extend the approach to express cloud-native characteristics with a focus on reliability Implement deployment options and reliability aspects (RQ1) Express implementation options (RQ2) based on the factors of the quality model Overall goal: In this work: 21.01.2025 3

Slide 9

Slide 9 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Approach Use Case Application: TeaStore 21.01.2025 4 ▪ ▪ ▪ ▪

Slide 10

Slide 10 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Approach Use Case Application: TeaStore 21.01.2025 4 ❑ TeaStore (https://github.com/DescartesResearch/TeaStore) ❑ Microservices reference application developed to enable benchmarking experiments ❑ Established and popular in research ▪ ▪ ▪ ▪ von Kistowski, Joakim / Eismann, Simon / Schmitt, Norbert / Bauer, Andre / Grohmann, Johannes / Kounev, Samuel: TeaStore: A Micro-Service Reference Application for Benchmarking, Modeling and Resource Management Research, 2018, 26th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS), IEEE, p. 223-236, 10.1109/mascots.2018.00030

Slide 11

Slide 11 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Approach Use Case Application: TeaStore 21.01.2025 4 ❑ TeaStore (https://github.com/DescartesResearch/TeaStore) ❑ Microservices reference application developed to enable benchmarking experiments ❑ Established and popular in research ❑ Features ▪ Services implemented in Java ▪ Communication via HTTP Calls ▪ Relational database as a data store ▪ Pre-configured Docker images and Kubernetes Deployment descriptions von Kistowski, Joakim / Eismann, Simon / Schmitt, Norbert / Bauer, Andre / Grohmann, Johannes / Kounev, Samuel: TeaStore: A Micro-Service Reference Application for Benchmarking, Modeling and Resource Management Research, 2018, 26th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS), IEEE, p. 223-236, 10.1109/mascots.2018.00030

Slide 12

Slide 12 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Implementation options for reliability aspects 21.01.2025 5

Slide 13

Slide 13 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Implementation options for reliability aspects 21.01.2025 5 Quality Aspect Availability Recoverability

Slide 14

Slide 14 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Implementation options for reliability aspects 21.01.2025 5 Quality Aspect Availability Recoverability Product Factor Guarded Ingress Service Distribution Data Distribution Built-In Autoscaling Enforcement of Appropriate Resource Boundaries Seamless Upgrades Health and Readiness Checks Automated Infrastructure Maintenance Use Infrastructure as Code

Slide 15

Slide 15 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Implementation options for reliability aspects 21.01.2025 5 Quality Aspect Availability Recoverability Product Factor Guarded Ingress Service Distribution Data Distribution Built-In Autoscaling Enforcement of Appropriate Resource Boundaries Seamless Upgrades Health and Readiness Checks Automated Infrastructure Maintenance Use Infrastructure as Code Implementation option API Gateway | Ingress Controller | AWS WAF Node Selectors | (Anti-) Affinity Rules | Pod topology spread constraints StatefulSet | ManagedDatabase EC2 Autoscaling Groups | K8s Cluster Autoscaler | Karpenter | Vertical Pod Autoscaler | Horizontal Pod Autoscaler Workload Annotation | Monitoring Services | Vertical Pod Autoscaler Rolling Upgrades | Blue-Green Strategy Liveness and Readiness Probe | Container Health Checks Worker Node Versioning | Cluster Versioning AWS CloudFormation | Terraform

Slide 16

Slide 16 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Exemplary implementation option 21.01.2025 6 Physical Data Distribution via Managed Database

Slide 17

Slide 17 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Exemplary implementation option 21.01.2025 6 Physical Data Distribution via Managed Database ❑ TeaStore deployed on AWS Elastic Kubernetes Service (EKS)

Slide 18

Slide 18 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Exemplary implementation option 21.01.2025 6 Physical Data Distribution via Managed Database ❑ TeaStore deployed on AWS Elastic Kubernetes Service (EKS) ❑ TeastoreDB provided as an AWS Relational Database Service (RDS) Instance and integrated into the Cluster via AWS Controllers for Kubernetes (ACK) apiVersion: rds.services.k8s.aws/v1alpha1 kind: DBInstance ❑ Distribution through Multi-Availability-Zones flag and additional Read replicas spec: multiAZ: true ----------------------- aws rds create-db-instance-read-replica \ --availability-zone us-east-2a

Slide 19

Slide 19 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Representing cloud-native characteristics in a model 21.01.2025 7

Slide 20

Slide 20 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Representing cloud-native characteristics in a model 21.01.2025 7 Entity Component Service Backing Service Storage Backing Service Endpoint External Endpoint Link Infrastructure Deployment Mapping Data Aggregate

Slide 21

Slide 21 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Representing cloud-native characteristics in a model 21.01.2025 7 Entity Component Service Backing Service Storage Backing Service Endpoint External Endpoint Link Infrastructure Deployment Mapping Data Aggregate Example - WebUI Registry TeaStore DB Place order Show products WebUI → Place Order AWS EKS WebUI → AWS EKS Order

Slide 22

Slide 22 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Representing cloud-native characteristics in a model 21.01.2025 7 Entity Component Service Backing Service Storage Backing Service Endpoint External Endpoint Link Infrastructure Deployment Mapping Data Aggregate Example - WebUI Registry TeaStore DB Place order Show products WebUI → Place Order AWS EKS WebUI → AWS EKS Order Deployment extensions artifact assigned_networks kind environment_access maintenance provisioning supported_artifacts assigned_networks deployment deployment_unit assigned_account

Slide 23

Slide 23 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Representing cloud-native characteristics in a model 21.01.2025 7 Entity Component Service Backing Service Storage Backing Service Endpoint External Endpoint Link Infrastructure Deployment Mapping Data Aggregate Example - WebUI Registry TeaStore DB Place order Show products WebUI → Place Order AWS EKS WebUI → AWS EKS Order Deployment extensions artifact assigned_networks kind environment_access maintenance provisioning supported_artifacts assigned_networks deployment deployment_unit assigned_account Reliability extensions load_shedding proxied_by rate_limiting readiness_check health_check idempotence timeout circuit_breaker retries availability_zone region deployed_entities_scaling self_scaling supported_update_strategies enforced_resource_bounds update_strategy automated_restart_policy resource_requirements replicas usage_relation

Slide 24

Slide 24 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Exemplary representation in the model 21.01.2025 8

Slide 25

Slide 25 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Exemplary representation in the model 21.01.2025 8

Slide 26

Slide 26 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Results Exemplary representation in the model 21.01.2025 8 rds_instance: type: cna-modeling.entities.StorageBackingService properties: managed: true software_type: proprietary stateless: false load_shedding: false assigned_networks: - teastore-private-1 - teastore-private-2 - teastore-private-3 artifacts: rds_instance: type: AWS.RDS.Instance requirements: - host: node: aws_relational_database_service relationship: aws_relational_database_service_hosts_rds_instance aws_relational_database_service_hosts_rds_instance: type: cna-modeling.entities.HostedOn.DeploymentMapping properties: deployment: automated-declarative deployment_unit: RDS Instance replicas: 3 update_strategy: blue-green automated_restart_policy: onProcessFailure assigned_account: default-account resource_requirements: unstated aws_relational_database_service: type: cna-modeling.entities.Infrastructure properties: kind: cloud-service environment_access: none maintenance: transparent provisioning: transparent supported_artifacts: - AWS.RDS.Instance availability_zone: us-east-1a,us-east-1b,us-east-1c

Slide 27

Slide 27 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Limitations & Future Work 21.01.2025 9

Slide 28

Slide 28 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Limitations & Future Work 21.01.2025 9 ❑ One cloud provider (AWS) and one application considered →

Slide 29

Slide 29 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Limitations & Future Work 21.01.2025 9 ❑ One cloud provider (AWS) and one application considered → ❑ Focus on reliability →

Slide 30

Slide 30 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Limitations & Future Work 21.01.2025 9 ❑ One cloud provider (AWS) and one application considered → ❑ Focus on reliability → ❑ Usage of TOSCA only for modeling, not for deployment. Ideally both should be possible, but there are challenges → H

Slide 31

Slide 31 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Limitations & Future Work 21.01.2025 9 ❑ One cloud provider (AWS) and one application considered → ❑ Focus on reliability → ❑ Usage of TOSCA only for modeling, not for deployment. Ideally both should be possible, but there are challenges → H ❑ Further development and validation of the overall approach

Slide 32

Slide 32 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Conclusion 21.01.2025 10 ▪ ▪

Slide 33

Slide 33 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Conclusion 21.01.2025 10 ❑ Various implementation possibilities for cloud-native characteristics Often specific to certain technologies or cloud provider offerings Interdependencies between decisions for different options Abstraction and comparability is difficult Contribution of a set of practical implementations as a data basis ▪ ▪

Slide 34

Slide 34 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Conclusion 21.01.2025 10 ❑ Various implementation possibilities for cloud-native characteristics Often specific to certain technologies or cloud provider offerings Interdependencies between decisions for different options Abstraction and comparability is difficult Contribution of a set of practical implementations as a data basis ❑ For the chosen modeling approach a level of abstraction needs to be chosen (inherent challenge of modeling) ▪If too abstract, differences between implementation options diminish ▪If too detailed, modeling becomes an effort Focus on major differentiating aspects

Slide 35

Slide 35 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 More detailed information online 21.01.2025 11 Implementations and models with more detailed descriptions Tooling aimed at supporting the overall approach (in development) https://github.com/frankakn/cloud-native-deployment https://clounaq.de

Slide 36

Slide 36 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 21.01.2025 12 Thank you for your attention!

Slide 37

Slide 37 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 21.01.2025 12 Backup

Slide 38

Slide 38 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de

Slide 39

Slide 39 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de core q u a lity m o d e l - m o d e l s p e c ific a tio n - m e a s u re im p le m e n ta tio n

Slide 40

Slide 40 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de core q u a lity m o d e l - m o d e l s p e c ific a tio n - m e a s u re im p le m e n ta tio n v is u a liz e s q u a lity m o d e l

Slide 41

Slide 41 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de core re p re s e n t e n titie s - d y n a m ic p ro p e rtie s - re la tio n s h ip s q u a lity m o d e l - m o d e l s p e c ific a tio n - m e a s u re im p le m e n ta tio n to s c a e x te n s io n v is u a liz e s q u a lity m o d e l T O S C A

Slide 42

Slide 42 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de core re p re s e n t e n titie s - d y n a m ic p ro p e rtie s - re la tio n s h ip s q u a lity m o d e l - m o d e l s p e c ific a tio n - m e a s u re im p le m e n ta tio n to s c a e x te n s io n v is u a liz e s q u a lity m o d e l b a s e d o n m o d e lin g T O S C A

Slide 43

Slide 43 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de core re p re s e n t m a p p in g e n titie s - d y n a m ic p ro p e rtie s - re la tio n s h ip s q u a lity m o d e l - m o d e l s p e c ific a tio n - m e a s u re im p le m e n ta tio n to s c a -a d a p te r to s c a e x te n s io n v is u a liz e s q u a lity m o d e l b a s e d o n m o d e lin g T O S C A m o d e l Im p o rt/ E x p o rt u s e s

Slide 44

Slide 44 text

Distributed Systems Group – WIAI – University of Bamberg Evaluating Cloud-native Deployment Options with a Focus on Reliability Aspects | Robin Lichtenthäler | SummerSoC 2024 Implementation Details: Structure 21.01.2025 16 clounaq.de core re p re s e n t m a p p in g e n titie s - d y n a m ic p ro p e rtie s - re la tio n s h ip s q u a lity m o d e l - m o d e l s p e c ific a tio n - m e a s u re im p le m e n ta tio n to s c a -a d a p te r to s c a e x te n s io n v is u a liz e s q u a lity m o d e l u s e s u s e s e v a lu a tio n b a s e d o n m o d e lin g T O S C A m o d e l Im p o rt/ E x p o rt u s e s