Version Openstack-liberty virtual machine creation process (eight)

Source: Internet
Author: User

Virtual Machine creation Process:

According to the official flow chart, I personally divide the creation steps of the OpenStack cloud host into four phases:

1. Keystone Verification Phase

2. Nova Service component Exchange

3. OpenStack Other Service Exchange

4. Perform the creation

First Stage: Keystone verification

    1. Users use dashboard Horizon or the command-line CLI to send user credentials (credentials) and verify (authenticates) to the identity service Keystone through the rest API. Keystone uses the user credentials to authenticate and then returns a Auth-token. Subsequent operations can then use this auth-token to request OpenStack's other components through rest calls.

    2. The horizon or CLI sends a request for the launch instance or Nova-boot transformation to a REST API to NOVA-API.

    3. After NOVA-API receives this request, it first sends a request to Keystone to confirm that the Auth-token is valid and has access rights. After Keystone confirms the Auth-token, it sends an updated authentication header that contains the roles and permissions.

    4. Nova-api and Nova databases interact to record the user's request to create a virtual machine in the Nova database.

Phase two: Nova Service component interaction

    1. Nova-api sends a request to Nova-schedule in Rpc.call way, allowing Nova-scheduler to select a compute node to create the virtual machine. Note that it is sent to Nova-scheduler through Message Queuing.

    2. The Nova-schedule dispatch service listens for the scheduler queue and fetches the data from the queue.

    3. Nova-scheduler and Nova database interaction, through the scheduling algorithm, that is, filtering and weighing the final selection of a running Nova-compute compute node, The Nova-schedule then sends the virtual machine information to Nova-compute using RPC.CAST mode. Compute node queue. Let Nova-compute create the instance in the selected compute node.

    4. Nova-compute gets the request from the queue.

    5. Nova-compute sends a Rpc.call request to Nova-conductor to get information about the instance, such as the host ID and the selected flavor (CPU, memory, and disk).

    6. Nova-conductor gets the request from the queue.

    7. Nova-conductor interacts with Nova's database. Nova-conductor returns the information for the instance. Nova-compute gets the information for the instance from the queue.

Phase three: OpenStack other service interactions

In the second phase Nova-compute in order to obtain the resources needed to create the instance, such as mirroring, networking, storage. The neutron-server of the glance of the Network service neutron has been interacting with cinder of the block storage service Cinder-api, using the Auth-tokon that were obtained after the first phase of user authentication and the GLANCE-API of the mirror service. And every time the other party receives the request, it needs to go to Keystone to verify that the Auth-token is valid.

    1. Nova-compute uses the Auth-token obtained after authentication to initiate a rest call to Glance-api to get the mirror. The Nova-compute is then used with the mirror ID. Gets the image URI from the mirror service. Loads the image from the (image storage) image store.

13.glance-api go to Keystone to verify that the Auth-token is valid. If it works, Nova-compute can get the mirrored metadata metadata.

14.nova-compute uses the Auth-token obtained after validation to perform a rest call to Neutron-server, allowing Neutron-server to assign and configure the network, assigning an IP address to the instance.

15.neutron-server go to Keystone to verify that the Auth-token is valid. If it works, Nova-compute can get information about the network.

16.nova-compute uses the Auth-token obtained after validation to perform a rest call to CINDER-API, attaching the volume storage to the instance, namely the cloud drive.

17.cinder-api Go Keystone Verify that Auth-token is valid, and if so, Nova-compute can get information about the block storage.

Stage Four: Execution creation

In the third phase, Nova-compute has acquired image, network, and storage-related information through glance, neutron, and cinder respectively. Then in the fourth phase, Nova-compute started to create the virtual machine.

18.nova-compute generates data for hypervisor drivers and enables hypervisor to execute requests through Libvirt or other APIs to create a virtual machine. Thus the interaction process created by the virtual machine is basically over, and the remaining steps are the process of hypervisor the final creation of the virtual machine.

Then Nova-api go to rotation nova database to see if the status of the virtual machine becomes the correct state to create the virtual machine (active,none,sunning), and if the status is correct, the virtual machine creation is successful.

Version Openstack-liberty virtual machine creation process (eight)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.