all about the data science process, covering the steps present in almost every data science project.

palaniappancse 43 views 117 slides Jul 09, 2024
Slide 1
Slide 1 of 117
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
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81
Slide 82
82
Slide 83
83
Slide 84
84
Slide 85
85
Slide 86
86
Slide 87
87
Slide 88
88
Slide 89
89
Slide 90
90
Slide 91
91
Slide 92
92
Slide 93
93
Slide 94
94
Slide 95
95
Slide 96
96
Slide 97
97
Slide 98
98
Slide 99
99
Slide 100
100
Slide 101
101
Slide 102
102
Slide 103
103
Slide 104
104
Slide 105
105
Slide 106
106
Slide 107
107
Slide 108
108
Slide 109
109
Slide 110
110
Slide 111
111
Slide 112
112
Slide 113
113
Slide 114
114
Slide 115
115
Slide 116
116
Slide 117
117

About This Presentation

distributed systems


Slide Content

CS8791 Cloud Computing 1

UNIT I INTRODUCTION 2

Lesson Plan Planned Hour Description of Portion to be Covered Relevant CO Nos Highest Cognitive level** 1 Definition of Cloud Computing CO5 K2 1 Characteristics of Cloud CO5 K2 1 Cloud Deployment Models CO5 K2 1 Cloud Service Models CO5 K2 1 Driving Factors and Challenges of Cloud CO5 K2 1 Virtualization – Load Balancing CO5 K2 1 Scalability and Elasticity CO5 K2 1 Replication – Monitoring CO5 K2 1 Cloud Services and Platforms Compute Services – Storage Services – Application Services CO5 K2 3

Exist in every IT organization because of its prominent benefits Cloud computing is highly correlated with other computing models like grid computing, distributed computing and parallel computing Coupled with virtualization It can solve large scale computation problems in lesser time Cloud computing has aggregation of computing resources (like CPU, memories), networking solutions, storage management and virtualization solutions which are available on demand, and delivered economically 4

The services provided by cloud follows a utility-based model It doesn’t require to setup or install any software or hardware for the usage It is a distributed computing model through which user can gain access to shared Pool of resources Applications and Services 5

Traditional methods include separate file servers, database servers, transaction servers, exchange servers and web servers. The setup and upfront cost of every server was pricey as it has required very expensive hardware Costly server operating systems and related application/database software Additionally needs additional manpower to oversee it like network administrator, System administrator, Database administrators and Web administrator Capital expense related with the earlier arrangements was excessively high and was not reasonable for small and medium-size organizations 6

7

In cloud computing, the organizations neither have to spend much on capital nor do they have to buy or setup any servers rather They are kept at cloud providers remote data center and provided with little subscription charges . The cloud services are provided through pay as you go model which generates the bill based on per hour, per minute or per second usage . The cloud service provider takes care of servers installed at their datacentres – provides a single web portal like compute, storage, network, security, analytics 8

Introduction to Cloud Computing Cloud computing gives dynamic delivery of IT services over the web with eminent features like Rapid scalability, Cost saving in infrastructure, Minimizing licensing requirement, On-demand self-service, Disaster recovery, Load balancing, The flexibility of services, High performance, High availability, get access from anywhere, at any time, on any device 9

Cloud Computing and Other Similar Configurations The cloud computing is often compared with other computing architectures like Peer-to-peer, Client-server, Grid computing, Distributed computing and Cluster computing. 10

Peer to Peer Architecture It has collection of hosts connected in a network intended for resource sharing, task processing, and communication Each host on the network act as a server and has equal right in terms of providing and using resources where users are authenticated by each individual workstation. 11

Disadvantages of peer to peer In peer to peer architecture, there is no controller or server who can control the access and communication between hosts that makes performance bottleneck . The communication happens in peer to peer architecture is completely decentralized . Lack of scalability, poor performance , low throughput, limited flexibility etc. These limitations are overcome by cloud computing by making architecture fully centralized. It can provide automated scalability , high performance, flexibility, and mobility. 12

Client Server Architecture In Client-server architecture, there is at least one specialized server which controls the communication between multiple clients. Typically , there is a server called controller who provide access to network services like shared files, shared printer, hardware storage, and application to the clients who are requester. 13

