Developer support in a federated Platform-as-a-Service environment



Similar documents
Cloud computing opens new perspectives for hosting

Networks and Services

ConPaaS: an integrated runtime environment for elastic cloud applications

Con PaaS. ConPaaS: a Platform as a Service for Multi-clouds. Guillaume Pierre Rennes 1 University, France

Open Cloud System. (Integration of Eucalyptus, Hadoop and AppScale into deployment of University Private Cloud)

OpenShift. OpenShift platform features. Benefits Document. openshift. Feature Benefit OpenShift. Enterprise

Heterogeneous Cloud Computing for Research

Cloud Hosting. QCLUG presentation - Aaron Johnson. Amazon AWS Heroku OpenShift

Razvoj Java aplikacija u Amazon AWS Cloud: Praktična demonstracija

OpenShift Enterprise PaaS by Red Hat. Andrey Markelov RHCA Red Hat, Presales Solution Architect

APP DEVELOPMENT ON THE CLOUD MADE EASY WITH PAAS

JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON

Mjolnirr: private PaaS as distributed computing evolution

Cloud computing - Architecting in the cloud

Cloud Computing. Adam Barker

User Manual: ConPaaS Web Hosting Service

Selenium An Effective Weapon In The Open Source Armory

Hudson configuration manual

OpenShift on OpenStack

A Study of Infrastructure Clouds

Assignment # 1 (Cloud Computing Security)

Cloud Computing and Advanced Relationship Analytics

XtreemOS : des grilles aux nuages informatiques

OpenShift is FanPaaStic For Java EE. By Shekhar Gulati Promo Code JUDCON.IN

Continuous Integration in the Cloud with Hudson

Enterprise PaaS Evaluation Guide

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

Oracle Applications and Cloud Computing - Future Direction

"Build and Test in the Cloud "

CloudFTP: A free Storage Cloud

CloudBees Continuous Integration and Test with Appvance Enterprise August 28, 2013 Frank Cohen, (408)

Exploring Web Testing Tools For Use In A Classroom

Drive new Revenue With PaaS/IaaS. Ruslan Synytsky CTO, Jelastic

PaaS - Platform as a Service Google App Engine

Deploying Your Application On Public Cloud

Private Clouds with Open Source

PASS4TEST 専 門 IT 認 証 試 験 問 題 集 提 供 者

Join the Lean Wave. Asanka Abeysinghe Director, Solutions Architecture. WSO2, Inc. Friday, July 22, 11

Practicing Continuous Delivery using Hudson. Winston Prakash Oracle Corporation

DevOps with Containers. for Microservices

Apache Stratos Building a PaaS using OSGi and Equinox. Paul Fremantle CTO and Co- Founder, WSO2 CommiCer, Apache Stratos

w w w. u l t i m u m t e c h n o l o g i e s. c o m Infrastructure-as-a-Service on the OpenStack platform

Foundations for your. portable cloud

White Paper Server. SUSE Linux Enterprise Server 12 Modules

Data Centers and Cloud Computing

Oracle Database Cloud

Azure Day Application Development

Matchmaking in the Cloud: Amazon EC2 and Apache Hadoop at eharmony

Mobile Application Development Platform Comparison

PaaS solutions evaluation

Certified Selenium Professional VS-1083

Mission-Critical Cloud/Enterprise Hybrid Deployments

Best Practices for Python in the Cloud: Lessons

How To Manage Change In Jeepers

SOFTWARE TESTING TRAINING COURSES CONTENTS

Enterprise Cloud Use Cases and Security Considerations

ANALYSIS OF CLOUD VENDORS IN INDIAN ENVIORNMENT

VIRTUALIZATION IS NOT THE CLOUD AN ANALYSIS OF THE GAPS BETWEEN VIRTUALIZATION AND CLOUD COMPUTING

CLOUD TECH SOLUTION AT INTEL INFORMATION TECHNOLOGY ICApp Platform as a Service

NEXT UP: John Sanderson, Windows Azure Specialist (Denver) Page 1

