RailCloud: A Reliable PaaS Cloud for Railway Applications

Similar documents
Low-Latency Network-Scalable Byzantine Fault-Tolerant Replication 12th EuroSys Doctoral Workshop (EuroDW 2018)

S Implementing DevOps and Hybrid Cloud

Module Day Topic. 1 Definition of Cloud Computing and its Basics

Robust BFT Protocols

Continuous delivery while migrating to Kubernetes

An Introduction to Kubernetes

Container Orchestration on Amazon Web Services. Arun

Introduction to Distributed Systems. INF5040/9040 Autumn 2018 Lecturer: Eli Gjørven (ifi/uio)

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

TEN LAYERS OF CONTAINER SECURITY

Understanding and Evaluating Kubernetes. Haseeb Tariq Anubhavnidhi Archie Abhashkumar

Detecting Blackhole and Greyhole Attacks in Vehicular Delay Tolerant Networks

CONTAINERS AND MICROSERVICES WITH CONTRAIL

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

WHITE PAPER. RedHat OpenShift Container Platform. Benefits: Abstract. 1.1 Introduction

Kubernetes 101. Doug Davis, STSM September, 2017

The Long Road from Capistrano to Kubernetes

RED HAT OPENSHIFT A FOUNDATION FOR SUCCESSFUL DIGITAL TRANSFORMATION

Cloud & container monitoring , Lars Michelsen Check_MK Conference #4

Introduction to Kubernetes

Kubernetes introduction. Container orchestration

Windows Azure Services - At Different Levels

Prophecy: Using History for High Throughput Fault Tolerance

SCFS: A Shared Cloud-backed File System

Reducing the Costs of Large-Scale BFT Replication

Characterising Resource Management Performance in Kubernetes. Appendices.

Container-Native Storage

SBB. Java User Group 27.9 & Tobias Denzler, Philipp Oser

The vsphere 6.0 Advantages Over Hyper- V

Beyond 1001 Dedicated Data Service Instances

Running MarkLogic in Containers (Both Docker and Kubernetes)

CLUSTERING HIVEMQ. Building highly available, horizontally scalable MQTT Broker Clusters

Kubernetes: Twelve KeyFeatures

Securing Microservice Interactions in Openstack and Kubernetes

Byzantine Fault Tolerant Coordination for Web Services Atomic Transactions

Kubernetes made easy with Docker EE. Patrick van der Bleek Sr. Solutions Engineer NEMEA

Introduction to Distributed Systems (DS)

BFTCloud: A Byzantine Fault Tolerance Framework for Voluntary-Resource Cloud Computing

Building an on premise Kubernetes cluster DANNY TURNER

What s New in K8s 1.3

Kubernetes. An open platform for container orchestration. Johannes M. Scheuermann. Karlsruhe,

Introduction. Distributed Systems IT332

Designing MQ deployments for the cloud generation

A REFERENCE ARCHITECTURE FOR DEPLOYING WSO2 MIDDLEWARE ON KUBERNETES

Wolfram Richter Red Hat. OpenShift Container Netzwerk aus Sicht der Workload

Byzantine Fault Tolerant Coordination for Web Services Atomic Transactions

Cloud I - Introduction

SharePoint Online and Azure Integration

Distributed Systems Principles and Paradigms. Chapter 01: Introduction. Contents. Distributed System: Definition.

Exam : Implementing Microsoft Azure Infrastructure Solutions

Distributed Systems Principles and Paradigms. Chapter 01: Introduction

Investigating Containers for Future Services and User Application Support

Code: Slides:

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Advanced Lightweight BFT Process ForTrustworthy Management inweb Services Computing System

CPSC 426/526. Cloud Computing. Ennan Zhai. Computer Science Department Yale University

Kubernetes The Path to Cloud Native

Kubernetes - Load Balancing For Virtual Machines (Pods)

Container in Production : Openshift 구축사례로 이해하는 PaaS. Jongjin Lim Specialist Solution Architect, AppDev

System Models for Distributed Systems

Deploying Applications on DC/OS

TEN LAYERS OF CONTAINER SECURITY. Kirsten Newcomer Security Strategist

