A Multitier Architecture For Improving the Performance of

Document Sample
A Multitier Architecture For Improving the Performance of Powered By Docstoc
					 National Conference on Role of Cloud Computing Environment in Green Communication 2012
                                                                                                                                    50




  A Multitier Architecture For Improving the Performance of
               Applications in Cloud Computing
                           *Sangeetha S. Nair.,**Shaji D. S.,***Elizabeth Sherly
                     *M.E Student,** Assistant Professor,Sun College of Engineering and Technology
                                      ,***IIITMK,Technopark,Trivandrum,kerala




  Abstract— The increasing demand for resources and                over time. This is a problem for most conventional
  applications requires a flexible platform for the                performance models, which implicitly assume that
  deployment. Cloud computing is emerging as a key                 transaction mix is stationary. Hence necessary
  computing platform for sharing resources that include            modifications are needed in the modeling to incorporate
  infrastructure, software, applications and business              the real time requirements. The recent work of [2]
  process. Virtualization is a core technology for                 proposed a closed queuing (QNM) of the three tiered web
  enabling cloud resource sharing. Modern Internet and             applications. The three tiered system composed of a front
  E-business application are usually structured into               end web server, an application server and a back end
  multiple logical tiers. Each tier act independently or in        database server. The model provides a quantitative way to
  tandem to carry out computational processing.                    analyze the effectiveness of the web services.
  Managing application level performance in virtualized
  environment is challenging because time varying                            Virtualization is a promising technique that
  resource demand is a characteristic of distributed               enables consolidation of heterogeneous applications into a
  application in a virtualized environment. This paper             fewer number of servers, while ensuring secure co-
  presents a multitier architecture for improving the              location between competing applications. This results in
  performance of various applications deployed in the              higher resource utilization and reduction in energy costs
  cloud environment.                                               (by turning off extra servers). The existing work [3] in
                                                                   general aims at the task of monitoring system resource
                                                                   usage, hot spot detection, determining a new mapping and
  Keywords- Dynamic Resource Allocation, Mean                      initiating necessary migrations. These techniques are
  response time, Cloud computing, Transaction mix,                 implemented using the Xen virtual machine. Sandpiper
  Virtualization.                                                  imposes negligible overheads and that gray-box statistics
                                                                   enables sandpiper to make better migration decisions when
                                                                   alleviating memory hotspots. Modern Internet applications
  I    Introduction                                                are complex software systems that employ multi tier
                                                                   architecture and are replicated or distributed on a cluster of
      Cloud is a cluster of servers, where servers can be          servers. Each tier provides certain functionality to its
  added and removed on demand. Computing includes                  preceding tier and makes use of the functionality provided
  designing and building hardware and software systems for         by its successor to carry out its part of the overall
  a wide range of purposes, processing, structuring and            processing.
  managing various kinds of information etc. Cloud
  computing increases profitability by improving resource                    Urgaonkar et al. (2005) have presented an
  utilization. Pooling resources into large clouds drives          analytical model for multi tier Internet application based
  down costs and increases utilization by delivering               on a network of queues. The model represents how the
  resources. Cloud computing allows individuals, team and          tiers in multitier application cooperate to process requests
  organization to streamline the procurement and eliminate         and demonstrated the utility of the model in managing
  the need to duplicate certain administrative skills related to   resources for internet application under varying workloads
  setup, configuration and support.                                and shifting bottlenecks. The capacity of the model to
                                                                   capture the performance of applications for varying
                A practical, versatile and accurate approach       workloads and configurations, has been validated using
  to predicting application level response times in complex        two open source multitier applications running on a Linux
  modern distributed application is discussed in [1].              based server cluster.
  transaction mixes in the workloads of the real production
  applications are highly non-stationary in the sense that the
  relative frequencies of transaction types vary considerably


Department of CSE, Sun College of Engineering and Technology
National Conference on Role of Cloud Computing Environment in Green Communication 2012
                                                                                                                                       51


                                                                network etc. These resources can be either physical or (file
                                                                systems). There will be an intermediate