The server is responsible for handling the resource sharing, task processing and communications between the clients . So, clients have to rely on server for various access and services . It is faster than peer to peer architecture as server is responsible for granting and denying permission for access The client server architecture has centralized processing which makes faster communication with good performance. The cloud computing also follows Client server architecture but massive in size that gives seamless delivery of services with flexibility, scalability , mobility at lower cost. 14

Grid Computing Architecture It has geographically distributed computing resources which work together to perform a common task . A typical grid has pool of loosely coupled computers who worked together to solve a complex computational problem. It has heterogeneous resources which are controlled by a common node called control node like client server architecture 15

BOINC (Berkeley Open Infrastructure for Network Computing ) which enables you to use your home computer to donate processing power to research projects in various scientific fields. GIMPS – Great Internet Mersenne Prime Search To find these “needles in a haystack,” GIMPS uses the computing power of thousands of personal computers MCell project The MCell project investigates cellular microphysiology by simulating and researching molecular NASA Information Power Grid (NASA IPG) Large-scale engineering-focused grid applications have been implemented in the United States by NASA Information Power Grid (NASA IPG). 16

In Grid computing the compute resources are distributed across cities, countries, and continents They are managed completely in a distributed manner while in cloud computing although resources are distributed but they are managed centrally The Cloud computing is advantageous over Grid computing in terms of availability, scalability, flexibility, disaster recovery and load balancing . 17

Distributed computing It is a computing concept that refers to multiple computer systems working on a single problem. In distributed computing, a single problem is divided into many parts, and each part is executed by different computers . As long as the computers are networked, they can communicate with each other to solve the problem If it is done properly, the computers perform like a single entity. 18

The ultimate goal of distributed computing is to maximize performance by connecting users and IT resources in a cost-effective, transparent and reliable manner. This type of computing is highly scalable . Telephone and cellular network 19

Cluster computing The cluster is a collection of interconnected loosely coupled homogenous computers that work together closely, so that in some respects they can be regarded as a single computer . Each cluster is composed of multiple standalone machines connected by a network. The cluster computing has loosely coupled computers where the local operating system of each computer manages its resources Cluster server needs to merge multiple system images into single system image to support sharing of CPUs, memories and IOs across cluster nodes 20

The single system image (SSI) can be formed only with the help of middleware that makes clusters appears like a single machine to the user. 21

Cloud Computing People from everywhere now have access to other people from anywhere else. Globalization of computing assets may be the major contribution the cloud has made to date. Cloud computing is viewed as a resource available as a service for virtual data centers. Cloud computing and virtual data centers are different one Virtualization can make 1 resource act like many, while cloud computing lets different departments (through private cloud) or companies (through a public cloud) access a single pool of automatically provisioned resources 22

Amazon’s S3 is Simple Storage Service - This is a data storage service designed for use across the Internet Google Apps - This provides online access via a web browser to the most common office and business applications used today 23

Layered Cloud Architecture Design 24

IaaS, Paas and SaaS The foundation layer is infrastructure and i t is the first layer to be deployed before platform and application to get IaaS services and to run other two layers . The infrastructure layer consists of virtualized services for computing , storage and networking - virtual machines or virtual servers along with virtual storages The platform layer is responsible for providing readily available development and deployment platform for web applications to the cloud users without needing them to install in a local device . The platform layer has collection of software tools for development , deployment and testing the software applications The platform must be ensuring to provide scalability , reliability and security 25

A collection of all software modules required for SaaS applications forms the application layer A collection of all software modules required for SaaS applications forms the application layer In this layer, software applications include day-to-day office management software's used for information collection, document processing, calendar and authentication Enterprises also use the application layer extensively in business marketing , sales, Customer Relationship Management (CRM), financial transactions and Supply Chain Management (SCM). 26

NIST Cloud Computing Reference Architecture National Institute of Standards and Technology ( NIST) 27

The interactions 28

29

Cloud Consumer A cloud consumer is the most important stakeholder. The cloud service is built to support a cloud consumer The cloud consumer uses the services from a CSP or person or asks an organization that maintains a business relationship The consumer then verifies the service catalogue from the cloud provider and requests an appropriate service or sets up service contracts for using the service. 30

31

32

Cloud Provider Cloud provider is an entity that offers cloud services to interested parties . A cloud provider manages the infrastructure needed for providing cloud services . The CSP also runs the software to provide services and organizes the service delivery to cloud consumers through networks SaaS providers then deploy, configure, maintain and update all operations of the software application SaaS providers assume most of the responsibilities associated with managing and controlling applications deployed on the infrastructure PaaS cloud providers manage the computing infrastructure and ensure that the platform runs the cloud software and implements databases, appropriate runtime software execution stack and other required middleware elements . 33

