ITCMSY2 [NOTES].pdf
Document Details
Uploaded by ColorfulHarpGuitar3893
Full Transcript
Traditional vs Virtualization vs Cloud With Virtualization Virtualization relies on software to stimulate Traditional Virtualization Cloud ha...
Traditional vs Virtualization vs Cloud With Virtualization Virtualization relies on software to stimulate Traditional Virtualization Cloud hardware functionality and create a virtual Computer w/ Software versions Multiple servers computer system a physical of hardware and Enables IT organizations to run more than one hardware OS virtual system [multiple OS and applications] on a single server. Local Emulation of Delivery of Result = economies of scale and greater environment physical machines computing efficiency. & OS resource through the internet Prefer Traditional Physical Multiple Centralized - isolation, dependencies, OS limitations deployment computers and/or resource & IT resources of server OS in a single access via the - Network[I/O], compute, storage/memory host machine internet Use of an Virtual equivalent Renting & using Deployment using Traditional vs on-premise of computing computer Virtualization datacenter resources services Dedicated Multiple systems Offer scalability & physical & apps running on flexibility without machine a single machine the need for local hardware ❖ Traditional Refers to use of physical servers and datacenters to deliver computing and other IT services. Dedicated servers are commonly used Host computer would typically be installed with a single OS directly on the hardware, where tools, dependencies, and applications would Types of Virtualization run from it. Would typically run one or few applications per machine, resulting in possible issues in resource allocation as well as difficulty in scaling. ❖ Virtualization Is the technology that you can use to create visual representations of servers, storage, networks, and other physical machines and resources. Virtual software mimics the functions of physical hardware. 1. Server Virtualization A virtual computer is known as a virtual machine or VM is a self-contained, completely Enable multiple OS to run on independent, and isolated software container a single physical layer. with an operating system and application inside. Partitions a physical server Multiple VMs on a single computer results in into multiple servers. several OS and applications to run on one Benefits: physical server, or host. Greater IT efficiencies Reduced operating costs Without Virtualization Maximization of resource Due to limitations of x86 servers, many IT Faster workload organizations must deploy multiple servers, deployment each operating at a fraction of their capacity, to Increased application keep pace with today’s high storage and performance processing demands. Higher server ability Result = huge inefficiencies and excessive Eliminated server sprawl and complexity operating costs 2. Network Virtualization Completely reproduces a physical network, allowing applications to run a virtual network as if they were running on a physical network. physical network = turns to software Achieves greater operational benefits and all the IT administrators can streamline storage activities, such hardware independencies of virtualization as archiving, backup, and recovery, because multiple storage devices are virtually combined into a single Network virtualization presents logical networking storage device devices and services to connected workloads, such as: Logical ports 5. Data Virtualization Switches Creates a software layer between this data and the Routers applications that need it Firewalls Load balancers Modern organizations collect data from several VPNs and more sources in different formats and are stored in Limits = may not work for all use cases. different places, such as in a cloud infrastructure or on-premises data center 3. Desktop Virtualization Deploying desktops as a managed service enables IT Data virtualization tools process an application’s data organizations to respond faster to changing workplace request and return results in a suitable format needs and emerging opportunities This results in increased flexibility for data integration Virtualized desktops and applications can also be and support cross-functional data analysis quickly and easily delivered to branch offices, outsourced and offshore employees, and mobile 6. Application Virtualization workers using tablets Application virtualization Pulls out the functions of applications to run on operating systems other than Typically categorized as Local Desktop Virtualization the operating systems for which they were designed or Remote Desktop Virtualization (i.e. run linux apps on a windows machine w/0 any configurations) Makes desktop management efficient (SW less time), secure (isolation), and saves money on desktop Application streaming - users stream the application hardware (no update, no warranty) from a remote server. Runs only on the user’s device when needed Types include: 1.Desktop as a Service (DaaS) Server-based application virtualization - users access Cloud service that delivers virtualized desktops the remote application from their browser or client and applications interface without installing Types: client-defined, vendor-defined, and managed DaaS Local application virtualization - the application code is 2.Virtual Desktop Infrastructure (VDI) deployed with its own environment to run on all A product usually deployed on an on-premise operating systems without changes datacenter Users access the virtual desktop on the server Hardware independence by using client devices Provision or migrate to any server without the 3.Local Desktop Virtualization (LDV) need to perform reconfiguration on the virtual Hypervisor runs on a local computer containing machine virtual machines Provide virtual instances the capability to Switch between local and virtual environment as provisioned, deployed, and migrated to across applications different companies 4.Remote Desktop Services (RDS) Capability to provision virtual instance to any Remote access Windows desktop sessions, host device also called Terminal Service Partitioning Multiple users are using a shared virtual - Divide resources between virtual machines machine - Run multiple OS or virtual machines in a single 4. Storage Virtualization physical machine Combines the function of physical storage devices such Isolation as network attached storage (NAS) and storage area - Fault isolation at the hardware level network (SAN) - Reduce risk of dependencies and conflicts - Sandboxing of applications and workloads Storage can be pooled despite being heterogeneous, Encapsulation from different vendors or different types - Move and copy virtual machines as files - Improved portability Storage virtualization uses multiple physical data - Self-contained, independent, portable storage and creates a large unit of virtual storage that you can assign and control by using management software What is Virtualization ○ Increased application performance Virtualization can increase IT agility, flexibility, and ○ Higher server availability scalability while creating significant cost savings. ○ Eliminated server sprawl and complexity Benefits of Virtualization Network virtualization Reduced capital and operating costs Allows applications to run on a virtual network Minimized or eliminated downtime as if they were running on a physical network. Increased IT productivity, efficiency, agility, and Desktop virtualization responsiveness Deploying desktops as a managed service. Faster provisioning of applications and Virtualized desktops and applications can be resources quickly and easily delivered to branch offices, Greater business continuity and disaster outsourced and offshore employees, and mobile recovery workers using iPad and Android tablets Simplified data center management Availability of a true Software-Defined Data Virtualization vs Cloud Computing Center Virtualization is software that makes computing environments independent of physical infrastructure, How Virtualization works while cloud computing is a service that delivers shared Due to limitations of x86 servers, IT organizations computing resources on demand via the internet. must deploy multiple servers, each operating at a fraction of their capacity, to keep pace with today’s high storage and processing demands->huge inefficiencies Google Cloud: Containers vs VM and excessive operating costs Virtual machines provide an abstracted version of the Virtualization relies on software to stimulate hardware entire hardware of a physical machine. functionality and create a virtual computer system. This enables to run more than one virtual system–and Containers are portable instances of software with its multiple operating systems and applications–on a single dependencies that run on a physical machine. server->economies of scale and greater efficiency Difference between containers and virtual machines Virtual computer system = virtual machine (VM): a tightly VMs access the hardware of a physical machine isolated software container with an operating system through a hypervisor. and application inside. Each self-contained VM is - More resource-intensive than containers. completely independent. - Provide a high level of isolation. A thin layer of software called “Hypervisor” decouples Hypervisor creates an abstraction layer allowing the VM the virtual machines from the host and dynamically to access CPU, memory, and storage. allocates computing resources to each virtual machine as needed. Containers represent a package that includes an executable with the dependencies it needs to run. Each Key properties of virtual machines container shares the physical machine’s hardware and Partitioning operating system kernel with other containers. ○ Run multiple OS on one physical - More lightweight and portable than VMs machine - Good choice for applications that need to be ○ Divide system resources between VMs deployed quickly and easily. Isolation ○ Provide fault and security isolation at Containers the hardware level - Lightweight, portable, and self-contained ○ Preserve performance w/ advanced executable images that contain software resource controls applications and their dependencies Encapsulation - Used to deploy and run applications in a ○ Save the entire state of a VM to files consistent way across different environments ○ Move and copy VMs as easily as - Deployed from an image by using an moving and copying files orchestration platform, like Kubernetes Hardware independence Benefits: ○ Provision or migrate any VM to any - Lightweight physical server - Portable - Support decomposition of a monolith into Types of Virtualization microservices Server virtualization - Faster to manage and deploy Enables multiple OS to run on a single physical server. Benefits: Virtual Machines ○ Greater IT efficiencies - VMs or guests represent instances of an OS ○ Reduced operating costs co-located on a physical machine through a use ○ Faster workload deployment of hypervisor. - Each VM has its own OS, memory, and other Common use cases for containers resources, which are isolated from the other Web development - can be easily deployed to a VMs variety of environments - Allows multiple systems to run on the same Microservices architecture - can be used to physical components without interfering with deploy and manage individual services each other Cloud computing - can be easily scaled up or - VMs are created and managed using hypervisor down to meet demand software–manages a physical computer’s Continuous integration and delivery (CI/CD) - resources and allocate them to virtual machines can be used to support automated processes How are containers and VMs related? Common use cases for VMs Containers are segregated applications or services on a Testing - can be easily reset or deleted host and share the same OS Development - can use different OS - Has a smaller footprint than VMs as containers Isolation - for security segmentation and shares the host OS’s kernel resource partitioning - Can start and stop faster, and use fewer Disaster recovery - can be easily restored from resources a backup VMs are isolated instances of an OS on a physical host and run applications or services Visualization and Hypervisors - Each VMs have their own kernel - Isolated from each other, which help prevent Virtualization works by abstracting physical hardware attacks from spreading between guests and devices from the applications running on that Containers and VMs can be used together. hardware - Container can be used to run an application, and VM can be used to provide the underlying Hypervisors make virtualization possible by translating infrastructure requests between the physical and virtual resources Feature Container Virtual Machine Hypervisors support the creation and management of VMs by abstracting a computer’s software from its OS Shares host Has its own kernel hardware OS’s kernel Bare metal hypervisors are sometimes embedded into Portability More portable Less portable the firmware (BIOS) to enable the OS of a computer to Speed Faster to start Slower access and use virtualization software (Intel-VT or up and shut AMD-V) down Resource Uses fewer Uses more Hypervisors Also known as virtual machine monitor or VMM, is a Use cases Portable and Isolated software that creates and runs virtual machines scalable apps applications A hypervisor allows a host computer to support Guest Runs on same Runs just about compatibility OS version as any OS inside the multiple guest VMs by virtually sharing its resources the host VM Hypervisors provide greater IT mobility since the guest Deployment Individual: Individual VMs: VMs are independent of the host hardware docker via Windows Admin command line. Center. Multiple Multiple virtual machines can run on one physical Multiple: VMs: PowerShell orchestrator server, reducing space, energy, and maintenance requirements Fault If a cluster fails, VMs can fail over to tolerance any containers another server in a Benefits of Hypervisors running on it cluster Speed - virtual machines can be created instantly, are recreated making it easier to provision resources as needed Use Cases Web Testing, for dynamic workloads development, development, Efficiency - running several VMs on a physical microservices isolation, cloud machine is more efficient than to run multiple architecture, computing, underutilized physical machines continuous disaster recovery Flexibility - separates the OS from the underlying integration and hardware, so the software no longer relies on delivery, cloud computing specific hardware devices or drivers Portability - multiple OS to reside on the same physical server; VMs in the hypervisor run independently from the physical machine; allows shifting of workloads and allocate resources as needed Hypervisors looks like shell Types of Hypervisors [OS -> HW] Type 1 - Bare Metal or Native Hypervisor Lightweight OS directly running on top of the host machine Isolated from the guest OS, results in better security Better performance than hosted hypervisors Mostly used by enterprise for data center computing needs Use to monitor VMs Type 2 - Hosted or Client Hypervisor [software -> Host OS] Runs as a software on an OS, like other programs Can still run the same or a different guest OS from the host OS Have higher latency than bare metal hypervisors Mostly used by end users and software testing, where higher latency is less of a concern CLOUD COMPUTING Cloud computing is the on-demand delivery of Baremetal Type 1 Type 2 Hypervisor OS Hypervisor compute power, database, storage, applications, and other IT resources via the internet with pay-as-you-go Apps Apps Apps pricing. OS (WIN Guest OS (Win Guest OS (Win 11) 11) 11) Hypervisor public cloud = Pay-as-you-go = rent Hardware Hypervisor (VMWare WS) Private cloud = we own the servers; no need to rent (Proxmox) Host OS (Win 11) Hardware Hardware Generic: cloud computing is the on-demand delivery of IT resources via the network Closer look in Hypervisors Infrastructure as software Cloud computing enables you to stop thinking of your infrastructure as hardware and instead think of (and use) it as software. Virtualization Cloud Definition Technology (translation Methodology & abstraction) Purpose Create multiple Pool and automate virtual simulated environments resources for on-demand from 1 physical use hardware system Use Deliver packaged Deliver variable resources resources to specific to groups of users for a users for a specific variety of purposes purpose Multiple organizations or Single organization. users, with diff needs Variety of purpose: dev, HR, IT, public Configuration Image-based Template-based Flexible, customizable Lifespan Years (long-term) Hours to months Specific use, for the Auto-scale, test, organization, own the multi-user, diff usage hardware Cost High capital Private cloud: high expenditures (CAPEx) CAPEX, low OPEX low operational Public c;oud: low CAPEX, expenditures (OPEX) high OPEX 1. Own the servers 1. Dont own the servers 2. Bought the servers at 2. Rent start 3. Pay as you go 3. Pay for electricity, 4. If you dont pay no maintenance services for you Scalability Scale up Scale out Workload Stateful Stateless Cloud computing deployment models Tenancy Single tenant Multiple tenant Cloud (public cloud) ○ rent/pay-as-you-go/pay-as-you-use ○ Higher OPEX lower CAPEX Traditional computing model ○ Global reach Infrastructure as hardware (traditional/physical) ○ AWS, G Cloud, Azure Hardware solutions: ○ Expensive in the long run ○ Require space, staff, physical security, planning, Hybrid capital expenditure ○ Both public and private cloud ○ Have a long hardware procurement cycle ○ Mid CAPEX & OPEX ○ Require you to provision capacity by guessing ○ Global reach theoretical maximum peaks On-premises (private cloud) ○ Traditional datacenter Cloud computing model ○ Agility bec of virtualization Infrastructure as software ○ Higher CAPEX lower OPEX Software solutions: ○ Infra as HW but w/ virtualization ○ Are flexible ○ Can change more quickly, easily, and Similarities between AWS and traditional IT cost-effectively than hardware solutions Traditional AWS ○ Eliminate the undifferentiated heavy-lifting task Security Firewalls, ACLs, Security groups, administrators network ACLs IAM Networking Router, network Elastic load pipeline, switch balancing, Amazon VPC Compute On-premises AMI, Amazon servers EC2 Instances Storage and DAS, SAN, Amazon EBS, Cloud service models database NAS, RBDMS Amazon EFS, From more control over IT resources to less control Amazon S3, IaaS: Infrastructure as a service Amazon RDS ○ Closer to traditional datacenter capabilities ○ Ops/DevOps Trade capital expense for variable expense PaaS: Platform as a service Data center investment based on forecast ○ Less IT knowledge needed Pay only for the amount you consume ○ Dev ○ No HW/OS/Network/IT resource Passive economies of scale ○ Apps -> multiple versions/options Because of aggregate usage from all customers, AWS SaaS: Software as a service can achieve higher economies of scale and pass ○ Subscribing to ready made app savings on to customers. ○ User/Client ○ Single version ○ Use the service ○ No OS / net / HW / app types / app resources / IT resource Key takeaways 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 traditional (if there is virtualize in the sentence, not traditional) - admin has a dedicated server with a single OS needed - solution that effectively results in the lowest amount of latency - traditional > type 2 > type 1 container - continuous integration and delivery - improve "application" development, development, and management - efficiently support automated process of building testing and deploying of "apps" - installing a virtual instance, but does not bother setting up the OS, - ex. our lab activity 1 - need to virtualize an OS for use in the company virtual machine - isolate applications from each other, ensuring security segmentation and resource partitioning - test new software in a sandboxed environment; sandboxing type 1 hypervisor - spare computer (more efficient than h2 in maximizing the spare computer) - ex. ESXi or Proxmox - have/make either a vm or a container on top of a hypervisor type 2 hvisor - own windows 11 laptop, need to run ubuntu applications - why not hv1, if u install proxmox, u cant use ubuntu just proxmox - solution to support a smaller deployment, less-demanding workloads, require a testing environment, less complex setup, all the while having a small price tag - less-demanding workloads = does not require a low latency - most less complex - ex. VirtualBox - run an Android OS on top of the office machine - type 2 sits on top of the OS as an application - have/make either a vm or a container on top of a hypervisor