II. ARCHITECTURE

    The general cloud computing layer classifies cloud
technologies into different layers.(i) infrastructure as a
service(ii) platform as a service(iii) software as a service.
The infrastructure as a service is the delivery of computer
infrastructure such as server, storage and network and
associated software. The consumer uses fundamental
computing resources such as processing power ,storage,
networking components or middleware. The client can
control the operating system, storage, deployed
applications and possibly networking components such as
fire walls and load balancers, but not the cloud
infrastructure beneath them. The platform is typically an
application frame work. The services in the layer are
categorized as programming environments and execution
environments. The Amazons Elastic Compute Cloud (EC2)
is a typical example of an operating system in the cloud.
The client uses a hosting environment for their applications
and controls the applications that run in the environment,
but does not control the operating system, hardware or
network infrastructure on which they are running. Software
as a service features a complete application offered as a
service on demand.A single instance of the software runs
on the cloud and services multiple end users. The
architecture for application level performance management
in cloud environment is shown in figure1.                         Figure1. Architecture for application level performance management

          The cloud computing system may be divided with        management layer with functions such as management of
the front end and the back end. They connect to each other      resources, data management, security and cloud
through a network, usually the Internet. The front end is       application programming interface. The functions of data
the side the computer user or client. The back end is           management are data location, transfer and management of
the”cloud” section of the system. The front end includes        distributed data. The security management mechanism
the client’s computer or computer network and the               must provide measures such as accessing control measure
application required to access the cloud computing system.      and information encryption measure to ensure integrity,
Not all cloud computing systems have the same user              safety etc.
interface.                                                       Cloud application programming interface provides
                                                                standard programming interface up to layer users and is
  On the back end of the system are the various computers,      the execution of various applications. Suitable protocol
servers and data storage systems that create the”cloud” of      mechanism should be there to control the logical entity to
computing services. In theory, a cloud computing system         the upper layer.
could include practically any computer program you can
imagine, from data processing to video games. Usually,          II. Virtualization
each application will have its own dedicated server.
                                                                    Virtualization technology can securely execute
    A central server administers the system, monitoring         multiple virtual machines on a single physical system
traffic and client demands to ensure everything runs            without any modification on user space application and
smoothly. It follows a set of rules called protocols and uses   libraries. Virtualization approaches incorporates hardware
a special kind of software called middleware. Middleware        as well as software. Here physical servers can be added or
allows networked computers to communicate with each             removed without affecting the normal operation of other
other. If a cloud computing company has a lot of clients,       equipments in the system. The storage space may be
there is likely to be a high demand for a lot of storage        dynamically allocated according to the requirement. The
space. A cloud computing system must make a copy of all         software virtualization technology enables software
its clients’ information and store it on other devices. The     sharing. Software images can be created based on the
copies enable the central server to access backup machines      degree of reusability of a set of software systems including
to retrieve data that otherwise would be unreachable.           operating systems, hypervisor and applications. In
                                                                software code virtualization, code elements will be
I Resource Layer                                                dynamically copied from storages unit and placed in the
  Resource layer includes resources that could be shared        right places based on the logic. In typical application like
by the cloud users, including computing, storage and            data repository and accounting for a company the code
                                                                elements can be dynamically retrieved and inserted into a
Department of CSE, Sun College of Engineering and Technology
National Conference on Role of Cloud Computing Environment in Green Communication 2012
                                                                                                                                52


new client. By the same token, server side programmes           dependent on the workload and utilization target. If the
can be dynamically assembled and executed based on the          total demand exceeds the server capacity, the node
code elements. The dynamic code assembly and execution          controller allocates available resources to the VMs based
technology will have greater role in multi tier application     on the predefined policies. This system uses a distributed
    The virtualization block is linked with a monitoring        and hierarchical management framework.
