Cloud application platform chapter_2.pptx

258 views 61 slides Mar 25, 2024
Slide 1
Slide 1 of 61
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61

About This Presentation

Cloud application platform


Slide Content

Module 2 – Chapter 2 ANEKA-CLOUD APPLICATION PLATFORM

Concept Overview Introduction Anatomy of the Aneka Container Building Aneka Clouds Cloud Programming and Management 2

Introduction Aneka is Manjrasoft’s solution for developing, deploying, and managing cloud applications. Aneka is a software platform for developing cloud computing applications Aneka is a pure PaaS solution for cloud computing. Aneka is a cloud middleware product that can be deployed on a heterogeneous set of resources. Like: a network of computers, a mul ti core server, data centers , virtual cloud infrastructures, or a mixture of all 3

Aneka Capabilities 4 Multiple Infrastructures Multi-core Cluster Grid Cloud Thread Task ... MapReduce 2100 2100 2100 2100 2100 2100 2100 2100 Aneka Multiple Applications 1. SDK 2. Runtime

Introduction overview Lightweight Container hosting multiple services. All programming models available from within the same container. SDK containing APIs for multiple programming models and tools. Runtime Environment for managing application execution management 5

Aneka Framework Overview The framework provides Middleware for managing and scaling distributed applications. An extensible set of APIs for developing them. 6

7

Aneka Framework Overview contd … The Physical and Virtual resources representing the bare metal of the cloud are managed by the Aneka container. Container is installed on each node and constitutes the basic building block of the middleware. A collection of interconnected containers constitute the Aneka Cloud. 8

Aneka Framework Overview contd … The container features three different classes of services: Fabric Services Takes care of infrastructure management Foundation Services Supporting services for the Aneka Cloud Execution Services. Application management and execution 9

Various Services offered by Aneka Cloud Platform Aneka implements a service-oriented architecture (SOA). Services operate at container level Services provide developers, users, and administrators with all features offered by the framework. The services offered are: - Elasticity and Scaling : By means of the dynamic provisioning service, Aneka supports dynamically upsizing and downsizing of the infrastructure available for applications. Runtime Management : The run time mach inery is responsible for keeping the infrastructure up and running and serves as a hosting environment for services. 10

Various Services offered by Aneka Cloud Platform contd … Application Management : services include scheduling, execution, monitoring, and storage management User Management : Aneka is a multi tenant distributed environment in which multiple applications, potentially belonging to different users, are executed. The framework provides an extensible user system via which it is possible to define users, groups, and permissions 11

Various Services offered by Aneka Cloud Platform contd … QoS /SLA Management and Billing Within a cloud environment, application execution is metered and billed. Aneka provides a collection of services that coordinate together to take into account the usage of resources by each application and to bill the owning user accordingly 12

Anatomy of the Aneka Container It is a runtime machinery available to services and applications. it is a lightweight software layer designed to ho st services and interact with the underlying operating system and hardware The services stack resides on top of the Platform Abstraction Layer(PAL) . 13

14

Anatomy of the Aneka Container contd … The Aneka container can be classified into three major categories: • Fabric Services • Foundation Services • Application Services 15

Anatomy of the Aneka Container contd … Platform Abstraction Layer (PAL) PAL provides the container with a uniform interface for accessing the relevant hardware and operating system information. 16

17

Anatomy of the Aneka Container contd … PAL is responsible for detecting the supported hosting environment The PAL provides the following features: Uniform and platform-independent implementation interface for accessing the hosting platform Uniform access to extended and additional properties of the hosting platform Uniform and platform-independent access to remote nodes Uniform and platform-independent management interfaces 18

Anatomy of the Aneka Container contd … The PAL is a small layer of software comprises a detection engine that automatically configures the container at boot time. The collectible data that are exposed by the PAL are Number of cores, frequency, and CPU usage Memory size and usage Aggregate available disk space Network addresses and devices attached to the node 19

20

Services Stack Fabric services Foundation services Application and Execution Services 21

Fabric Services Define the lowest level of the software stack representing the Aneka Container. It consists of Profiling and Monitoring Services Resource Management Services 22

23