IaaS CSP aggregates physical cloud resources such as networks, servers, storage and network hosting infrastructure The provider operates the cloud software and makes all compute resources available to IaaS cloud consumer via a set of service interfaces , such as VMs and virtual network interfaces 34

Cloud Auditor The cloud auditor performs the task of independently evaluating cloud service controls to provide an honest opinion when requested Cloud audits are done to validate standards conformance by reviewing the objective evidence. The auditor will examine services provided by the cloud provider for its security controls, privacy, performance 35

Cloud Broker The cloud broker collects service requests from cloud consumers and manages the use, performance , and delivery of cloud services The cloud broker will also negotiate and manage the relationship between cloud providers and consumers Service intermediation - improve some specific capabilities , and provide value added services to cloud consumers Service aggregation : The cloud broker links and integrates different services into one or more new services . Service Arbitrage : This is similar to aggregation, except for the fact that services that are aggregated are not fixed. 36

Cloud Carrier The cloud carrier tries to establish connectivity and transports cloud services between a cloud consumer and a cloud provider . Cloud carriers offer network access for consumers , by providing telecommunication links for accessing resources using other devices Cloud carriers provide secure and dedicated high - speed links with cloud providers and between different cloud entities . 37

Cloud Deployment Models Public cloud Private cloud Hybrid cloud Community cloud Each cloud deployment model fits different organizational needs. The four deployment models are characterized based on the functionality and accessibility of cloud services. 38

39

Public Cloud The public cloud services are runs over the internet . The public cloud services are managed and maintained by the Cloud Service Providers (CSPs) or the Cloud Service Brokers (CSBs ). The public cloud services are often offered on utility base pricing like subscription or pay per- use model . A public cloud is an IT model where public cloud service providers make computing services— including compute and storage, develop-and-deploy environments, and applications —available on-demand to organizations and individuals over the public interne 40

Pros and cons Advantages of public clouds: Lower costs —no need to purchase hardware or software and you pay only for the service you use. No maintenance —your service provider provides the maintenance. Near-unlimited scalability —on-demand resources are available to meet your business needs. High reliability —a vast network of servers ensures against failure . Disadvantages of public cloud There is lack of data security as data is stored on public data center Expensive recovery of backup data. User never comes to know where (at which location) their data gets stored . 41

Private Cloud A private cloud consists of cloud computing resources used exclusively by one business or organization.   The private cloud can be physically located at your organisation’s on-site datacenter or it can be hosted by a third-party service provider . But in a private cloud, the services and infrastructure are always maintained on a private network and the hardware and software are dedicated solely to your organisation . They are designed for a single organization therefore anyone within the organization can get access to data, services and web applications This type of cloud services are hosted on intranet The infrastructure is managed and maintained by the organization itself 42

The well-known private cloud platforms are Openstack , Open nebula, Eucalyptus, VMware private cloud etc Advantages of a private cloud: More flexibility —your organisation can customise its cloud environment to meet specific business needs. More control —resources are not shared with others, so higher levels of control and privacy are possible. More scalability —private clouds often offer more scalability compared to on-premises infrastructure. Disadvantages of private cloud Implementation cost is very high as setup involves purchasing and installing servers , Hypervisors, Operating systems. It requires administrators for managing and maintaining servers. The scope of scalability is very limited. 43

Hybrid Cloud The hybrid cloud services are composed of two or more clouds that offers the benefits of multiple deployment models Comprises on premise private cloud and off premise public cloud to leverage benefits of both and allow users inside and outside to have access to it . Users can migrate their applications and services from private cloud to public cloud and vice versa The popular hybrid clouds are AWS with eucalyptus, AWS with VMware cloud, Google cloud with Nutanix etc. 44

Sometimes it’s not clear to what degree an application will succeed in the market. Cloud-oriented businesses tend to follow the mantra “fail fast, fail cheaply .” The term  cloudbursting  refers to a situation where workloads are “spilled over” to a different cloud environment to meet capacity demands. This is usually a temporary situation — for instance, to handle a spike due to a seasonal traffic or a news event that drives traffic to a particular application for a short time “buy the base, rent the spike 45