Toward Intrusion Tolerant Clouds

Isolation Forest for Anomaly Detection

CA464 Distributed Programming

A FAULT- AND INTRUSION-TOLERANT ARCHITECTURE FOR THE PORTUGUESE POWER DISTRIBUTION SCADA

Deploying and Operating Cloud Native.NET apps

Two years of on Kubernetes

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

IBM Planning Analytics Workspace Local Distributed Soufiane Azizi. IBM Planning Analytics

MQ High Availability and Disaster Recovery Implementation scenarios

DISTRIBUTED SYSTEMS [COMP9243] Lecture 8a: Cloud Computing WHAT IS CLOUD COMPUTING? 2. Slide 3. Slide 1. Why is it called Cloud?

Clouds are complex so they fail. Cloud File System Security and Dependability with SafeCloud-FS

Microservices. Chaos Kontrolle mit Kubernetes. Robert Kubis - Developer Advocate,

Backup strategies for Stateful Containers in OpenShift Using Gluster based Container-Native Storage

A day in the life of a log message Kyle Liberti, Josef

Minimum-cost Cloud Storage Service Across Multiple Cloud Providers

DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction

The Path to GPU as a Service in Kubernetes Renaud Gaubert Lead Kubernetes Engineer

What s New in K8s 1.3

Research Challenges in Cloud Computing

70-532: Developing Microsoft Azure Solutions

Announcements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris

Distributed Systems Principles and Paradigms

Red Hat Roadmap for Containers and DevOps

Koordinator: A Service Approach for Replicating Docker Containers in Kubernetes

UP! TO DOCKER PAAS. Ming

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Triangle Kubernetes Meet Up #3 (June 9, 2016) From Beginner to Expert

Document Sub Title. Yotpo. Technical Overview 07/18/ Yotpo

A DYNAMIC APPROACH TO CLOUD COMPUTING SECURITY OVER CLOUD OF CLOUDS

ISTIO 1.0 INTRODUCTION & OVERVIEW OpenShift Commons Briefing Brian redbeard Harrington Product Manager, Istio

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Docker All The Things

Practical Byzantine Fault

Distributed Systems COMP 212. Lecture 18 Othon Michail

Chapter 1: Distributed Systems: What is a distributed system? Fall 2013

Today: Fault Tolerance. Replica Management

Go Faster: Containers, Platforms and the Path to Better Software Development (Including Live Demo)

Course Outline 20743B

Transcription:

Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen RailCloud: A Reliable PaaS Cloud for Railway Applications Bijun Li, Rüdiger Kapitza TU Braunschweig 06.10.2016 This work is supported by Siemens international Rail Automation Graduate School (irags)

RailCloud PaaS Cloud for Railway Applications A PaaS cloud for railway applications Shared by small and medium-sized transportation companies Reliability and safety guarantee 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 2

PaaS Cloud in a Nutshell What is a PaaS Cloud? A computing platform for software development delivered over the Internet How to use it? Software developers can quickly deploy applications, without infrastructure management tasks Applications Platform (OS, Middleware, Runtime) Existing PaaS Clouds? Google App Engine (GAE), Microsoft Azure, OpenShift, Cloud Foundry etc. Recent evolvement with container technology Networking Storage Servers Virtualization 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 3

Existing PaaS Clouds? Reliability? Horizontal Scalability Usually for load balancing Tolerate crash-stop failures Goal of RailCloud Mostly for stateless applications Issues Lack of support for replicated stateful applications Cannot tolerate malicious attackers Load Balancer Easy deployment of replicated stateful applications with automatic coordination to guarantee reliability Easy deployment of legacy railway applications App App App App Complex deployment and coordination for cloud customers 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 4

Outline Reliability in PaaS Clouds RailCloud Design Byzantine Fault-Tolerant Applications in the Cloud Trusted Proxy: Making ted Systems Transparent Conclusion and Future Work 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 5