Fabric Services contd … Profiling and monitoring services :-- Heartbeat service Periodically collects the dynamic performance about the nodes The basic information about memory, disk space, CPU and OS are collected. This information is published to membership services in the Aneka cloud. A specific component, called Node Resolver , is in charge of collecting these data and making them available to the Heartbeat Service Reporting service Manages the store for monitored data and makes them accessible to other services or external applications for analysis purposes . Monitoring Acts as a gateway to the reporting service Forwards all the monitored data that has been collected on the node. 24

Fabric Services contd … Built in Services used to provide information through this channel are:- Membership Catalogue : performance information of nodes Execution Service : monitors several time intervals for the execution of jobs Scheduling Service : tracks the state transitions of jobs. Storage Service : monitors and obtains information about data transfer such a s upload and download times, file names, and sizes Resource Provisioning Service : tracks the provisioning and life time information of virtual nodes. 25

Fabric Services contd … Resource Management services Tasks comprised are Resource Membership ( Index or Membership Catalogue) It keeps track of the basic information for all the nodes that are connected or disconnected Directory service – where services can be searched using attributes such as names and nodes Resource Reservation Resource Provisioning All the operations that are needed for provisioning virtual instances. ( Providing virtual instances as needed by users). Supports QoS requirements. 26

Services Stack Fabric services Foundation services Application and Execution Services 27

28

Foundation Services Foundation Services are related to the logical management of the distributed system built on top of the infrastructure Provide supporting services for the execution of distributed applications. Services covers : Storage Management for applications Accounting, billing, and resource provisioning Resource reservation 29

Foundation Services contd … Storage Management Offers two different facilities for storage management. Centralized file storage Used for the execution of compute- intensive applications Scientific applications Distributed file system Used for the execution of data-intensive applications . marketing analytics, image processing, machine learning, and web crawling 30

31

Foundation Services contd … Storage Management Centralized file storage Implemented through and managed by Aneka’s Storage Service . Distributed applications are provided with the basic file transfer facility using the normal File Transfer Protocol (FTP). The protocols for implementing centralized storage management are supported by a concept of File channel It consist of a file channel controller and a file channel handler. The file channel controller constitutes the server component of the channel. The file channel handler represents the client component 32

Foundation Services contd … Storage Management Distributed file system Data-intensive applications are characterized by large data files (gigabytes or terabytes , peta bytes) and here processing power required by tasks is not more a distributed file system is used for storing data by using all the nodes belonging to the cloud . Google File system is best example for dis tributed file systems 33

34

35

Foundation Services contd … Accounting, Billing, and Resource pricing Accounting services keep track of the status of applications in the Aneka Cloud. The collected information provides a detailed break down of the distributed infrastructure usage. This information constitutes the foundation on which users are charged in Aneka. Billing is another important feature of accounting . Resource pricing is associated with the price fixed for different types of resources/nodes that are provided for the subscribers. Powerful resources are priced high and less featured resources are priced low 36

Foundation Services contd … Resource Reservation Allows for reserving resources for exclusive use by specific applications . Two types of services are used to build resource reservation Resource Reservation Keeps track of all the reserved time slots in the Aneka Cloud . Allocation Service Installed on each node that features execution services Manages the information about allocated slots on the local node. 37

Foundation Services contd … Resource Reservation Three types of Reservation Service Implementations are supported by Aneka Cloud Basic Reservation basic capability to reserve execution slots on nodes implements the alternate offers protocol, which provides alternative options in case the initial reservation requests cannot be satisfied. Libra Reservation the ability to price nodes differently according to their hardware capabilities Relay Reservation allows a resource broker to reserve nodes in Aneka Clouds and control the logic with which these nodes are reserved. 38

Services Stack Fabric services Foundation services Application and Execution Services 39

40

Application Services Manage the execution of applications. The types and the number of services that compose this layer for each of the programming models may vary according to the specific needs or features of the selected model. Two major types of activities that are common across all the supported models ( Two types of services )are : Scheduling Service Execution Service 41

Application Services …..Scheduling Service In charge of planning the execution of distributed applications on top of Aneka. Governing the allocation to nodes. Common tasks that are performed by the scheduling component Job to node mapping Rescheduling of failed jobs Job status monitoring Application status monitoring 42

