[Cloud computing course notes]

I. Overview

Virtualization motivation:

    Defects of the traditional "chimney" Data center: average usage rate is low, application deployment long period, IT management and cost pressure;

Why do we need virtualization technology:

    1. breaking the tight coupling of the operating system and hardware; 2 resource provided by a virtual machine, fault isolation;.. 3 between the Software independent virtual machines; 4 hardware-independent virtual machine, can run on any hardware.

     *** virtualization technology:

             1) improve resource utilization: the rational allocation of idle resources; a multi-tenant shared hardware environment;

             2) improve the reliability: fast backup and recovery system in software, hardware failure time; easily deploy HA server clusters;

             3) automated management easier: reduce configuration, patch, recovery of maintenance time, increase security, isolation;

Virtualization definition:

Represents the abstract methods of computer resources, you can use the resources before access and access abstract abstract method consistent resources through virtualization. Abstract This method is not limited by the physical resources to achieve the configuration, location, or the underlying resources.

Virtualization of nature:

The original run computing system or component running on the real environment in out of the virtual environment. In virtualization technology, you can run multiple operating systems simultaneously, and each OS, there are multiple programs running each OS running on a virtual CPU or virtual host.

The core technology is the technology of cloud computing virtualization.


The basic elements of virtualization technology

VM VM (Virtual Machine) refers to a complete hardware system functions, run a full computer system through software simulation in a completely isolated environment. The conventional virtual machine system is achieved by adding a virtual layer the VMM (Virtual Machine Monitor) existing on the internet.

VMM is a software system, you can maintain more efficient, isolated environment program. VMM real resource management computer system provides an interface for virtual machines.

 

Virtualization features

1) Subdivision: run multiple OS on a single physical machine; better use of server resources; to support high availability - can form a cluster (load balancing between partitions, Shuangjirongcuo)

2) isolation: isolation from the hardware level, system failures and security threats; dynamic allocation of CPU, memory and other system resources between virtual machines; ensure that services are available.

3) Package: packaged into a virtual machine with hardware-independent configuration file, ready for a snapshot of the virtual machine;


VMM implementation technology

A, CPU virtualization

Privileged instructions: only in the kernel mode the processor instruction execution, mainly for allocating and managing system resources. If you are running on the user mode, privileged instruction causes an exception, the processor will fall into kernel mode, referred to the system software processing.

Second, memory virtualization

Memory virtualization to introduce a new layer of address space - guest physical address space, it is not a real physical address, but is "false" physical address VMM management.

Memory Virtualization The main task for the following two questions:

1) virtual address space to achieve and maintain the mapping between the host physical address and physical address of the client;

2) intercepts a client access to host physical address, and the mapping relationship, converting it into a physical address.

 

Three, I / O virtualization

I / O virtualization server can improve performance and simplify hardware requirements, and at the same time can increase the maximum number of I / O intensive virtual machines on the server.

I / O virtualization in three ways: full virtualization, para-virtualization, hardware assisted virtualization;


Mainstream virtualization software

KVM (Kernel-based Virtual Machine), is an open source system virtualization module, use Linux's own scheduler to manage. Advantages: compatibility simple. KVM is a hardware-assisted virtualization technology, is responsible for more complicated CPU and memory virtualization.

VMware


Hardware virtualization and OS virtualization

Hardware virtualization (Hypervisors): virtual hardware access, create multiple instances of virtual hardware, the host operating system and each Guest must be a full operating system. The KVM, VMware and the like;

Operating system virtualization (Containers): virtual OS to access, create multiple virtual OS instances, physical servers have a single, standard OS kernel.

 

Docker-- operating system-level virtualization

Docker is an open source application container engine that lets developers can package their applications as well as a portable container to the dependencies, and then posted to any popular Linux machine, is a lightweight container-based virtualization technology solution.

Docker core problem is to use LXC VM to achieve similar functionality, so that more economical use of hardware resources available to the user more computing resources.

 

Kernal Namespace (namespace): isolation achieved, i.e., each instance of isolation between users, independently of each other;

cgroups (control): achieve quota / measurable limit allows the system to process the container resource use, i.e., each instance of user demand can provide its computing resources, said resource usage can be metered;

AUFS (Union File System): for mobility, support will mount to different directories under the file system with a virtual file system, that is, instances users can easily copy, move and rebuild.

 

Docker three core: mirrors (images) - Construction of the container (Container) - execution, warehouse (Repositories) - Distribution

Among them, the mirror can be used to create the container, there are ways to create and pull Dockerfile; Docker container equivalent to create a virtual machine from a template, the container can be started, start, stop, delete, each container are isolated from each other to ensure the safety of platforms, containers can be seen as a simple version of the Linux environment in which to run applications.

 

Docker warehouse is a centralized place to store the image file, into public warehouses and private warehouses. push: Mirror to the warehouse, pull: the warehouse to the mirror


Cloud Resource Management System Openstack

 

Published 93 original articles · won praise 15 · views 30000 +

Guess you like

Origin blog.csdn.net/weixin_38121168/article/details/104820057