Open Source Cloud Technology for Enterprise Computing

Certified Cloud Computing Professional Sample Material

CLOUD COMPUTING. When It's smarter to rent than to buy

STUDY AND ANALYSIS OF AUTOMATION TESTING TECHNIQUES

Outline. What is cloud computing? History Cloud service models Cloud deployment forms Advantages/disadvantages

Oracle Middleware a felhőben

Analysis of the European Platform-as-a-service Market. The Need for Efficient Application Delivery will Influence PaaS Growth

Intro to Docker and Containers

Certified Cloud Computing Professional VS-1067

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

How To Understand Cloud Computing

Project Documentation

Cloud Computing Architecture: A Survey

WEBAPP PATTERN FOR APACHE TOMCAT - USER GUIDE

RED HAT CLOUD SUITE FOR APPLICATIONS

Digital Signage in the Cloud

Jenkins: The Definitive Guide

HDFS Cluster Installation Automation for TupleWare

CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series

The Virtualization Practice

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

1 Copyright 2011, Oracle and/or its affiliates. All rights reserved.

Fundamentals of Cloud Computing

Tutto quello che c è da sapere su Azure App Service

Cloud/SaaS enablement of existing applications

Sriram Krishnan, Ph.D.

Jfokus PaaS Hands-On Lab

Last time. Today. IaaS Providers. Amazon Web Services, overview

Stackato PaaS Architecture: How it works and why.

OpenShift. Marek Jelen, OpenShift, Red Hat

Energy: electricity, electric grids, nuclear, green... Transportation: roads, airplanes, helicopters, space exploration

Scalable Architecture on Amazon AWS Cloud

Cloud Computing The Evolution of IT

Cloud computing: the state of the art and challenges. Jānis Kampars Riga Technical University

RED HAT CLOUD SUITE FOR APPLICATIONS

Integrating Web - based Services with Distributed Computing over a Network

Challenges for cloud software engineering

Distributed Systems. Cloud & the Internet of Things. Björn Franke University of Edinburgh, 2015

Cloud Computing Technology

STRATEGIES FOR SUCCESS IN THE CLOUD THE FIVE KEYS TO EXCEPTIONAL BUISINESS IMPACT

Transcription:

Developer support in a federated Platform-as-a-Service environment Master s Thesis Emanuele Rocca Vrije Universiteit Amsterdam Parallel and Distributed Computer Systems June 14, 2012 Emanuele Rocca Developer support in a federated PaaS environment 1/35

What is this all about How to make software developers life easier in the cloud. Emanuele Rocca Developer support in a federated PaaS environment 2/35

Outline Cloud Computing 1 Cloud Computing 2 3 Emanuele Rocca Developer support in a federated PaaS environment 3/35

Cloud Computing: everyone talks about it Emanuele Rocca Developer support in a federated PaaS environment 4/35

Cloud Computing: what are we talking about? Another stack CS students have to remember! Software as a Service Platform as a Service Infrastructure as a Service Emanuele Rocca Developer support in a federated PaaS environment 5/35

Cloud Computing: what are we talking about? Another stack CS students have to remember? Software as a Service Software Platform as a Service Middleware Infrastructure as a Service Hardware Emanuele Rocca Developer support in a federated PaaS environment 6/35

Cloud Computing: PaaS and developers PaaS: The software platform where systems run on. Developers make software that runs on some hardware! Emanuele Rocca Developer support in a federated PaaS environment 7/35

Cloud Computing: PaaS and developers Developers use the functionalities offered by PaaS systems to do their job. Certainly someone has studied how to make their life easier? Emanuele Rocca Developer support in a federated PaaS environment 8/35

Cloud Computing: PaaS and developers No, nobody has studied how to make devs life in the cloud easier. Emanuele Rocca Developer support in a federated PaaS environment 9/35

Emanuele Rocca Developer support in a federated PaaS environment 10/35

Developers are users of PaaS systems. Many efforts spent on User Experience. How about Developer Experience? Emanuele Rocca Developer support in a federated PaaS environment 11/35