The community cloud is basically the combination of one or more public, private or hybrid clouds, which are shared by many organizations for a single cause. Community cloud computing refers to a shared cloud computing service environment that is targeted to a limited set of organizations or employees  The community cloud is setup between multiple organizations whose objective is same . The well-known community clouds are Salesforce , Google community cloud etc. 46

47

Cloud Service Models Infrastructure as a Service (IaaS) Platform as a Service (PaaS) Software as a Service (SaaS) 48

49

Infrastructure as a Service (IaaS) It can be defined as the use of servers, storage, computing power, network and virtualization to form utility like services for users . It is a cloud service model that provides hardware resources virtualized in the cloud Developers use the IaaS service model to create virtual hardware on which the applications and/ or services are developed IaaS cloud provider will create hardware utility service and make them available for users to provision virtual resources as per need V irtual private storage, Virtual private servers, and Virtual private networks 50

Structure of the IaaS model Workload is the fundamental component of the virtualised client. It simulates the capacity of a physical server to perform work. Hence , the work done is equal to the total number of Transaction Per Minute (TPM). Note that the workload also has other attributes, such as disk I/O (determined by I/O per second), RAM used in MB, latency and network throughput and other The customer has controls over the OS, storage and installed applications, but has limited control over network components 51

Some key providers of IaaS are Amazon Web Services (AWS), Microsoft Azure, GoGrid , Joyent , Rackspace etc. and some of the private cloud software's through which IaaS can be setup are Open stack, Apache Cloud Stack, Eucalyptus, and VMware VSphere etc. 52

Platform as a Service Computing platform that allows the user to create web applications quickly and easily and without worrying about buying and maintaining the software and infrastructure . Platform-as-a-Service provides tools for development , deployment and testing the softwares , middleware solutions, databases, programming languages and APIs for developers to develop custom applications. The PaaS provides a platform to run web applications without installing them in a local machine i.e. Utility computing, hardware virtualization, dynamic resource allocation, low investment costs and preconfigured development environment. 53

The PaaS model includes the software environment where the developer can create custom solutions using development tools available with the PaaS platform Platforms can support specific development languages, frameworks for applications and other constructs . PaaS provides tools and development environments to design applications. Usually , a fully Integrated Development Environment (IDE) 54

The PaaS cloud provider owns responsibility for all the operational aspects, such as maintenance, updates , management of resources and product lifecycle A PaaS customer can control services such as device integration, session management, content management, sandbox, and so on Example - Google app engine Google defines the tools to be used within the development framework, the file system structure and data stores Google acts as a PaaS vendor and offers web service apps to users 55

In PaaS, note that developers can build an app with Python and Google API PaaS has a few disadvantages. It locks the developer and the PaaS platform in a solution specific to a platform vendor PaaS is also useful in the following situations : When the application must be portable. When proprietary programming languages are used. When there is a need for custom hardware and software 56

Software as a Service Software-as-a-Service is specifically designed for on demand applications or software delivery to the cloud users. It gives remote access to softwares that resides on cloud server not on the user’s device The consumer of a SaaS application only requires thin client software such as a web browser to access the cloud-hosted application SaaS provides a model for complete infrastructure. It is viewed as a complete cloud model where hardware, software and the solution, all are provided as a complete service 57

Some examples of popular SaaS applications are Google Docs, Hotmail, Salesforce and Gmail . SaaS applications come in a variety of applications to include custom software such as CRM applications, Helpdesk applications, HR applications, billing and invoicing applications and so on . Enterprise - level services Web 2.0 applications including social networking, blogs, wiki servers, portal services , metadata management etc., 58

Architectural Design Challenges 59

Challenges related to Data Privacy, Compliance and Security Concerns Challenges related to Unpredictable Performance and Bottlenecks Challenges related to Service Availability and Vendor/Data Lock-in Challenges related to Cloud Scalability, Interoperability and Standardization Challenges related to Software Licensing and Reputation Sharing Challenges related to Distributed Storage and Bugs in Software's 60

Challenges related to Data Privacy, Compliance and Security Concerns Cloud offerings are basically runs on public networks The most common attacks on the network include buffer overflows, DoS attacks, spyware, malware, root kits, trojan horses and worms . With well-known technologies such as encrypted data, virtual LANs and network middle boxes such as firewalls, packet filters etc ., many challenges can be solved immediately Another form of attack on VM migrations is the man-in-the-middle attack 61