Application Services…..Execution Services Control the execution of single jobs that compose applications. Some common operations Unpacking the jobs received from the scheduler Retrieval of input files required for job execution Submission of output files at the end of execution 43

Application Services …Supported Models Application Services constitutes the runtime support of the programming model in the Aneka Cloud. Task Model Thread Model Map Reduce Model Parameter Sweep Model 44

Application Services …Supported Models Task Model : In this model, an application is modeled as a collection of tasks that are independent from each other and whose execution can be sequenced in any order. 45

Application Services …Supported Models Thread Model: An extension to the classical multithreaded programming to a distributed infrastructure. Uses the abstraction of Thread to wrap a method that is executed remotely. 46

Application Services …Supported Models Map Reduce Model: This is an implementation of Map Reduce as proposed by Google on top of Aneka. Parameter Sweep Model: Specialization of the Task Model for applications that can be described by a template task whose instances are created by generating different combinations of parameters, which identify a specific point into the domain of interest. 47

48

Building Aneka clouds Aneka is primarily a platform for developing distributed applications for clouds. Aneka supports various deployment models for public, private, and hybrid clouds. 49

Aneka Cloud Infrastructure Overview 50 Aneka Repository Aneka Containers Node Manager Node Manager Aneka Containers Aneka Containers Node Manager Node Manager Aneka Containers Management Console update HTTP File Share ……

Logical Organization of the Aneka Cloud 51 Reservation Provisioning Reporting Accounting Mandatory Index (master) Scheduling Failover Mandatory Index (slave) Storage Storage Node Allocation Mandatory Index (slave) Execution Worker Node Reservation Provisioning Reporting Accounting Mandatory Index (master) Scheduling Master Node Allocation Mandatory Index (slave) Execution Worker Node Allocation Mandatory Index (slave) Execution Worker Node Mandatory Index (slave) Storage Storage Node

Private cloud deployment model 52 Resource Provisioning Application Management & Scheduling Resource Reservation Master Node Desktop Machines Virtual Clusters Workstations Clusters

Public cloud deployment model 53 Resource Provisioning Application Management & Scheduling Master Node Reporting, Billing, Accouting Amazon EC2 Instance Amazon EC2 Instances Slave Nodes EC2 Boundaries

Hybrid cloud deployment model 54 Provisioning Service Application Management & Scheduling Reporting, Billing, Accouting Public Clouds Desktops & Workstations Clusters Virtual Cluster Resources Resource Reservation Master Node Local Infrastructure

Cloud Programming and Management Aneka’s primary purpose is to provide a scalable middleware product in which to execute distributed applications. Application development and management constitute the two major features that are exposed to developers and system administrators. To simplify these activities, Aneka provides developers with a comprehensive and extensible set of APIs and administrators with powerful and intuitive management tools. The APIs for development are mostly concentrated in the Aneka SDK; management tools are exposed through the Management Console. 55

Aneka SDK Support is provided through Application Model Service Model 56

Application Model Aneka provides support for distributed execution in the Cloud with the abstraction of programming models. The Application Model represents the minimum set of APIs that is common to all the programming models for representing and programming distributed applications on top of Aneka. 57

Service Model The Aneka Service Model defines the basic requirements to implement a service that can be hosted in an Aneka Cloud. The container defines the runtime environment in which services are hosted. Each service that is hosted in the container must be compliant with the IService interface. This interface exposes the following methods and properties: Name and status Control operations such as Start, Stop, Pause, and Continue methods Message handling by means of the Handle Message method 58

Aneka provides a default base class for simplifying service implementation and a set of guidelines that service developers should follow to design and implement services . The guidelines define a Service Base class that can be further extended to provide a proper implementation. This class is the base class of several services in the framework and provides some built-in features: Implementation of the basic properties exposed by IService Implementation of the control operations with logging capabilities and state control Built-in infrastructure for delivering a service specific client Support for service monitoring 59

60 Service Life Cycle

Management Tools Aneka is a pure PaaS implementation and requires virtual or physical hardware to be deployed. infrastructure management, together with facilities for installing logical clouds on such infrastructure, is a fundamental feature of Aneka’s management layer. This layer also includes capabilities for managing services and applications running in the Aneka Cloud. 61
Tags