: support through the SD process Activities of the Software development process: Requirements and Specifications Architecture and Design Implementation Testing Debugging Deployment Emanuele Rocca Developer support in a federated PaaS environment 12/35

: support through the SD process Activities of the Software development process: Requirements and Specifications Architecture and Design Implementation: supported programming languages Testing: availability of good testing tools Debugging: monitoring and administrative tools Deployment: intuitive, pain-free deployment options Emanuele Rocca Developer support in a federated PaaS environment 13/35

Outline Cloud Computing 1 Cloud Computing 2 3 Emanuele Rocca Developer support in a federated PaaS environment 14/35

Analysis of PaaS offerings 1 Programming languages Every offering supports PHP and Java Many support Python and Ruby Lesser-known languages are also often available 2 Testing tools PaaS systems usually provide environments to test the applications locally Unit and Functional testing are neglected! 3 Deployment options Tarball based VCS based Emanuele Rocca Developer support in a federated PaaS environment 15/35

Improving the DX offered by ConPaaS ConPaaS is a Platform as a Service system developed by the Vrije Universiteit Amsterdam, Zuse Institut Berlin and XLAB Ljubljana in the Contrail E.U. project. It allows to deploy services such as webapps, databases, mapreduce and more on public and private clouds. Every service has a manager and one or more agents. Emanuele Rocca Developer support in a federated PaaS environment 16/35

Improving the DX offered by ConPaaS ConPaaS does well from the point of view of supported programming languages PHP and Java are supported Python is coming Adding new languages is easy Emanuele Rocca Developer support in a federated PaaS environment 17/35

Improving the DX offered by ConPaaS I have focused on the deployment and testing activities of the Software development process 1 Adding support for GIT-based code deployments 2 Integrating the Selenium functional testing framework Emanuele Rocca Developer support in a federated PaaS environment 18/35

GIT-based code deployments Developers use version control systems such as GIT to keep track of code changes Many PaaS systems allow code deployments via GIT ConPaaS had to catch up! Emanuele Rocca Developer support in a federated PaaS environment 19/35

GIT-based code deployments Developers upload their SSH public keys Application code can be updated via git push Multiple public keys are accepted. Collaborative development Emanuele Rocca Developer support in a federated PaaS environment 20/35

GIT-based code deployments A specific code version can be activated from the command line. Automation is possible. Emanuele Rocca Developer support in a federated PaaS environment 27/35

Functional testing of web applications Current Platform as a Service offerings neglect the Testing activity of the software development process Opportunity for ConPaaS! Emanuele Rocca Developer support in a federated PaaS environment 28/35

Functional testing of web applications: Selenium Selenium offers a way to remotely control web browsers Complex, modern web applications can be tested from the functional point of view eg: if we open www.conpaas.eu and click on Features, do we get a page with ConPaaS - Features in the title? Emanuele Rocca Developer support in a federated PaaS environment 29/35

Functional testing of web applications: an example Emanuele Rocca Developer support in a federated PaaS environment 30/35

Functional testing of web applications in ConPaaS Selenium can function in Grid mode: a single server, called hub works as the point of contact for the tests Requests are proxied to a number of Selenium servers, called nodes On ConPaaS the service starts up with one agent functioning both as a hub and as a node. Users can run tests also with only one agent The service is elastic: more nodes can be added, they will register themselves with the hub Emanuele Rocca Developer support in a federated PaaS environment 31/35

Functional testing of web applications: scalability When the number of tests grows it might take a long time to get the results We need quick feedback! Unlimited horizontal scalability on ConPaaS: simply add new agents Emanuele Rocca Developer support in a federated PaaS environment 34/35

Conclusions Cloud Computing Developer Experience should be considered as a key aspect by Platform as a Service vendors ConPaaS is a nice system with many interesting features and properties. It is now more appealing to developers, but we can do even better! Emanuele Rocca Developer support in a federated PaaS environment 35/35