Distributed Denial of Service (DDoS) attacks are another obstacle to availability. Criminals are trying to slash SaaS providers' profits by making their services out of control To protect from cloud attacks, one could encrypt their data before placing it in a cloud . There are laws that allow SaaS providers to keep consumer data and copyrighted material within national boundaries that also called as compliance or regulatory standards 62

Challenges related to Unpredictable Performance and Bottlenecks The cloud platform is responsible for deploying and running services on the top of resource pool which has shared hardware from different physical servers. In a production environment, multiple Virtual Machines (VMs) shares the resources with each other like CPU, memory, I/O and network Whenever I/O devices are shared between VMs, it may generate a big challenge during provisioning due to I/O interfaced between them . The problem becomes wider when such I/O resources are pulled across boundaries of cloud. 63

In such scenarios, the accessibility may become complicated for data placement and transport. To overcome that, data transfer bottlenecks must be removed, bottleneck links must be widened and weak servers in cloud infrastructure should be removed . One solution for this challenge is to improve I / O architectures and operating systems used in physical servers , so that interrupts and I / O channels can be easily virtualized. 64

Challenges related to Service Availability and Vendor/Data Lock-in Due to popularity of cloud computing, many organizations run their mission critical or business critical applications on cloud with shared infrastructure provided by cloud service providers . Any compromise in service availability may result into huge financial loss. Managing a single enterprise cloud service is often leads to single failure points The solution related to this challenge is use of multiple cloud providers. It may have common software infrastructure and accounting systems. Using hybrid cloud providers may provide more protection from failures. 65

Due to the failure of a single company who was providing cloud storages the lock - in concern arises S ome vendor - lock in solutions of cloud services providers, organizations face difficulties in migrating to new cloud service provider. To mitigate those challenges related to data lock in and vendor lock in, software stacks can be used to enhance interoperability between various cloud platforms as well as standardize APIs to rescue data loss due to a single company failure 66

Challenges related to Cloud Scalability, Interoperability and Standardization In cloud computing, pay-as-you-go model refers to utility - based model where bill for storage and the bandwidth of the network are calculated according to the number of bytes used Amazon Web Service charges the number of instances used for VM by the hour, even though the computer is idle In Google App Engine the users are paid according to the cycles used . The potential here is to scale up and down quickly in response to load variability , to save money, but without breaching SLAs 67

In virtualization, the Open Virtualization Format (OVF) defines an open, secure , portable, effective and extensible format for VM packaging and delivery. The use of a different host platform, virtualization platform or guest operating system does not depend on this VM format . The solution is to address virtual platform – agnostic packaging with bundled device certification and credibility. The package provides support for virtual appliances that span more than one VM. 68

The cloud platform should also introduce live cross - platform migration between x86 Intel and AMD technologies and support legacy load balancing hardware to avoid the challenges related to interoperability. 69

Challenges related to Software Licensing and Reputation Sharing Most of the cloud computing providers primarily depended on open source software , as the commercial software licensing model is not suitable for utility computing . The key opportunity is either to stay popular with open source, or simply to encourage commercial software companies to adjust their licensing structure to suit cloud computing better . One may consider using both pay-for-use and bulk licensing schemes to broaden the scope of the company For example, In AWS, spam - prevention services can restrict smooth VM installation by blacklisting of EC2 IP addresses 70

Challenges related to Distributed Storage and Bugs in Software's In cloud applications the database services continuously grow The potential is to build a storage infrastructure that not only fulfills this growth but also blends it with the cloud benefit of scaling up and down dynamically on demand Design of efficiently distributed SANs . A major problem in cloud computing is data consistency testing in SAN - connected data centre's One solution may be to focus on using VMs in cloud computing. 71

Cloud Storage 72 Where and H ow the data is stored in the cloud The model in which the digital data is stored in logical pools is a cloud storage . Your data is stored in an online repository. So , it is the responsibility of the storage service provider to take care of the data files. Take an example of the email service you are using, like Gmail, Yahoo etc . W ith the cloud , the data is stored in a remote database

Consists of a client computer, which has a bulk of data to be stored and the control node, a third-party service provider, which controls several databases together Cloud storage system has storage servers. The subscriber copies their files to the storage servers over the internet, which will then record the data. If the client needs to retrieve the data , the client accesses the data server with a web - based interface, and the server either sends the files back to the client or allows the client to access and manipulate the data itself. Cloud storage is a service model in which data is maintained, managed and backed up remotely and made available to users over a network 73