module in typical applications, where data monitoring is           Each application controller only needs to manage the
essential for the operation. The monitoring module is           components of the associated application and each node
assigned with monitoring both virtual machines and              controller addresses only the virtual machines on the
physical machines, including flow, status of deferent           associated node. This design allows the architecture to
operators in the grid etc. In real time applications, on line   scale up to accommodate a large number of applications,
and off line measurements can be monitored and necessary        servers and virtual machines in data centers. It also permits
modifications can be executed manually or automatically.        integration with migration controllers that can live-migrate
                                                                virtual machines to meet the total resource demand of the
                                                                applications. Integration can be done through the
                                                                configuration service, the policy engine, or other
                                                                interfaces. An application performance modeling and
                                                                parameter identification using suitable tool is needed for
                                                                the satisfactory operation. The performance target is given
                                                                to application controller. The utilization target is given to
                                                                Node controller. The resources are allocated to physical
                                                                machine by Node controller dynamically.

                                                                V. Cloud Controller

                                                                   The Cloud Controller (CLC) is the front end to the
                                                                entire cloud infrastructure. CLC provides web services
                                                                interface to the client tools on one side and interacts with
                                                                the rest of the components of the Eucalyptus infrastructure
                                                                on the other side. CLC also provides a web interface to the
                                                                users for managing certain aspects of the UEC
                                                                infrastructure. The functions of cloud controller are
                                                                Monitor the availability of resources on various
                                                                components of the cloud infrastructure, including
                                                                hypervisor nodes that are used to actually provision the
                                                                instances and the cluster controllers that manage the
                                                                hypervisor nodes, resource arbitration deciding which
                                                                clusters will be used for provisioning the instance and
Figure 2. Architecture for Application Controller               Monitoring the running instances
                                                                   Standalone or network based applications can be realised
III. Application Controller                                     through cloud environment. Web based development tool
                                                                could be used to design and develop applications for cloud
                                                                or standalone applications by utilizing cloud computing
  Each application is managed by an application controller      development resources, such as enterprise modeling
to maintain its performance target. The controller collects     software, business process modeling software, application
the application’s performance and statistics on the             development software etc. There is no boundary between
workload, and then periodically determines resource             software as a service and application as a service. Since
utilization targets for the virtual machines hosting the
                                                                software systems or applications need to be deployed and
application components.
                                                                run on different operating systems, a middle ware
A PI controller is used to control the application level        environment or different versions or configurations of them
performance management in cloud environment. The                is necessary. Also upgrading or maintaining the application
controller reacts to performance error due to the               environments involves the migration of hardware, software
fluctuation of the workload or other disturbance. The PI
                                                                and testing knowledge repositories. In this circumstances a
controller adjusts the resource allocation based on the         general applications available in the cloud environment can
prediction of workload performance in the near interval.        be utilised by different vendors with minimum cost of
Precise modeling and performance prediction is necessary        installation.
for the satisfactory operation of the controller.
                                                                VI. Service module
IV. Node Controller
                                                                   Service module takes the role of providing all resources
    Each physical server is controlled by a node controller.    to the different operators via Internet. This layer allows
It computes the resource entitlement for each VM to meet        different operators to publish their service description also
the resource utilization target as determined by the            they can search, request and consume any service whose
application controller. The needed entitlement can be           information is available in the layer.

Department of CSE, Sun College of Engineering and Technology
National Conference on Role of Cloud Computing Environment in Green Communication 2012
                                                                                                                                     53


                                                                    [7]   A. An drz eja k ” A Ca pa ci t y Ma n a gem en t
                                                                          Ser vi c e for r esour c e Pool s “Pr oce edi n gs.
                                                                          5t h In t ern a t i on a l Wor ksh op Soft wa r e
                                                                          Per for m an ce 2005, pp. 229 -237.
III C onc l usi on
                                                                          Z. Wa n g, X. Li u, A. Zh an g, C. St e wa r t ,
     Virtualization is a key technology that significantly          [8]   X. Zh u, an d T. Kel l y “Aut opa r a m :