RailCloud Architecture Client 1 Client 2 RailCloud Trusted Proxy Trusted Proxy Trusted Proxy Trusted Proxy BFT BFT BFT BFT APP APP APP APP Host 1 Host 2 Host 3 Host 4 Developer Request/response Flow BFT Message Exchanges Built-in Service of RailCloud Application Deployment 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 6

Byzantine Fault Tolerance in the Cloud Byzantine Fault-Tolerance (BFT) Protocols Tolerate crash-stop failures and arbitrary and malicious behaviors 3f +1 replicas to tolerate f faults Req Rep Req Message exchanges for agreement Rep Rep Integration of BFT into Cloud Infrastructures Infrastructure level: Depsky, Fitch, TClouds etc. Middleware level: Thema etc. RailCloud: PaaS Level + Automatic Deployment Extension 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 7

Base of RailCloud OpenShift Origin v3 Docker container packaging Kubernetes container cluster management Application lifecycle management Developers OpenShift API Server Build Controller Kubernetes API Server Kube Controller Deployment Controller OpenShift Master Scheduler tion Controller Kubernetes Master Kube Proxy Kube Proxy Kube Proxy Container Container Container Docker Container Container Docker Kubelet Docker Kubelet Kubelet Container MASTER(S) NODE(S) 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 8

Implementation and Deployment BFT Service Layer BFT image (BFT-SMaRt) BFT pods BFT services Application Deployment Networking Connect each BFT service to application service Expose BFT services BFT Service BFT Container App Service App Container BFT Service BFT Service BFT Service BFT Container BFT Container BFT Container App Service App Service App Service App Container App Container App Container RailCloud 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 9

Trusted Proxy: Making ted Systems Transparent Why transparent? Minimum modifications to clients HTTPS connections Web-based railway applications Implements client-side BFT library Friendly to low-bandwidth clients No redundant requests/replies Hide details of replicated system Simple and secure interface to clients Throughput improvement 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 10

Trusted Proxy in RailCloud Secure connection Client Secure connection Client Message Flow Read Optimization En/decrypt Reply vote (Fast read cache) Trusted Proxy En/decrypt Reply vote (Fast read cache) En/decrypt Reply vote (Fast read cache) En/decrypt Reply vote (Fast read cache) Trusted Proxy Trusted Proxy Trusted Proxy Ordering + Execution Ordering + Execution Ordering + Execution Ordering + Execution Host 1 Host 2 Host 3 Host 4 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 11

Outline Reliability in PaaS Clouds RailCloud Design Byzantine Fault-Tolerant Applications in the Cloud Trusted Proxy: Making ted Systems Transparent Conclusion and Future Work 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 12

Conclusion and Future Work RailCloud Integrate BFT for reliability demands into PaaS Cloud Easy deployment of BFT applications Automatic coordination among replicated services Using trusted proxy to make replicated system transparent Future Work Explore more functions of trusted proxy 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 13

Appendix Related Works Bessani, A., Correia, M., Quaresma, B., Andre, F., Sousa, P.: Depsky: dependable and secure storage in a cloud-of-clouds. ACM Transactions on Storage (TOS) 9(4), 12 (2013) Cogo, V.V., Nogueira, A., Sousa, J., Pasin, M., Reiser, H.P., Bessani, A.: Fitch: Supporting adaptive replicated services in the cloud. In: DAIS 13 Garraghan, P., Townend, P., Xu, J.: Using byzantine fault-tolerance to improve dependability in federated cloud computing. International Journal of Software and Informatics 7(2), 221 237 (2013) Verissimo, P., Bessani, A., Pasin, M.: The tclouds architecture: Open and resilient cloud-of-clouds computing. In: Dependable Systems and Networks Workshops (DSN-W), 2012 IEEE/IFIP 42nd International Conference on. pp. 1 6. IEEE(2012) Merideth, M.G., Iyengar, A., Mikalsen, T., Tai, S., Rouvellou, I., Narasimhan, P.: Thema: Byzantine-fault-tolerant middleware for web-service applications. In: Reliable Distributed Systems (SRDS), 2005 24th IEEE Symposium on. pp. 131 140. IEEE (2005) 06.10.2016 Bijun Li RailCloud: A Reliable PaaS Cloud for Railway Applications Page 14