Difference between Cloud Sync and Cloud Backup Cloud sync stores the same set of most up-to-date version of files and folders on client devices and cloud storage . Cloud sync stores the same set of most up-to-date version of files and folders on client devices and cloud storage . When you modify the data, sync uploads those updated files, which can be manually downloaded by the user In two - way sync, the intermediate storage is a cloud. Cloud sync is suitable for the organizations or people who use multiple devices regularly. 74

Cloud backup : Sending a copy of the data over a public network to an off – site server is called cloud backup and is handled by a third - party service provider Some cloud backup services are IBackup , Carbonite, Back Blaze, etc. 75

Storage as a Service Storage as a service comes across as a good substitute for a small or medium scale organisations who are not efficient enough have their own storage infrastructure, have budget constraints and lacks technical personnel for storage implementation . It is an outsource model which allows third party providers (organizations) to rent space on their storage to end users, who lacks a budget or a capital budget to pay for it on their own . The storage as a service providers rent their storage space to the organizations on a cost-per gigabyte stored or cost-per-data-transfer basis. 76

The storage as a service is a good alternative for small or mid - size businesses that lacks the capital budget to implement and maintain their own storage infrastructure. The key providers of storage as a service are Amazon S3, Google Cloud Storage, Rackspace, Dell EMC, Hewlett Packard Enterprise (HPE), NetApp and IBM etc The methods provided by storage as a service include Backup and Restore, Disasters Recovery, Block storage, SSD storage, Object storage and Transmission of bulk data 77

Google drive Microsoft one drive Drop box MediaMax and Strongspace Advantages of Storage as a Service Cost –Invisibility - Security – Automation - Accessibility – Syncing - Sharing - Collaboration - Data protection - Disaster recovery Disadvantages of Storage as a Service Potential downtimes - Limited customization - Vendor lock-in - Unreliable 78

Cloud Storage Providers They are also known as the Managed Service Provider ( MSP) Customers can lease cloud storage capacity per month or on request . Amazon S3 : Amazon S3 (Simple Storage Service ) Amazon Simple Storage Service (Amazon S3) is an object storage service offering industry-leading scalability, data availability, security, and performance . S3 is an online backup and storage system 79

Amazon S3 : Amazon S3 (Simple Storage Service ) https://aws.amazon.com/s3/ 80

The high - speed data transfer feature known as AWS Import/Export will exchange data to and from AWS using Amazon’s own internal network to another portable device The bucket can be accessed through the S3 web API (with SOAP or REST) The APIs to manage the bucket has the following features : Create new, modify or delete existing buckets. Upload or download new objects to a bucket. Search and identify objects in buckets. Identify metadata associated with objects and buckets. Specify where the bucket is stored. Provide public access to buckets and objects . 81

Cloud Bigtable Cloud Bigtable is a sparsely populated table that can scale to billions of rows and thousands of columns, enabling you to store terabytes or even petabytes of data . A few things to notice in this illustration: Columns can be unused in a row. Each cell in a given row and column has a unique timestamp (t ). 82

Amazon Glacier Amazon glacier is very low - price online file storage web service which offer secure, flexible and durable storage for online data backup and archiving This web service is specially designed for those data which are not accessed frequently. 83 S3 Glacier Instant Retrieval storage class S3 Glacier Flexible Retrieval  S3 Glacier Deep Archive

Basics of Virtualization A virtual machine is a software computer that, like a physical computer, runs an operating system and applications . Resources can be aggregated together to fulfill the request for resource provisioning with rapid speed as a single system image Inflexibility, software manageability, optimum resource utilization and security concerns in existing physical machines Every cloud solution has to rely on virtualization solution for provisioning the resources dynamically It is one of the fundamental components of cloud computing . Provide different computing environments. 84

Capability of Server with and without Virtualization Each virtual machine contains its own virtual, or software-based, hardware, including a virtual CPU, memory, hard disk, and network interface card. 85

86 It greatly saves the cost behind purchasing extra physical servers , power consumption, manpower; licensing etc., It also reduces the number of physical servers required for the deployment of applications

