Auto-scaling Axis2 Web Services on Amazon EC2 By Afkham Azeez.

Slides:



Advertisements
Similar presentations
A Lightweight Platform for Integration of Mobile Devices into Pervasive Grids Stavros Isaiadis, Vladimir Getov University of Westminster, London {s.isaiadis,
Advertisements

Auto-scaling Axis2 Web Services on Amazon EC2 By Afkham Azeez.
Ed Duguid with subject: MACE Cloud
Enterprise Architecture Firm Architecture World ‘10 SOA on Demand Ulf Fildebrandt Chief Development Architect SOA Infrastructure SAP AG.
EHarmony in Cloud Subtitle Brian Ko. eHarmony Online subscription-based matchmaking service Available in United States, Canada, Australia and United Kingdom.
Amazon Web Services and Eucalyptus
Building a scalable multi-tenanted Application Server on the Cloud using Tomcat, Axis2 & Synapse Senaka Fernando (senaka at apache.org)
Cloud Computing Imranul Hoque. Today’s Cloud Computing.
Management Framework for Amazon EC2 Speaker: Frank Bitzer
Cloud Computing (101).
Undergraduate Poster Presentation Match 31, 2015 Department of CSE, BUET, Dhaka, Bangladesh Wireless Sensor Network Integretion With Cloud Computing H.M.A.
Architecture overview 6/03/12 F. Desprez - ISC Cloud Context : Development of a toolbox for deploying application services providers with a hierarchical.
Institute of Computer Science AGH Performance Monitoring of Java Web Service-based Applications Włodzimierz Funika, Piotr Handzlik Lechosław Trębacz Institute.
Supervisor: Hadi Salimi Abdollah Ebrahimi Mazandaran University Of Science & Technology January,
WORKFLOWS IN CLOUD COMPUTING. CLOUD COMPUTING  Delivering applications or services in on-demand environment  Hundreds of thousands of users / applications.
11 SERVER CLUSTERING Chapter 6. Chapter 6: SERVER CLUSTERING2 OVERVIEW  List the types of server clusters.  Determine which type of cluster to use for.
Plan Introduction What is Cloud Computing?
ENTERPRISE JOB SCHEDULER SAJEEV RAMAKRISHNAN 29 AUG 2014.
IT – Towards User Defined Services
Cloud Computing and its Implementation ELYSIUM TECHNOLOGIES PRIVATE LIMITED Madurai | Trichy | Coimbatore | Kollam | Cochin | Tirunelveli T. Udhaya Shankar,
A Brief Overview by Aditya Dutt March 18 th ’ Aditya Inc.
GridGain – Java Grid Computing Made Simple Dmitriy Setrakyan
Cloud Computing for the Enterprise November 18th, This work is licensed under a Creative Commons.
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
 Cloud computing  Workflow  Workflow lifecycle  Workflow design  Workflow tools : xcp, eucalyptus, open nebula.
MapReduce April 2012 Extract from various presentations: Sudarshan, Chungnam, Teradata Aster, …
Cloud Computing. What is Cloud Computing? Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable.
Cloud Computing 1. Outline  Introduction  Evolution  Cloud architecture  Map reduce operation  Platform 2.
A Lightweight Platform for Integration of Resource Limited Devices into Pervasive Grids Stavros Isaiadis and Vladimir Getov University of Westminster
Introduction to Cloud Computing
Service Architecture of Grid Faults Diagnosis Expert System Based on Web Service Wang Mingzan, Zhang ziye Northeastern University, Shenyang, China.
Cloud Computing & Amazon Web Services – EC2 Arpita Patel Software Engineer.
NCICB Systems Architecture Bill Britton Terrapin Systems LPG/NCICB Dedicated Support.
Cloud Computing Dave Elliman 11/10/2015G53ELC 1. Source: NY Times (6/14/2006) The datacenter is the computer!
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Plan  Introduction  What is Cloud Computing?  Why is it called ‘’Cloud Computing’’?  Characteristics of Cloud Computing  Advantages of Cloud Computing.
Conversing in the Cloud Ryan Kupfer, Scott Wetter, Bryan Welfel, Shekhar Pradhan.
Looking Ahead to Carbon 5 and Stratos 2 and Beyond By Afkham Azeez, Amila Suriarachchi.
Building a scalable multi-tenanted Cloud-native Application Server using Tomcat, Axis2 & Synapse.
 Apache Airavata Architecture Overview Shameera Rathnayaka Graduate Assistant Science Gateways Group Indiana University 07/27/2015.
The Eucalyptus Open-source Cloud Computing System Daniel Nurmi Rich Wolski, Chris Grzegorczyk, Graziano Obertelli, Sunil Soman, Lamia Youseff, Dmitrii.
Paperless Timesheet Management Project Anant Pednekar.
Stairway to the cloud or can we take the highway? Taivo Liik.
CHAPTER 7 CLUSTERING SERVERS. CLUSTERING TYPES There are 2 types of clustering ; Server clusters Network Load Balancing (NLB) The difference between the.
Cloud services Amazon Web Service (AWS) Intro and usage.
MidVision Enables Clients to Rent IBM WebSphere for Development, Test, and Peak Production Workloads in the Cloud on Microsoft Azure MICROSOFT AZURE ISV.
GOOGLE APP ENGINE By Muktadiur Rahman. Contents  Cloud Computing  What is App Engine  Why App Engine  Development with App Engine  Quote & Pricing.
Web Technologies Lecture 13 Introduction to cloud computing.
Open J2EE Session Cluster December Open J2EE Session Cluster 2 Agenda Drivers Existing products Description Technology choices Demo Plan.
QlikView Architecture Overview
Cloud Computing from a Developer’s Perspective Shlomo Swidler CTO & Founder mydrifts.com 25 January 2009.
 Cloud Computing technology basics Platform Evolution Advantages  Microsoft Windows Azure technology basics Windows Azure – A Lap around the platform.
Fault – Tolerant Distributed Multimedia Streaming Web Application By Nirvan Sagar – Srishti Ganjoo – Syed Shahbaaz Safir
Overview on the work performed during EPIKH Training Faiza MEDJEK /INFN, CATANIA 1.
Project Cumulus Overview March 15, End Goal Unified Public & Private PaaS for GlassFish/Java EE Simplify deployment of Java EE Apps on top of.
Agenda  What is Cloud Computing?  Milestone of Cloud Computing  Common Attributes of Cloud Computing  Cloud Service Layers  Cloud Implementation.
Auto-scaling Services on Amazon EC2. Auto-scaling of Services (1/2) Write the service, deploy it on the cloud, and it simply scales Simply store the state.
Autocloud by Bryan Rosander. Motivation Cloud computing makes vast computing resources available at a reasonable price on an as-needed basis Configuring.
Architecting Enterprise Workloads on AWS Mike Pfeiffer.
Scaling Network Load Balancing Clusters
Cloud Data platform (Cloud Application Development & Deployment)
Platform as a Service.
The Improvement of PaaS Platform ZENG Shu-Qing, Xu Jie-Bin 2010 First International Conference on Networking and Distributed Computing SQUARE.
Web Based Application Cloud services, in the form of centralized web-based applications, also appeal to the IT professional. One instance of an application.
Amazon AWS Solution Architect Associate Exam Dumps For Full Exam Info Visit This Link:
AWS Certified Advanced Networking – Specialty Exam Dumps For Full Exam Info:
Get Amazon AWS-DevOps-Engineer-Professional Exam Real Questions - Amazon AWS-DevOps-Engineer-Professional Dumps Realexamdumps.com
Replication Middleware for Cloud Based Storage Service
Cloud Computing and its Implementation
Presentation transcript:

Auto-scaling Axis2 Web Services on Amazon EC2 By Afkham Azeez

Overview TODO

The Problem Fault tolerance, high availability & scalability are essential prerequisites for any enterprise application deployment One of the major concerns is avoiding single points of failure There is a high cost associated with achieving high availability & scalability.

Solutions Traditional solution – Buying safety-net capacity Better solution – Scale-up the system when the load increases – Scale-down the system when the load decreases – Should not have idling nodes – Virtualization – Pay only for the actual computing power & bandwidth utilized

Project Objective Building a framework which will auto-scale the number of Axis2 nodes on Amazon EC2, depending on the load

Amazon EC2 Amazon EC2 provides resizable compute capacity in the cloud Provides a simple Web service interface & tooling that allows one to obtain and configure capacity with ease & to build failure resilient applications

Apache Axis2 Axis2 is a middleware platform which enables hosting of Web service applications and supports some of the major Web services standards Can host Web services written in Java as well as various scripting languages Can be deployed in a clustered configuration Uses Apache Tribes for clustering Axis2 clustering can be adopted to work on EC2

Apache Synapse Apache Synapse is designed to be a simple, lightweight and high performance ESB Supports load balancing with or without failover Supports static & dynamic load balancing Uses Apache Axis2

Apache Tribes A messaging framework with group communication abilities Allows you to send and receive messages over a network, it also allows for dynamic discovery of other nodes in the network. Used by Apache Tomcat & Apache Axis2

Deploying a Service on the Cloud AMI Instances

Deploying a Service on the Cloud

Service is available now

Auto-scaling

Load Increases

Auto-scaling Startup new instances

Auto-scaling New instances join group

Auto-scaling Load Decreases

Auto-scaling Terminate instances

Auto-scaling Terminate instances

Deployment Architecture

Membership Aware Dynamic Load Balancing (1/2) ‏

Membership Aware Dynamic Load Balancing (2/2) ‏

Membership Schemes Static Dynamic Hybrid (WKA based)‏

WKA Based Membership (1/3) ‏ Application member joins. The load balancer is also a well-known member

WKA Based Membership (2/3) ‏ A non-WK load balancer joins

WKA Based Membership (3/3) ‏ A well-known load balancer rejoins after crashing

Membership Channel Architecture

Initialization Channel Architecture

Synapse Configuration - axis2.xml

Synapse Configuration - synapse.xml

Synapse Autoscale Task

Axis2 Configuration - axis2.xml

Synapse Configuration AutoscaleInMediator AutoscaleOutMediator Autoscale Task

Synapse Autoscale Task Sanity Check Autoscaling –Scale up –Scale down

Synapse Configuration AutoscaleInMediator AutoscaleOutMediator MessageID List LoadAnalyzer Task SendMediator DynamicLoadbalanceEndpoint SendMediator EC2 Client Synapse From client To client To Axis2 From Axis2 To EC2 WS Get length Invoke IN OUT Normal Flow

Synapse Configuration AutoscaleInMediator AutoscaleOutMediator MessageID List LoadAnalyzer Task SendMediator DynamicLoadbalanceEndpoint MakeFaultMediator EC2 Client Synapse From client To client To Axis2 From Axis2 To EC2 WS Get length Invoke IN ErrorHandler SendMediator Fault Flow

Implementation Details Single AMI - autoscalews Payload –Extract params from payload –Env variables Axis2 & Synapse Configuration files & Repositories –Maintained on S3 Fault Tolerance –Monitoring cron job –Java Service Wrapper daemons –Future: Use monit –Future: Axis2/Synapse agent to check process status

Implementation Details Start Initial Instance LB Group Axis2 App Group synapse.xml S3 Bucket Load configuration

Implementation Details Repo Conf Axis2 Instance S3 Bucket Load repo Load configuration

Implementation Details Conf Synapse Load Balancer Instance S3 Bucket Load configuration

TODO RightScale comparison Google App Engine comparison Eucalyptus AppScale Perf figures

Questions Suggestions Improvements

Thank You