increase performance of applications deployed on the
                                                                          a ut om a t ed con t r ol of a ppl i ca t i on l evel
cloud computing. Managing application level performance
                                                                          per for m an ce       in     vi r t ua l iz ed   ser ver
for multitier applications in virtualized server
                                                                          en vi r on m ent s “Pr oce edi n gs          2n d IEE E
environments is challenging because applications are
                                                                          In t ern a t i ona l Wor ksh op Feed - ba ck
distributed across multiple virtual machines and workloads
                                                                          ' con t r ol        Im pl em en ta t i on        Desi gn
are dynamic in their intensity and transaction mix resulting
                                                                          Com put i n g 2007.
in time varying resource demands. Architecture proposed
here provides an accurate control mechanism deployed in
multitier structure for improving the structure.                          X. Li u, J. He o, a n d L. Sh a, ” Model i n g 3-
                                                                    [9]
                                                                          Ti er ed WebAppl i ca t i on s
                                                                                               th
                    REFERENCES                                            Pr oc eedi n g 13 Ann ual Meet i n g IEE E
                                                                          In t ern a t i ona l S ym posi um 2005, pp. 307 -
                                                                          310
  [1]   C. St e wa r t , T. Kel l y, a n d A. Zh an g,
        ” E xpl oi t in g     Non -st at i on ar it y for
        per for m an ce Pr edi ct i on ” ACM SIGO PS
        Oper a t in g Syst em Re vi e w 2007. n o. 3
        vol . 41

  [2]   B. Ur ga on ka r, G. Pa ci fi ci , P. J. Sh en oy,
        M. Spr ei t z er, an d A. N. T ant a wi . An
        a na l yt i ca l m od el for m ul t i -t i er in t ern et
        ser vi c e a n d i t s a ppl i ca t i on s ACM
        SIGME T RICS P er for m an ce E va l ua t i on
        Re vi e w 2005, n o. 1, vol . 33, pp. 291 -302.
 [3]    T . Wood, P. Sh en oy, A. V en ka t ara m ani ,
        a n d M. Yousi f “ Bl a ck- box a n d gr a y- box
        st r a t egi es      for      vi r t ua l  m a chin e
        m i gr a ti on ” Pr oceedi n gs       4t h USE NIX
        S ym p osi um N et wor k S yst em D esi gn
        Im pl em en t at i on , 2007, pp. 229 -242. .

 [4]    Ra h ul      Urga on kar, Ul a s      C. Koz a t , Ken
        Iga ra sh i, Ma chi el      J. Neel y    “D yn a m i c
        Res our ce       Al l oca t i on     and     Power
        Ma n a gem en t in Vi rt ua l iz ed Da t a Cen t er s
        ” Net wor k Oper a ti on s an d Man a gem en t
        S ym p osi um 2010.

 [5]    T. Wood, P. Sh en oy, A. Ven ka t a ra man i ,
        a n d M. Yousi f “ Bl a ck- box a n d gr a y- box
        st r a t egi es      for      vi r t ua l  m a ch in e
        m i gr a ti on ” Pr oceedi n gs       4t h USE NIX
        S ym p osi um Net wor k S yst em D esi gn
        Im pl em en t at i on , 2007, pp. 229 -242.

        W. Xu, X. Zh u, S. Sin gha l , an d Z. Wan g
 [6]
        “Pr edi ct i ve     c on t r ol  for     Dyn a m i c
        r esour ce a l l oca t i on in Ent er pr i se Da t a
        Cen t er s” Pr oc eedi n gs IE E E/ IFIP Net wor k
        Oper a t i on s Mana gem en t         Sym posi um .
        Apr i l 2006.

        J. Rol i a , L. Ch er ka sova , M. Arl i t t, an d
Department of CSE, Sun College of Engineering and Technology
National Conference on Role of Cloud Computing Environment in Green Communication 2012
                                                                                         54




Department of CSE, Sun College of Engineering and Technology

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:9
posted:7/26/2012
language:English
pages:5