Virtualization supports to create , delete, copy, migrate, snapshot, template, save the state of the VM or roll back the execution of VM . The purpose of virtualization is to enhance resource sharing among multiple users, to improve computing performance in terms of maximum resource utilization and application flexibility . To implement virtualization, specialized software is required called Virtual Machine Manager (VMM) or Hypervisor . Multiple instances of operating systems (called Virtual Machines) are installed over the shared hardware of host machine 87

88

Each virtual machine shares hardware resources of host machine CPU, Memory, Storage, IO, and Network 89

Characteristics of Virtualization Maximum resource utilization Reduces Hardware Cost Minimize the maintenance cost Supports Dynamic Load balancing Server Consolidation 90

Disaster recovery Easy VM management Maintaining Legacy applications and can test Beta Software's Sandboxing ( Isolated environment for running foreign or less-trusted applications) Virtual hardware Virtual storage, Virtual SCSI drives, Virtual Ethernet adapters, virtual Ethernet switches and hubs 91

Pros and Cons of Virtualization Cost Reduction / Budgeting Efficient resource utilization Optimization Increased Return on Investment Increased Flexibility Upfront Investments Performance Issues Licensing Issues Difficulty in Root Cause Analysis 92

Types of Virtualization Desktop Virtualization Application Virtualization Server Virtualization Storage Virtualization Network Virtualization 93

Desktop Virtualization Desktop virtualization allows people to access multiple applications and operating systems (OS) on a single computer because the applications and OSs are installed on virtual machines that run on a server in the data center . Creating a virtual desktop infrastructure , or VDI, makes it possible to work and store files in locations that everyone in your team can easily access no matter where they work. The virtual desktop environments do not require a specific system or hardware resources on the client side; however, it requires just a network connection Remote Desktop Protocols like RDP (in windows) or VNC (in Linux ). 94

VMware Horizon and Citrix Xen Desktop are the two most popular VDI solutions. Benefits provided by Desktop virtualization It provides easier management of devices and operating systems due to centralized management It reduces capital expenditure and maintenance cost of hardware It provides enhance security as confidential data is stored in data center With Desktop virtualization, operating systems can be quickly and easily provisioned for the new users Upgradation of operating system is easier 95

Application Virtualization Application virtualization is a technology that encapsulates an application from the underlying operating system on which it is executed From the user’s perspective, the application works and interacts like it’s native on the device - remote version of an application There are two distinct kinds of application virtualization: Remote A remote application runs on a computer somewhere else, in the data center . Streaming A streaming application is run from a network share that actually executes on the user's device. 96

VMware ThinApp , Citrix XenApp, Novell ZENworks Application Virtualization. It allows for cross-platform operations like running Windows applications on Linux or android and vice versa . It allows to run applications that have legacy issues like supported on older OS It avoids conflict between the other virtualized applications It allows a user to run more than one instance of an application at same time It reduces system integration and administration costs It allows to run incompatible applications side by side It utilizes less res ource 97

Server Virtualization It is the process of dividing a physical server into multiple unique and isolated virtual servers by means of software. It is a cost-effective way to provide web hosting services and effectively utilize existing resources in IT infrastructure Each virtual server can run its own applications and operating system Full Virtualization - Hypervisor Para-Virtualization – Entire network OS-Level Virtualization - Virtualization capability(No hypervisor) 98

It gives quick deployment and provisioning of virtual operating system . It has reduced the capital expenditure due to consolidation of multiple servers into a single physical server It provides ease in development & testing It makes optimum resource utilization of physical server It provides centralize the server administration and disaster recovery feature . 99

Storage Virtualization It is the process of grouping multiple physical storages using software to appear as a single storage device in a virtual form Storage virtualization enables a storage device to be converted to a logical data store.  A VM is stored as a set of files in a directory on a data store A datastore is a logical container that is similar to a file system Storage virtualization helps to address the storage and data management issues by facilitating easy backup, archiving and recovery tasks in less time. 100

Automated management of storage mediums with estimated of down time Enhanced storage management in heterogeneous IT environment Better storage availability and optimum storage utilization . It gives scalability and redundancy in storage . The backup and recovery are very easier and efficient in storage virtualization 101

Network Virtualization It is the ability to create virtual networks that are decoupled from the underlying network hardware It has capability to combine multiple physical networks into one virtual, or it can divide one physical network into separate, independent virtual networks . It can combine the entire network into a single mode and allocates its bandwidth , channels, and other resources based on its workload The VMware’s NSX platform is the popular example of network virtualization 102

