Lecture – 04 CLOUD COMPUTING DR. IRSHAD AHMED ASSISTANT PROFESSOR DEPARTMENT OF INFORMATION TECHNOLOGY (IT) LAHORE GARRISON UNIVERSITY. IRSHADAHMED@LGU.EDU.PK Content: ► Networking Structure of Cloud Hosting Data center ► Essential Characteristics of Cloud Computing ► Business Drivers for Cloud Computing ► Revisiting NIST Definition of Cloud Computing ► Some key terms about Cloud Computing ► Scaling, Cloud Service Providers & Consumers Basic Concept of Network ► A network is a set of devices (often referred to as nodes) connected by communication links. A node can be a computer, printer, or any other device capable of sending and/or receiving data generated by other nodes on the network. A link can be a cable, air, optical fiber, or any medium which can transport a signal carrying information. Summary Of Previous Lecture ► In a physical network, multiple LANs and WANs are joined together by the routers. ► Hence there can be more than one route between two hosts. ► Routing is a service of Network layer to find the best route. Routing is performed by applying routing protocols and using the decision tables called routing tables in each router. ► ► Forwarding is the action performed by a router on the basis of routing protocol and routing table according to the destination address of each packet received at any interface. Concept of Virtualization ► Virtualization: It is a technology used to enhance the utilization of computing resources. ► A single hardware machine is multiplexed among multiple virtual machines (VMs). ► A software based virtual machine monitor/manager (VMM) or hypervisor is a program that manages the hardware resources for the VMs and also keeps each VM from disrupting other VMs. Networking Structure of Cloud Hosting Data center • At the core of a cloud is a cluster of VMs/ physical servers. • There can be tens of thousands of physical servers in a data center. • With each physical server hosting multiple VMs, the cloud hosting networking structure becomes a little complicated. • The cluster nodes are used for computations. Some nodes are used for workload allocation, some for monitoring and some for load balancing. • Some node called gateway nodes provide the interface of cloud service/s to the outside world (through internet). Networking Structure of Cloud Hosting Data center • Cloud hosting data center has a layered architecture for the Internet access. • The servers are physically connected to layer 2 switches. There is a top of rack (TOR) in each rack. One server is connected to only one TOR switch. • The TORs are connected to aggregate switches (AGS). • The AGSs provide the cross rack inter VM connectivity. • There are a few access routers (AR) and border routers (BR) at layer 3. • The layer 2 AGSs are connected to BR through AR. • The BRs are connected to Internet. Networking Structure of Cloud Hosting Data center ► Some problems solved by the hypervisor solutions: ► The VMs hosted on one server may belong to different vLANs. ► A single vLAN may span over multiple data centers. ► A company may own multiple data centers and may want to migrate the VMs across data centers. Networking Structure of Cloud Hosting Data center BR BR AR AR AGS AGS TOR TOR TOR Rack Rack Rack Essential Characteristics of Cloud Computing ► On-demand self-service: The user can automatically be allocated the computing resources without any manual operations (except the initial signing up process). The cloud management software handles the resource management and provisioning. ► Broad Network Access: The cloud resources can be accessed through network through broad range of wired and wireless devices. Various connectivity technologies are available. ► Resource pooling: Resources (Computing, memory, storage, network) are available in volumes and therefore can be pooled. The resources can be physical or virtual. Multiple users can simultaneously share these resources through dynamic allocation and reallocation. Essential Characteristics of Cloud Computing ► ► Rapid elasticity: The cloud resources are virtually unlimited. So much so, the provisioning of these resources can shrink and expand elastically according to demand. Measured Service: The resource usage is charged by the provider from users, according to usage. Business Drivers for Cloud Computing ► Various business drivers lure the organizations to start using Cloud. ► These include (but not limited to): ► IT Capacity Planning ► Cost Reduction ► Organizational Agility IT Capacity Planning: ► ► It is the estimation and fulfillment of future IT requirements of an organization. ► The over provisioning of IT happens when acquired equipment is more than the estimated requirements. Resulting in over expenditure. Business Drivers for Cloud Computing ► The under provisioning occurs when the equipment turns out to be inadequate to fulfill the IT requirements of the future. ► IT Capacity planning is a difficult job as it should cover the fluctuating load. ► Usually the companies adopt any of the following strategies: ► Lead Strategy: Adding new IT capacity in anticipation of future needs. ► Lag Strategy: Adding new IT capacity when the IT resources reach the full utilization ► Match Strategy: Adding IT capacity in small increments. Business Drivers for Cloud Computing ► The capacity planning may lead to adopting the option of Cloud Computing and then planning for future needs of Cloud resources rental instead of purchasing the IT equipment. ► ► Cost Reduction: The costs include ► Cost of acquiring the IT infrastructure ► Operational overheads such as technical personnel salaries, upgrades, utility bills, security, accounts and administrative staff salaries Why not choose the Cloud instead ? Business Drivers for Cloud Computing ► Organizational Agility: It is the responsiveness to the change. We consider the change in IT for this topic. ► A possible shift, upgrade or acquiring a new software may require to upgrade the hardware. ► The routine procedures and the business may come to halt or the competitors may out run if the organization fails to invest in IT just because of lack of affordability. ► The Cloud on the other hand, just charges for the usage of IT resources, no need to invest in infrastructure. Revisiting NIST Definition of Cloud Computing ► Cloud computing is a model for enabling global, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications & services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. ► Cloud computing can fulfill the business drivers such as ► IT Capacity Planning ► Cost Reduction ► Organizational Agility Some key terms about Cloud Computing ► ► Some key terms and concepts essential for understanding Cloud Computing course: ► IT Resources ► On-premises ► Cloud Consumers ► Cloud Providers Cloud IT Resources: Can be physical or virtual resources (virtual resources are implemented in software): ► Physical/Virtual machines/servers ► Physical/virtual storage Some key terms about Cloud Computing ► On-premises: An IT resource which is hosted/located at the enterprise's premises. ► It is different from a Cloud resource since a Cloud resource is hosted on Cloud. ► An on-premises IT resource can be connected to a Cloud resource and/or can be moved to a Cloud. ► However the distinction is difficult for private clouds. ► Cloud Providers: The party providing the cloud-based IT resources. ► Cloud Consumer: The user of cloud-based IT resources is called cloud consumer. Scaling, Cloud Service Providers & Consumers ► ► Scaling: It refers to the ability of an IT resource to handle increased or decreased usage demands. Following are the types of scaling: ► Horizontal scaling: It is the scaling out or scaling in of the IT resources of same type. The number of resources increases or decreases according to load. ► Commodity hardware can do the work, instantly available IT resources, not limited by hardware capacity Scaling, Cloud Service Providers & Consumers Physical server pool Virtual machines VM (A) VM (A) VM (B) Horizontal scaling with increase in demand VM (A) VM (B) VM (C) Scaling, Cloud Service Providers & Consumers ► Vertical scaling: When an IT resource is replaced with a resource of higher capacity (scaling up) or when replaced with the resource of lower capacity (scaling down) according to workload. ► Specialized server are required, instantly available IT resources, additional setup is required (downtime required during replacement), limited by maximum hardware capacity, less common in Cloud. Scaling, Cloud Service Providers & Consumers Dedicated physical server with 4 CPUs Vertical scaling with increase in demand VM Virtual machine with 2 vCPU Scaling, Cloud Service Providers & Consumers • Cloud Service: Any IT resource (software/VM) that is made remotely available by the cloud provider. • Remember that not all the IT resources deployed in a cloud environment are remotely accessible. Some resources are used within the Cloud for support and monitoring etc. • The human users interact with a leased VM. • Client programs interact with cloud software service/s through API calls. • The software program and service accessing a cloud service is called a cloud service consumer