Full Transcript

Virtualization and Cloud Unit I Computing Paradigms - Cloud Computing Fundamentals: Motivation for Cloud Computing - Principles of Cloud computing- Requirements for Cloud Services - Benefits and Drawbacks. Cloud Computing Architecture and Management:...

Virtualization and Cloud Unit I Computing Paradigms - Cloud Computing Fundamentals: Motivation for Cloud Computing - Principles of Cloud computing- Requirements for Cloud Services - Benefits and Drawbacks. Cloud Computing Architecture and Management: Introduction - Cloud Architecture - Applications on the Cloud - Managing the Cloud - Migrating Application to Cloud. What is Cloud Computing Cloud Computing – Class of network based computing that takes place over the Internet, – basically a step on from Utility Computing – a collection/group of integrated and networked hardware, software and Internet infrastructure (called a platform). – Using the Internet for communication and transport provides hardware, software and networking services to clients These platforms hide the complexity and details of the underlying infrastructure from users and applications by providing very simple graphical interface or API (Applications Programming Interface). Cloud Computing Cloud Computing is the delivery of computing services including – servers, – storage, – databases, – networking, – software, – analytics, – over the Internet to offer faster innovation, flexible resources, and economies of scale. Continued.. storing and accessing data and programs over the internet instead of your computer's hard drive. use of remote servers on the internet to store, manage and process data rather than a local server or your personal computer Cloud computing defined Cloud computing is the on-demand delivery of compute power, database, storage, applications, and other IT resources via the internet with pay- as-you-go pricing. 6 Computing Paradigms High-Performance Computing Parallel Computing Distributed Computing Cluster Computing Grid Computing Cloud Computing Bio Computing Mobile Computing Quantum Computing Optical Computing Nano Computing Network Computing High-performance Computing Pool of processors or CPUS are connected with other resources memory, storage, and input and output devices and the deployed software is enabled to run in the entire system of connected components. high-performance computing (HPC) is the supercomputers. Individual node can work together to solve a problem larger than any one computer can easily solve. Nodes are so connected that they can communicate with each other – To solve scientific problems. to perform suitable simulation study - without any difficulty Importance of High performance Computing (HPC) Scientific discoveries, game-changing innovations etc., It is a foundation for scientific & industrial advancements. It is used in technologies like IoT, AI, 3D imaging evolves & amount of data that is used by organization is increasing exponentially to increase ability of a computer HPC is used to solve complex modeling problems in a spectrum of disciplines. – It includes AI, Nuclear Physics, Climate Modelling, etc. Application Areas Climate modeling Drug discovery Data Analysis Protein folding Energy research Parallel Computing Simultaneous use of multiple processor machines Continued.. – it is using multiple processors (multiple CPUS) – a problem is broken down into discrete parts that can be solved concurrently – each part is further broken down into a series of instructions – Advantages It saves time and money as many resources working together will reduce the time and cut potential costs It can take advantage of non-local resources when the local resources are finite. Continued.. Serial or Sequential Computers – It runs on a single computer machine having a single CPU – A problem is broken down into a discrete series of instructions – Instructions are executed one after another Parallel Computing – It is run using multiple processors (multiple CPUs). – A problem is broken down into discrete parts that can be solved concurrently. – Each part is further broken down into a series of instructions – Instructions from each part are executed simultaneously on different processors – An overall control/coordination mechanism is employed Applications of Parallel Computing Databases and Data mining Real-time simulation of systems. Science and Engineering. Advanced graphics, augmented reality, and virtual reality. Distributed Computing Multiple computers or processor machines connected through a network A distributed system allows resource sharing, including software by systems connected to the network – can be homogeneous or heterogeneous, but run as a single system. – the CPUS in a distributed system can be physically close together and connected by a local network – they can be geographically distant and connected by a wide area network – Examples of distributed systems / applications of distributed computing : Intranets, Internet, WWW, email Continued.. Systems are linked together and the problem is divided into sub- problems where each part is solved by different computer systems increase the performance and efficiency of the system and ensure fault tolerance Advantages of Distributed computing Scalability – It is the ability of the system to be easily expanded by adding more machines as needed, and vice versa, without affecting the existing setup. Redundancy or replication – Several machines can provide the same services, so that even if one is unavailable (or failed), work does not stop because other similar computing supports will be available. Cluster Computing Set of the same or similar type of processor machines connected using a dedicated network infrastructure. The connected computers execute operations all together thus creating the idea of a single system all processor machines share resources such as a common home directory Consists of a software such as a message passing interface (MPI) implementation installed to allow programs to be run across all nodes simultaneously The individual computers in a cluster can be referred to as nodes. Nodes communicate with one another in order to work cooperatively Continued.. Cluster computing gives a relatively inexpensive, unconventional to the large server or mainframe computer solutions It ensures that computational power is always available Continued.. A cluster is a group of independent computers that work together to perform the tasks given Advantages High Performance The systems offer better and enhanced performance than that of mainframe computer networks. Easy to manage Cluster Computing is manageable and easy to implement Scalable Resources can be added to the clusters accordingly. Availability The other nodes will be active when one node gets failed and will function as a proxy for the failed node. Flexibility It can be upgraded to the superior specification or additional nodes can be added. Applications of Cluster Computing Weather forecasting. Image Rendering. Various e-commerce applications. Earthquake Simulation. Petroleum reservoir simulation. Various complex computational problems can be solved sed in the applications of aerodynamics, astrophysics and in data mining. Grid Computing The idea of grid computing is to make use of non utilized computing power by the needy organizations, and thereby the return on investment (ROI) on computing investments can be increased Network of computing or processor machines managed with a kind of software such as middleware, in order to access and use the resources remotely Increases user productivity by providing transparent access to resources, and work can be completed more quickly. Services provided – access control, security, access to data including digital libraries and databases, – access to large-scale interactive and long-term storage facilities Continued.. All communication between the computer systems in grid computing is done on the “data grid” To solve more high computational problems in less time and improve productivity Continued.. Grid Computing Advantages Ability to make use of unused computing power, it is a cost-effective solution (reducing investments, only recurring costs) As a way to solve problems in line with any HPC-based application Enables heterogeneous resources of computers to work cooperatively and collaboratively to solve a scientific problem Tasks can be performed parallelly across various physical locations and the users don’t have to pay for them Cloud Computing Storing and accessing the data and programs on remote servers that are hosted on internet instead of computer’s hard drive or local server. uses a client-server architecture to deliver computing resources such as servers, storage, databases, and software over the cloud Cloud computing supports leveraging multiple resources, – including computing resources, to deliver a unified service to the end user. – IT and business resources, such as servers, storage, network, applications, and processes, can be dynamically provisioned to the user needs and workload – cloud can also support nongrid environments Continued.. Continued.. There type of cloud are public, private, hybrid and community and some cloud providers are Google cloud, AWS, Microsoft Azure and IBM cloud. Continued.. Continued.. There are three layers in cloud computing. Companies use these layers based on the service they provide. Infrastructure Platform Application Key Cloud Computing Grid Computing Follows a client-server computing Follows a distributed Architecture architecture. computing architecture. Centrally managed. managed on a Resource collaboration pattern. more flexible less flexible. Flexibility Users pay for using the cloud computing Grid computing needs to resources. be set up first. Payment They need not to set up anything. They Users need not pay use the platform as a service. anything once the set-up is done. highly accessible service. low on accessibility as It can be accessed using conventional compared to cloud Accessibility web protocols. computing. It can be accessed using grid middleware. It is extremely scalable. Not as scalable as cloud Scalability computing. Bio Computing Uses the concepts of biologically derived or simulated molecules that perform computational processes theoretical background and practical tools for scientists to explore proteins and DNA building blocks depends on the order of these blocks biocomputing scientist works on inventing the order Mobile Computing The processing elements are small and the communication between various resources is taking place using wireless media The ability to send and receive data across various cellular networks using small devices such as smartphones. Example - video call or conferencing Rapidly evolving with various technological advancements Quantum Computing dependence is on quantum information, the rules that govern the subatomic world Quantum computers are millions of times faster quantum computing works differently on the most fundamental level than the current technology Optical Computing System uses the photons in visible light or infrared beams, rather than electric current, to perform digital computations By applying some of the advantages of visible and/or IR networks at the device and component scale, computer can be developed that can perform operations 10 or more times faster than a conventional electronic computer. Nano Computing Systems that are constructed from nanoscale components traditional computers may be replaced by transistors based on carbon nanotubes. integration of the components are twofold – manufacture of complex arbitrary patterns may be economically infeasible – nanocomputers may include massive quantities of devices Network Computing Computers or nodes working together over a network Software and associated protocols that allow a set of computer network to be used together A distributed operating system is an ordinary centralized operating system but runs on multiple independent CPUs. Cloud computing provides hardware, software and other infrastructure resources distributed computing divides a single task among multiple computers that are connected via a network to achieve the task faster Cloud Computing Cloud computing is an umbrella term used to refer to Internet based development and services to describe a new class of network based computing that takes place over the Internet Characteristics define cloud data, applications services and infrastructure: – Remotely hosted: Services or data are hosted on remote infrastructure. – Ubiquitous: Services or data are available from anywhere. – Commodified: The result is a utility computing model similar to traditional that of traditional utilities, like gas and electricity - you pay for what you would want Continued.. The platform provides on demand services, that are always on, anywhere, anytime and any place. – Pay for use and as needed, elastic scale up and down in capacity and functionalities – The hardware and software services are available to general public, enterprises, corporations and businesses markets Continued.. Many companies are delivering services from the cloud. – Google Has a private cloud that it uses for delivering Google Docs and many other services to its users, including email access, document applications, text translations, maps, web analytics, and much more. – Microsoft Has Microsoft@ Office 365 online service that allows for content and business intelligence tools to be moved into the cloud, and Microsoft currently makes its office applications available in a cloud. – Salesforce.com Runs its application set for its customers in a cloud, and its Force.com and Vmforce.com products provide developers with platforms to build customized cloud services. Service Providers Amazon Web Services (AWS) Microsoft Azure Google Cloud Platform IBM Cloud Services VMware Cloud Oracle cloud Red Hat DigitalOcean Rackspace Alibaba Cloud Motivation for Cloud Computing Computing resources such as hardware, software, networking, and storage - investment naturally costs a bulk currency it is easy to get the required computing power and resources from some provider as and when it is needed and pay only for that usage Continued… High demand of interactive applications – Applications with real time response and with capability of providing information – generally data intensive and require analyzing data across different sources Parallel batch processing – Cloud inherently supports batch- processing and analyzing tera-bytes of data very efficiently Continued… New trend in business world and scientific community – business enterprises are interested in discovering customers needs, buying patterns, supply chains to take top management decisions – These require analysis of very large amount of online data Extensive desktop application – Single desktop machine is no longer enough to run them – cloud computing to perform extensive evaluations Cloud computing The Need for Cloud Computing Convenience and Reliability – To access a file we need to save in external drive or CD – Nowadays saving file to cloud and accessing using internet connection Continued… WHAT IS CLOUD COMPUTING? Cloud Computing refers to manipulating, configuring, and accessing the applications online. It offers online data storage, infrastructure and application. Cloud Computing is both a combination of software and hardware based computing resources delivered as a network service. Defining Cloud Computing cloud computing means storing and accessing data and programs over the Internet from a remote location local storage and remote storage A cloud application simply refers to any software application that is deployed in a cloud environment rather than being hosted on a local server or machine. Continued… Defining Cloud Computing cloud computing means storing and accessing data and programs over the Internet from a remote location local storage and remote storage Why Cloud A cloud typically contains a significant pool of resources ,which could be reallocated to different purpose within short time frames, and allows the cloud owner to benefit significantly from economies of scale as well as from statically multiplexing. Continued.. Benefits of Cloud Computing Reduced IT costs Moving to cloud computing may reduce the cost of managing and maintaining your IT systems. Reliability With a managed service platform, cloud computing is much more reliable and consistent than in-house IT infrastructure. Scalability Your business can scale up or scale down your operation and storage needs quickly to suit your situation, allowing flexibility as your needs change. 24 X 7 Availability Most of the cloud providers are truly reliable in offering their services, with most of them maintaining an uptime of 99.9%. Continued.. Business continuity Protecting your data and systems is an important part of business continuity planning. Collaboration efficiency Collaboration in a cloud environment gives your business the ability to communicate and share more easily outside of the traditional methods. Security Although cloud service providers implement the best security standards and industry certifications, storing data and important files on external service providers always opens up risks. Flexibility in Capacity Cloud computing allows employees to be more flexible in their work practices. Continued.. Enhanced Collaboration Cloud applications enhance collaboration by authorizing diverse groups of people virtually meet and exchange information with the help of shared storage. Access to automatic updates Access to automatic updates for your IT requirements may be included in your service fee. Easily Manageable Cloud computing offers simplified and enhanced IT maintenance and management capacities by agreements backed by SLA, central resource administration and managed infrastructure. Characteristics of Cloud Computing On demand self-service services such as Email, Application Network, or Server service can be provided without requiring interaction with each service provider This enables the client to continuously monitor server uptime, capabilities and allocated network storage Broad network access Cloud capabilities are available over the network and accessed through standard mechanism that promote use by heterogeneous client such as mobile phone, laptop Resource pooling resources are pooled together to serve multiple customers, with different physical and virtual resources dynamically assigned and reassigned according to the customers demand Continued.. Rapid Elasticity Capabilities available for provisioning often appear to be unlimited and can be appropriated in any quantity at any time Measured service Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service Multi-tenancy Multi-tenancy allows customers to run one server instance, which is less expensive and makes it easier to deploy updates to a large number of customers. Continued.. Trade capital expense for variable expense Benefit from massive economies of scale Stop guessing capacity Increase speed and agility Stop spending money on running and maintaining data centers Go global in minutes Continued… Cloud Ecosystem Interactions between the Actors in NIST model Usage Scenario of Cloud Broker Continued.. Cloud service users (CSUs): – A consumer, enterprise, government , public institution or organization that consumes delivered cloud services – CSU can include intermediate users that will deliver cloud services provided by a cloud service provider (CSP) to actual users of the cloud service, that is, end users. – End users can be persons, machines, or applications. Continued.. 2. CSPs: – An organization that provides and maintains cloud services, provider of SaaS, PaaS, IaaS. 3. Cloud service partners (CSNs): – A person or organization (e.g., application developer; content, software, hardware, and/or equipment provider; system integrator; and/or auditor) that provides support to the building of a service offered by a CSP (e.g., service integration). Requirements for Cloud Services Multitenancy – aiming to provide isolation of the different users of the cloud system (tenants) while maximizing resource sharing Service life cycle management – Services are paid as per usage and can be started and ended at any time Security – The security of each individual service needs to be protected in the multitenant cloud environment Responsiveness – expected to enable early detection, diagnosis, and fixing of service-related problems in order to help the customers use the services faithfully Continued.. Intelligent service deployment – efficient use of resources in service deployment, that is, maximizing the number of deployed services Portability – portability of its features over various underlying resources Interoperability – well-documented and well-tested specifications that allow heterogeneous systems Regulatory aspects – All applicable regulations that’s protocols to be followed Continued.. Environmental sustainability – through a broad network and thin clients, on-demand shared pools of configurable resources Service reliability, service availability, and quality assurance – services end-to-end quality of service (QoS) assurance, high levels of reliability, and continued availability Service access – access to cloud services from any user device Flexibility – capable of supporting multiple cloud deployment models and cloud service categories Continued.. Accounting and charging – cloud service be capable to support various accounting and charging models and policies. Massive data processing – supports mechanisms for massive data processing (e.g., extracting, transforming, and loading data) 5-4-3 Principles of Cloud computing 5-4-3 principles put forth by NIST Five Essential Characteristics – On-demand self-service – without requiring human interaction users can access the service’s – Broad network access – Services can be accessed by heterogeneous client platforms – Elastic resource pooling – multiple consumers using a multitenant model, with different physical and virtual resources dynamically – Rapid elasticity – To the consumer, the capabilities available for provisioning often appear to be unlimited – Measured service – Resource usage can be monitored, controlled, and reported providing transparency for both the provider and consumer of the utilized service Continued.. Four Cloud Deployment Models Private cloud Public cloud Community cloud Hybrid cloud Three Service Offering Models Cloud SaaS Cloud PaaS Cloud IaaS Basic Concepts There are certain services and models working behind the scene making the cloud computing feasible and accessible to end users. Following are the working models for cloud computing: – 1. Deployment Models – 2. Service Models Deployment Models Deployment models define the type of access to the cloud, i.e., how the cloud is located Cloud can have any of the four types of access: – Public, Private, Hybrid and Community. Deployment Models PUBLIC CLOUD – The Public Cloud allows systems and services to be easily accessible to the general public. – Public cloud may be less secure because of its openness, e.g., e-mail. PRIVATE CLOUD – The Private Cloud allows systems and services to be accessible within an organization. – It offers increased security because of its private nature. COMMUNITY CLOUD – The Community Cloud allows systems and services to be accessible by group of organizations. HYBRID CLOUD – The Hybrid Cloud is mixture of public and private cloud. – Critical activities are performed using private cloud while the non- critical activities are performed using public cloud. Service Models Service Models are the reference models on which the Cloud Computing is based. These can be categorized into three basic service models as listed below: – 1. Infrastructure as a Service (laaS) – 2. Platform as a Service (PaaS) – 3. Software as a Service (SaaS) Continued.. Infrastructure as a Service (laaS) laaS is the delivery of technology infrastructure as an on demand scalable service. laaS provides access to fundamental resources such as physical machines, virtual machines, virtual storage, etc. – Usually billed based on usage – Usually multi tenant virtualized environment – Can be coupled with Managed Services for OS and application support Infrastructure as software Cloud computing enables you to stop thinking of your infrastructure as hardware, and instead think of (and use) it as software. Continued.. Platform as a Service (PaaS) PaaS provides development & deployment tools, etc. PaaS provides all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely from the Internet. Typically applications must be developed with a particular platform in mind. – Multi tenant environments – Highly scalable multi tier architecture Cloud service models IaaS PaaS SaaS (infrastructure (platform as a (software as as a service) service) a service) More control Less control over IT over IT resources resources Continued.. Software as a Service (SaaS) SaaS model allows to use software applications as a service to end users. SaaS is a software delivery methodology that provides licensed multi-tenant access to software and its functions remotely as a Web-based service. – Usually billed based on usage – Usually multi tenant environment – Highly scalable architecture Continued.. Requirements for Cloud Services 1. Multitenancy Multitenancy is an essential characteristic of cloud systems aiming to provide isolation of the different users of the cloud system (tenants) while maximizing resource sharing. 2. Service life cycle management Cloud services are paid as per usage and can be started and ended at any time. 3. Security The security of each individual service needs to be protected in the multitenant cloud environment; the users (tenants) also support the needed secured services 4. Responsiveness The cloud ecosystem is expected to enable early detection, diagnosis, and fixing of service-related problems in order to help the customers use the services faithfully. Continued.. 5. Intelligent service deployment It is expected that the cloud enables efficient use of resources in service deployment, that is, maximizing the number of deployed services while minimizing the usage of resources and still respecting the SLAs. 6. Portability It is expected that a cloud service supports the portability of its features over various resources and that CSPs should be able to accommodate cloud workload. 7. Interoperability It is expected to have available well-documented and well- tested specifications that allow heterogeneous systems in cloud environments to work together 8. Regulatory aspects All applicable regulations shall be respected, including privacy protection. Continued.. 9. Environmental sustainability A key characteristic of cloud computing is the capability to access, through a broad network and thin clients, on-demand shared pools of configurable resources that can be rapidly provisioned and released. 10. Service reliability, service availability, and quality assurance CSUs demand for their services end-to-end quality of service, high levels of reliability, and continued availability. 11. Service access A cloud infrastructure is expected to provide CSUs with access to cloud services from any user device. 12. Flexibility It is expected that the cloud service be capable of supporting multiple cloud deployment models and cloud service categories. Continued.. 13. Accounting and charging It is expected that a cloud service be capable to support various accounting and charging models and policies. 14. Massive data processing It is expected that a cloud supports mechanisms for massive data processing (e.g., extracting, transforming, and loading data). Architecture Cloud Applications A cloud application is an application program that functions or executes in the cloud – Application can exhibit some characteristics of a pure desktop application and some characteristics of a pure web-based application A desktop application resides entirely on a single device at the user’s location , Web application is stored entirely on a remote server and is delivered over the Internet through a browser interface. Continued.. A cloud application can be used with a web browser connected to the Internet. An example of cloud application is a web-based e-mail (e.g., Gmail, Yahoo mail) The user of the e-mail uses the cloud— all of the emails in their inbox are stored on servers at remote locations at the e-mail service provider Continued.. Continued.. 1. Art Applications Cloud computing offers various art applications for quickly and easily design attractive cards, booklets, and images. i Moo , Vistaprint, Adobe Creative Cloud 2. Business Applications every organization requires the cloud business application to grow their business. It also ensures that business applications are 24*7 available to users. MailChimp, Salesforce, Chatter, Paypal, Slack Continued.. 3. Data Storage and Backup Applications Cloud computing allows us to store information (data, files, images, audios, and videos) on the cloud and access this information using an internet connection. Box.com, Mozy, Google G Suite 4. Education Applications It offers various online distance learning platforms and student information portals to the students. Google Apps for Education, Chromebooks for Education, AWS in Education, Tablets with Google Play for Education Continued.. 5. Entertainment Applications Cloud computing offers various entertainment applications such as online games and video conferencing. Online games, Video Conferencing Apps 6. Management Applications cloud management tools which help admins to manage all types of cloud activities, such as resource deployment, data integration, and disaster recovery. Toggl , Evernote, Outright, GoToMeeting 7. Social Applications Social cloud applications allow a large number of users to connect with each other using social networking applications such as Facebook, Twitter, Linkedln, etc. Applications of Cloud Computing 1. Online Data Storage Cloud Computing allows storage and access to data like files, images, audio, and videos on the cloud storage. In this age of big data, storing huge volumes of business data locally requires more and more space and escalating costs 2. Backup and Recovery Cloud service providers offer safe storage and backup facility for data and resources on the cloud. In a traditional computing system, data backup is a complex problem, and often, in case of a disaster, data can be permanently lost. But with cloud computing, data can be easily recovered with minimal damage in case of a disaster.. Continued.. 3. Big Data Analysis One of the most important applications of cloud computing is its role in extensive data analysis. The extremely large volume of big data makes it impossible to store using traditional data management systems. Due to the unlimited storage capacity of the cloud, businesses can now store and analyze big data to gain valuable business insights 4. Testing and Development Cloud computing applications provide the easiest approach for testing and development of products. In traditional methods, such an environment would be time-consuming, expensive due to the setting up of IT resources and infrastructure, and needed manpower. Cloud computing, businesses get scalable and flexible cloud services, which they can use for product development, testing, and deployment. Continued.. 5. Antivirus Applications With Cloud Computing comes cloud antivirus software which is stored in the cloud from where they monitor viruses and malware in the organization’s system and fixes them. Earlier, organizations had to install antivirus software within their system and detect security threats. 6. E-commerce Application Ecommerce applications in the cloud enable users and e-businesses to respond quickly to emerging opportunities. It offers a new approach to business leaders to make things done with minimum amount and minimal time. They use cloud environments to manage customer data, product data, and other operational systems. 7. Cloud Computing in Education E-learning, online distance learning programs, and student information portals are some of the key changes brought about by applications of cloud computing in the education sector. Benefits and Drawbacks Cloud Architecture Continued.. The cloud is a recent technology that is completely dependent on the Internet for its functioning. Cloud computing technology is used by both small and large organizations to store the information in cloud and access it from anywhere at anytime using the internet connection. Combination of service-orientedarchitecture and event-driven architecture. It includes the dependencies on which it works and the components that work over it. Continued.. Divided into four layers based on the access of the cloud by the user New Facets in Private Networks Applications such as e-mail, file sharing, and enterprise resource planning (ERP) systems are delivered to on-premise-based servers at each corporate data center. Software vendors are offering Software as a Service (SaaS) as an alternative for their software support to the corporate offices. Software vendors are offering SaaS as an alternative for their software support to the corporate offices, which brings challenges in the access and usage mechanisms of software from data center servers and in the connectivity of network architectures Applications on the Cloud The first type of applications was - stand-alone application. A stand-alone application is developed to be run on a single system that does not use network for its functioning. The web applications evolved The client server architecture that was followed by the web application. The server is a high-end machine that consists of the web application. Types of Application Continued.. Managing the Cloud Application Cloud management can be divided into two parts: – 1. Managing the infrastructure of the cloud – 2. Managing the cloud application Continued.. Managing the Cloud Infrastructure Infrastructure of the cloud is backbone of the cloud – complex system – lot of resources Core of cloud management is resource management Performance is the most important aspect of the cloud Basic functionality of the cloud should always be provided The cost is a very important criterion - the business prospects Cloud governance - process of creating value to an organization by creating strategic objectives - maintain a certain level of control over the company. Continued.. Managing the Cloud Application Business companies - build their corporate applications on cloud platforms Meet dynamic requirements that exist in the globalization of businesses and responsiveness to market demands. Applications become more composite and complex, which requires not only capabilities like storage and database offered by the cloud providers but also third-party SaaS capabilities like e-mail and messaging. Cloud application management addresses these issues Migrating Application to Cloud Cloud migration presents an opportunity to significantly reduce costs incurred on applications Different phases like evaluation, migration strategy, prototyping, provisioning, testing Phases of Cloud Migration Evaluation – Evaluation is carried out for all the components like – current infrastructure and application architecture, – Environment – in terms of compute, storage, monitoring, and management, SLAs, operational processes, financial considerations, risk, security, compliance, and licensing needs are identified to build a business case for moving to the cloud. Continued.. Migration strategy – strategy is used where the applications and their data and interface dependencies are isolated and these applications can be operationalized all at once. Prototyping – Migration activity is preceded by a prototyping activity to validate and ensure that a small portion of the applications are tested on the cloud environment with test data setup. Continued.. Provisioning – Premigration optimizations identified are implemented. – Cloud servers are provisioned for all the identified environments, necessary platform software's and applications are deployed, configurations are tuned to match the new environment sizing, and databases and files are replicated. Testing – Postmigration tests are conducted to ensure that migration has been successful. – Performance and load testing, failure and recovery testing, and scale-out testing are conducted against the expected traffic load and resource utilization levels. Seven-Step Model of Migration into a Cloud Continued.. Step 1 Cloud migration assessments comprise assessments to understand the issues involved in the specific case of migration at the application level or the code, the design, the architecture, or usage levels. These assessments are about the cost of migration as well as about the ROI that can be achieved in the case of production version. Continued.. Step-2: Isolating all systemic and environmental dependencies of the enterprise application components within the captive data center. Step-3: Generating the mapping constructs between what shall possibly remain in the local captive data center and what goes onto the cloud. Step-4: substantial part of the enterprise application needs to be redesigned and reimplemented on the cloud Continued.. Step-5: We leverage the intrinsic features of the cloud computing service to augment our enterprise application in its own small ways. Step-6: We validate and test the new form of the enterprise application with an extensive test suite that comprises testing the components of the enterprise application on the cloud as well. Step-7: Test results could be positive or mixed. In the latter case, we iterate and optimize as appropriate. After several such optimizing iterations, the migration is deemed successfully. Approaches for Cloud Migration Migrate existing applications Rebuild or re architect some or all the applications, taking advantage of some of the virtualization technologies around to accelerate the work Start from scratch Rather than cannibalize sales, confuse customers with choice, and tie up engineers trying to rebuild existing application, it may be easier to start again Separate company One may want to create a whole new company with separate brand, management, R&D, and sales. Buy an existing cloud vendor For a large established vendor, buying a cloud-based competitor achieves two things Virtualization Virtual workspaces Virtual Workspaces – An abstraction of an execution environment that can be made dynamically available to authorized clients by using well- defined protocols, – Resource quota (e.g. CPU, memory share), – Software configuration (e.g. O/S, provided services). Implement on Virtual Machines (VMS) – Abstraction of a physical host machine, – Hvpervisor intercepts and emulates instructions from VMS and allows management of VMS, Xen, etc. Provide infrastructure API: – Plug-ins to hardware/support structures Virtualization in General Advantages of virtual machines – Run operating systems where the physical hardware is unavailable, – Easier to create new machines, backup machines, etc., – Software testing using "clean" installs of operating systems and software, – Emulate more machines than are physically available, – Timeshare lightly loaded systems on one host, – Debug problems (suspend and resume the problem machine), – Easy migration of virtual machines (shutdown needed or not). – Run legacy systems Purpose and benefits Cloud computing enables companies and applications, which are system infrastructure dependent, to be infrastructure-less. By using the Cloud infrastructure on "pay as used and on demand", all of us can save in capital and operational investment! Clients can: – Put their data on the platform instead of on their own desktop PCs and/or on their own servers. – They can put their applications on the cloud and use the servers within the cloud to do processing and data manipulations etc. Cloud-Sourcing Why is it becoming a Big Deal: – Using high-scale/low-cost providers, – Any time/place access via web browser, – Rapid scalability; incremental cost and load sharing, – Can forget need to focus on local IT. Concerns: – Performance, reliability, and SLAs, – Control of data, and service parameters, – Application features and choices, – Interaction between Cloud providers, – No standard API - mix of SOAP and REST – Privacy, security, compliance, trust... Opportunities and Challenges The use of the cloud provides a number of opportunities: – It enables services to be used without any understanding of their infrastructure. – Cloud computing works using economies of scale: It potentially lowers the expense for start up companies, as they would no longer need to buy their own software or servers. Cost would be by on-demand pricing. Vendors and Service providers claim costs by establishing an ongoing revenue stream. – Data and services are stored remotely but accessible from "anywhere". Continued.. In parallel there has been backlash against cloud computing: – Use of cloud computing means dependence on others and that could possibly limit flexibility and innovation: The others are likely become the bigger Internet companies like Google and IBM, who may monopolise the market. Some argue that this use of supercomputers is a return to the time of mainframe computing that the PC was a reaction against. – Security could prove to be a big issue: It is still unclear how safe out-sourced data is and when using these services ownership of data is not always clear. Benefits Cost Savings – Companies can reduce their capital expenditures and use operational expenditures for increasing their computing capabilities. – This is a lower barrier to entry and also requires fewer in- house IT resources to provide system support. Scalability / Flexibility – Companies can start with a small deployment and grow to a large deployment fairly rapidly, and then scale back if necessary. – Also, the flexibility of cloud computing allows companies to use extra resources at peak times, enabling them to satisfy consumer demands. Continued.. Reliability – Services using multiple redundant sites can support business continuity and disaster recovery. Maintenance – Cloud service providers do the system maintenance, and access is through Maintenance APIs that do not require application installations onto PCs, thus further reducing maintenance requirements. Mobile Accessible – Mobile workers have increased productivity due to systems accessible in n-infrastructure- available-from-anywhere Disadvantages of Cloud Computing Requires a constant Internet connection: – Cloud computing is impossible if you cannot connect to the Internet. – Since you use the Internet to connect to both your applications and documents, if you do not have an Internet connection you cannot access anything, even your own documents. – A dead Internet connection means no work and in areas where Internet connections are few or inherently unreliable, this could be a deal- breaker. Continued.. Stored data might not be secure: – With cloud computing, all data is stored on the cloud. The questions is How secure is the cloud? Can unauthorised users gain access to your confidential data? Stored data can be lost: data stored in the cloud is safe, replicated across multiple machines. But on the off chance that your data goes missing, you have no physical or local backup. – Put simply, relying on the cloud puts you at risk if the cloud lets you down. Cloud Service Providers Cohesive Flexible Technologies - offers the Elastic Server On-Demand virtual server platform. Joyent - delivers the Accelerator scalable on demand infrastructure for web application developers. Mosso - provides an enterprise-level cloud hosting service with automatic scaling. Nirvanix - offers a cloud storage platform, file management via a standards-based API. Skytap - provides the Virtual Lab on-demand StrikeIron - offers the IronCloud cloud basedplatform for the delivery of web services, along with various Live Data Reference Sites Google Presentations, Google Docs Zoho Planner (planner.zoho.com) www.hitask.com www.basecamphq.com www.goplan.com Photos – www.flickr.com – www.shutterfly.com – www.photoshop.com/express/

Use Quizgecko on...
Browser
Browser