It gives better scalability and flexibility in network operations . It reduces the hardware requirements It is cost effective as it requires reduced the number of physical devices 103

Implementation Levels of Virtualization The virtualization is implemented at various levels by creating a software abstraction layer between host OS and Guest OS 104

Instruction Set Architecture Level In ISA, virtualization works through an ISA emulation. This is helpful to run heaps of legacy code which was originally written for different hardware configurations . Emulator works by translating instructions from the guest platform to instructions of the host platform A binary code that might need additional layers to run can now run on an x86 machine or with some tweaking, even on x64 machines . The advantages of ISA are, it provides ease of implementation while dealing with multiple platforms Boochs , QEMU, Crusoe 105

Hardware Abstraction Layer Virtualization at the Hardware Abstraction Layer (HAL) exploits the similarity in architectures of the guest and host platforms to cut down the interpretation latency The time spent in instruction interpretation of guest platform to host platform is reduced by taking the similarities . This approach generates a virtual hardware environment which virtualizes the computer resources like CPU, Memory and IO devices . For the successful working of HAL the VM must be able to trap every privileged instruction execution and pass it to the underlying VMM VMware tries to reduce the cost by caching the results and reusing them wherever possible Denali 106

Operating System Level Virtualization The operating system level virtualization is an abstraction layer between OS and user applications . It supports multiple Operating Systems and applications to be run simultaneously without required to reboot or dual boot . The implementation of operating system level virtualization includes, Operating System Installation, Application Suites Installation, Network Setup, and So On. Jail is a FreeBSD based virtualization The Ensim virtualizes a server’s native operating system 107

Library Level Virtualization Most of the system uses extensive set of Application Programmer Interfaces (APIs ) Such APIs are designed to hide the operating system related details to keep it simpler for normal programmers. The virtual environment is created above OS layer and is mostly used to implement different Application Binary Interface ( ABI ) and Application Programming Interface ( API ) using the underlying system The example of Library Level Virtualization is WINE. 108

Application Level Virtualization In this abstraction technique the operating systems and user-level programs executes like applications for the machine Specialized instructions are needed for hardware manipulations like I/O mapped and Memory mapped The Java Virtual Machine (JVM) is the popular example of application level virtualization which allows creating a virtual machine at the application-level than OS level. 109

110

Virtualization Structures We have already seen the basics of virtualization as it is nothing but creation of a virtual version of hardware platform, operating system, storage or network resources rather than actual . It allows to run multiple operating systems on a single physical machine called host machine . Depending on the position of the virtualization layer, there are two classes of VM architectures, namely the hypervisor architectures like Hosted structure (also called Type 2 Virtualization) and Bare-Metal structure (also called Type 1 Virtualization) 111

Hosted Structure (Type II) In hosted structure, the guest OS and applications run on the top of base or host OS with the help of VMM (called Hypervisor). 112

Advantages of hosted structure It is easy to install and manage without disturbing host systems hardware It supports legacy operating systems and applications . It provides ease of use with greater hardware compatibility It does not require to install any drivers for IO devices as they are installed through built-in driver stack . It can be used for testing beta software The hosted hypervisors are usually free software and can be run on user workstations . 113

Disadvantages of hosted structure It does not allow guest OS to directly access the hardware instead it has to go through base OS, which increases resource overhead . It has very slow and degraded virtual machines performance due to relying on intermediate host OS for getting hardware access . It doesn’t scale up beyond the limit 114

Bare-Metal Structure (Type I) In Bare-Metal Structure, the VMM can be directly installed on the top of Hardware, therefore no intermediate host OS is needed . Bare-metal virtualization is mostly used in enterprise data centers for getting the advanced features like resource pooling, high availability, disaster recovery and security 115

Advantages of hosted structure It is faster in performance and more efficient to use . It provides enterprise features like high scalability, disaster recovery and high availability . It has high processing power due to the resource pooling . It has lower overhead or maintenance cost. It provides ease of backup and recovery. It provides built-in fault-tolerance mechanisms. It has improved mobility and security. 116

Disadvantages of hosted structure It has limited hardware support and poor stack of device drivers . It has high implementation cost It requires specialized servers to install and run hypervisor and do not run on user workstations . In some cases, it becomes complex for management. 117
Tags