LFS151.x Chapter 1 Flashcards
(32 cards)
What defines Cloud Computing? (NIST)
Cloud computing is a model for enabling
- ubiquitous,
- convenient,
- on-demand
network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be
rapidly provisioned
and released
with minimal management effort
or service provider interaction
+ Pay as you go Model
What are common service categories?
- Infrastructure as a Service (IaaS)
- Platform as a Service (PaaS)
- Software as a Service (SaaS)
Name a few additional service models?
- Analytics as a Service (AnaaS)
- API as a Service (AaaS)
- Big Data as a Service (BDaaS)
- Business Process as a Service (BPaaS)
- Code as a Service (CaaS)
- Communications Platform as a Service (CPaaS)
- Desktop as a Service (DaaS)
- Database as a Service (DBaaS)
- Function as a Service (FaaS)
- Monitoring as a Service (MaaS)
Anything as a Service (XaaS).
What are key characteristics of Cloud computing? (7-8)
- Speed and Agility
- Cost
- Easy access to resources
- maintenance
- multitenancy
- realiability
- scalability and elasticity
- “security”
Which deployment models are known?
- Private Cloud
- Public Cloud
- Hybrid Cloud
- PolyCloud
- Community Cloud
- Distributed Cloud
What is virtualization?
Capability to create a virtual version of a physical compute resource, including a virtual computer hardware platform, operating system, virtual storage device, and virtual compute resource
How can Virtualization be achivieved?
- Can be achivied at different software layers (Central Processing Unit, storage, memory, …)
With several tools to create Virutal Machines (VM) by virtualizing essential hardware
What is a VM?
- Software equivalent of a hardware-built computing machine, represents an isolated collection of virtual resources, behaving like an actual physical system
How are VMs created?
With the help of a specialized virtualization software: hypervisor, that runs on the host machine
What is a hypervisor?
- Software, capable of creating multiple isolated virtual operating environments
- Each isolated virtual operating environment is composed of virtualized resources that are then made available to the guest systems.
What categories of hypervisors are classified?
Type-1 hypervisor (native or bare-metal)
Type-2 hypervisor (hosted)
What is a Type-1 hypervisor?
- Runs directly on top of a physical host machines hardware without the need for host OS
- Typically found in enterprise settings
- Examples:
- AWS Nitro
- Red Hat Virtualization
- Microsoft Hyper-V
What is a Type-2 hypervisor?
- Runs on top of the hosts OS
- Typically for end-users, may be found in enterprise settings?
Examples: - VirtualBox
- Vmware Player
- Vmware Workstation
What are Exceptions to the dual hypervisor distinction?
- Linux Kernel modules that act as both type 1 and type-2 hypervisors at the same time
Like: - KVM
- Bhyve
What do Hypervisors do?
- Enable virtualization of hardware such as CPU, disk, network
- Allow installation of guest VMs on top of them
Multiple guest VMs can be created with different Operating Systems on a single Hypervisor
What is hardware virtualization?
- The feature that allows hypervisors to virtualize physical hardware of a host system, thus sharing host systems processing resources with multiple guest systems in a safe and efficient manner
Supported by most modern CPUs
What is nested virtualization?
- Feature of a CPU to enable VMs to be created inside another VM
What is KVM?
- Kernel-based Virtual Machine
- Open souce software that provides hardware-assisted virtualization to support various guest OSs
- Loadable virtualization module of the linux kernel
- Converts the kernel into a hypervisor capable of managing guest Virtual Machines
- Specific hardware virtualization extensions have to be available
What Featues does KVM offer?
- Support various guest Oses, such as Linux Distributions, Windows, Solaris, etc
- Enables device abstraction of network interfaces, disk but not the processor
- Instead exposes the /dev/kvm interface that can be used by an external user space host for emulation
® Examples user space tools for KVM VM management: QEMU, virt-manager - Supports nested virtualization
- Supports hotpluggable devices such as CPUs and PCI devices
- Supports Overcommitting
- By dynamically swaping resources from one guest that is not using the type of resource that is needed
What is Overcommitting in the context of a hypervisor? Why is it possible?
- More virtualized CPUs and memory can be allocated to virtual machines than there are physical resources on the system
- Possible because most processes do not access 100% of their allocated resources all the time
What are benefits of using a KVM?
- Open source solution, free to customize
- Zero costs
- Provides efficient hardare-assisted virtualizatoin for an array of guest Oses
- Provides para-virtualization of ethernet cards, disk I/O controllers, and graphical interfaces for guest Oses
- Highly scalable
- Employs advanced security features, utilizing SELinux
Provides Mandatory Access Control security between Virtual Machine
What are benefits of using VMs in a development environment?
- Reproducible environment
- Management of multiple projects, each in ist isolated and restricted environment
- Sharing the environment with other teammates
- Keepting the develpoment and deployment environments in sync
Running consistently the same VM on different Oses leveraging hypervisors such as VirtualBox, Vmware, Hyper-V
What is Vagrant and why is it good?
- Cross-plattform tool for building and maintaining portable virtual software development environments
- Provides great extensibility bauce various plugins can extend ist supports for custom providers, provisioners, commands and hosts
What does Vagrant do?
- Helps automate VMs management by providing an end-to-end lifecycle management utility - the vagrant command line tool