first, the basic knowledge of OpenStack
OpenStack is a free software and open source project that was developed and initiated by NASA and Rackspace to Apache2.0 licenses (compatible with GPLv3 and DFSG).
OpenStack is an open source cloud computing management Platform project, composed of several major components to accomplish specific tasks. OpenStack supports almost all types of cloud environments, and the project aims to provide a simple, scalable, rich, standard, unified cloud management platform. OpenStack provides an infrastructure, a service (IaaS) solution through a variety of complementary services, each providing an API for integration.
OpenStack is an open source project designed to provide software for the construction and management of public and private clouds. Its community has more than 130 enterprises and 1350 developers, and these organizations and individuals have OpenStack as the common front-end for Infrastructure, service (IaaS) resources. The first task of the OpenStack project is to simplify and bring good scalability to the cloud deployment process. This article hopes to help you use the OpenStack front-end to set up and manage your own public cloud or private cloud by providing the necessary guidance information.
Ii. The basic structure of OpenStack
Horizon (Dashboard): To provide users with a graphical Web front-end console for the management of OpenStack resources and services to make them relatively intuitive; Nova: Compute resource pools through virtualization; Neutron: Implement Virtual machine network resource management; Keystone: Identity authentication management; Swift: Object storage; cinder: block storage; glance: Mirroring; Ceilometer: Collecting, metering, heat: Automating deployment; Trove: Database
The three core components of OpenStack are
Iii. Brief introduction of the project
1. Openstack Compute (Nova)
Nova is the primary controller in the cloud computing environment, using the Python language to manage and automate computing resource pools with the current sophisticated virtualization technology (KVM, XenServer) OpenStack just as a platform, does not act as a consumer of the providers and resources of computing resources.
Openstack Object Storage (Swift)
Swift is an OpenStack object storage (object Storage) project that is extensible and provides a redundant storage system.
objects and files are distributed on disks of multiple servers in the same cluster, and OpenStack is responsible for data replication and consistency.
The object storage System is a distributed storage system for storing a large amount of static data, without the master node or the management node, which facilitates the system expansion and the redundancy and persistence of the data.
A stored cluster can be extended horizontally by adding a server.
If the server or disk in the cluster fails, OpenStack copies the data to the other nodes in the cluster.
Openstack Block Storage (Cinder)
Cinder is a OpenStack block storage service.
The creation, addition, and uninstallation of block devices is actually provided for computing in the cloud environment.
Cinder currently supports a variety of storage platforms (Linux server storage, Ceph, Cloudbyte, Coraid, EMC (VMAX and VNX), Glusterfs, IBM storage (storwize famil Y, SAN Volume Controller, and XIV Storage System), Linux Lio, NetApp, Nexenta, Scality, Solidfire and HP (Store Virtual an D storeserv 3Par families).
Block devices apply to scenarios where performance requirements are high: such as databases.
The snapshot capability of a block device enables data backups based on a block storage volume, and can also take advantage of snapshots for data recovery.
Openstack Networking (Neutron)
OpenStack's network services, has now been renamed by the previous Quantum to neutron.
Neutron provides virtual network capabilities in the cloud computing environment to provide a more flexible division of the physical network for the OpenStack Cloud, providing a separate network environment for each tenant in a multi-tenant environment.
Users can create their own networks, control network traffic, and control the servers and devices when they are connected to multiple networks.
Three modes of neutron service network management:
Openstack Dashboard (Horizon)
Dashboard provides an administrator with a graphical interface.
can access and manage cloud-based resources-computing, storage, networking, and more.
Provides high scalability to support the addition of Third-party custom modules, such as billing, monitoring, and additional management tools.
Support other cloud computing providers in dashboard for two of times.
Openstack Identity Service (Keystone)
Provides a centralized storage of user directories to facilitate access to other OpenStack services.
Can be combined with existing directory services (such as LDAP) to provide access to a single point of directory within the enterprise.
Create users and tenants, and restrict users and tenants from accessing computing, network, and storage resources in the cloud in a role-based fashion.
Supports multiple ways of checking:
-Standard user name and password checksum
-Certification based on token
-Certificate based Certification
Openstack Image Service (Glance)
Glance is a OpenStack mirroring service that provides the ability to query, register, and transfer disk and server virtual mirrors.
The glance itself does not store mirroring, it is just a proxy that acts as a link between the mirrored storage service and other OpenStack components.
Disk and server mirroring can be stored on OpenStack back-end services, such as on an object storage system.
An administrator can use the mirroring service to create a mirrored template that allows the user to select an existing mirror creation server.
Openstack Telemetry Service (ceilometer)
Measurement services: You can collect statistics for different services in cloud computing, and cloud operators can view the statistics of all resources or the statistics of a single resource like a funnel that collects almost all the events that occur within the OpenStack and then provides data support for billing and monitoring and other services
Openstack Orchestration Service (Heat)
Deployment Orchestration Services: Provides a collaborative deployment approach defined by templates.
A template-driven engine that allows application developers to use the provided template language to describe the architecture of the cloud environment and to deploy cloud computing resources in an automated manner.
By combining with telemetry service, the automation of cloud computing resource expansion can be better realized.
Openstack Database Service (Trove)
Provides scalable and reliable relational database engine services for users in OpenStack environments.
Mainly used to help users in the complex management of resource isolation, easy to automate management operations
Users can create multiple databases as needed.