Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
67 views3 pages

OpenStack Docs - Nova System Architecture

Uploaded by

RAMPrabhu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
67 views3 pages

OpenStack Docs - Nova System Architecture

Uploaded by

RAMPrabhu
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

11/2/2017 OpenStack Docs: Nova System Architecture

Nova System Architecture


 (aggregates.html)  (block-device-mapping.html)  (https://bugs.launchpad.net/nova/+filebug?
field.title=Nova%20System%20Architecture%20in%20nova&field.comment=%0A%0A%0AThis bug tracker is for errors with the documentation, use the following as a
template and remove or add fields as you see fit. Convert [ ] into [x] to check boxes:%0A%0A- [ ] This doc is inaccurate in this way: ______%0A- [ ] This is a doc addition
request.%0A- [ ] I have a fix to the document that I can paste below including example: input and output. %0A%0AIf you have a troubleshooting or support issue, use the
following resources:%0A%0A - Ask OpenStack: http://ask.openstack.org%0A - The mailing list: http://lists.openstack.org%0A - IRC: 'openstack' channel on Freenode%0A%0A-
----------------------------------%0ARelease:%2017.0.0.0b2.dev106%20on%202017-11-
02%2003:48%0ASHA:%20824d796775f05d99b211d0a27729fdba490ebab3%0ASource:%20https://git.openstack.org/cgit/openstack/nova/tree/doc/source/user/architecture.rst
https://docs.openstack.org/nova/latest/user/architecture.html&field.tags=)

UPDATED: 2017-11-02 03:48

Nova is comprised of multiple server processes, each performing different functions. The user-facing interface is a REST API, while internally Nova components
communicate via an RPC message passing mechanism.

The API servers process REST requests, which typically involve database reads/writes, optionally sending RPC messages to other Nova services, and generating responses
to the REST calls. RPC messaging is done via the oslo.messaging library, an abstraction on top of message queues. Most of the major nova components can be run on
multiple servers, and have a manager that is listening for RPC messages. The one major exception is nova-compute, where a single process runs on the hypervisor it is
managing (except when using the VMware or Ironic drivers). The manager also, optionally, has periodic tasks. For more details on our RPC system, please see: AMQP and
Nova (../reference/rpc.html)

Nova also uses a central database that is (logically) shared between all components. However, to aid upgrade, the DB is accessed through an object layer that ensures an
upgraded control plane can still communicate with a nova-compute running the previous release. To make this possible nova-compute proxies DB requests over RPC to
a central manager called nova-conductor

To horizontally expand Nova deployments, we have a deployment sharding concept called cells. For more information please see: Cells (cells.html)

Components¶
Below you will find a helpful explanation of the key components of a typical (non-cells v1) Nova deployment.

https://docs.openstack.org/nova/latest/user/architecture.html 1/3
11/2/2017 OpenStack Docs: Nova System Architecture
Nova-Networking

API
API
Keystone API DB

Conductor Scheduler
Conductor Scheduler
Network Conductor Scheduler Glance &
Cinder

Compute
Compute
Compute

External service

Nova service Hypervisor


oslo.messaging
DB
HTTP

Neutron

API
API
Keystone API DB

Conductor Scheduler
Conductor Scheduler
Conductor Scheduler Glance &
Neutron
Cinder

Compute
Compute
Compute

Hypervisor

(../_images/architecture.svg)
DB: sql database for data storage.
API: component that receives HTTP requests, converts commands and communicates with other components via the oslo.messaging queue or HTTP
Scheduler: decides which host gets each instance

https://docs.openstack.org/nova/latest/user/architecture.html 2/3
11/2/2017 OpenStack Docs: Nova System Architecture
Network: manages ip forwarding, bridges, and vlans
Compute: manages communication with hypervisor and virtual machines.
Conductor: handles requests that need coordination(build/resize), acts as a database proxy, or handles object conversions.

While all services are designed to be horizontally scalable, you should have significantly more computes then anything else.

 (aggregates.html)  (block-device-mapping.html)  (https://bugs.launchpad.net/nova/+filebug?


field.title=Nova%20System%20Architecture%20in%20nova&field.comment=%0A%0A%0AThis bug tracker is for errors with the documentation, use the following as a
template and remove or add fields as you see fit. Convert [ ] into [x] to check boxes:%0A%0A- [ ] This doc is inaccurate in this way: ______%0A- [ ] This is a doc addition
request.%0A- [ ] I have a fix to the document that I can paste below including example: input and output. %0A%0AIf you have a troubleshooting or support issue, use the
following resources:%0A%0A - Ask OpenStack: http://ask.openstack.org%0A - The mailing list: http://lists.openstack.org%0A - IRC: 'openstack' channel on
Freenode%0A%0A-----------------------------------%0ARelease:%2017.0.0.0b2.dev106%20on%202017-11-
02%2003:48%0ASHA:%20824d796775f05d99b211d0a27729fdba490ebab3%0ASource:%20https://git.openstack.org/cgit/openstack/nova/tree/doc/source/user/architecture.
https://docs.openstack.org/nova/latest/user/architecture.html&field.tags=)

UPDATED: 2017-11-02 03:48

(https://creativecommons.org/licenses/by/3.0/)
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License (https://creativecommons.org/licenses/by/3.0/). See all OpenStack Legal
Documents (http://www.openstack.org/legal).

 FOUND AN ERROR? REPORT A BUG (HTTPS://BUGS.LAUNCHPAD.NET/NOVA/+FILEBUG?FIELD.TITLE=NOVA%20SYSTEM%20ARCHITECTURE%20IN%20NOVA&FIELD.COMMENT=%0A%0A%0ATHIS BUG


TRACKER IS FOR ERRORS WITH THE DOCUMENTATION, USE THE FOLLOWING AS A TEMPLATE AND REMOVE OR ADD FIELDS AS YOU SEE FIT. CONVERT [ ] INTO [X] TO CHECK BOXES:%0A%0A- [ ] THIS DOC IS
INACCURATE IN THIS WAY: ______%0A- [ ] THIS IS A DOC ADDITION REQUEST.%0A- [ ] I HAVE A FIX TO THE DOCUMENT THAT I CAN PASTE BELOW INCLUDING EXAMPLE: INPUT AND OUTPUT. %0A%0AIF YOU
HAVE A TROUBLESHOOTING OR SUPPORT ISSUE, USE THE FOLLOWING RESOURCES:%0A%0A - ASK OPENSTACK: HTTP://ASK.OPENSTACK.ORG%0A - THE MAILING LIST: HTTP://LISTS.OPENSTACK.ORG%0A - IRC:
'OPENSTACK' CHANNEL ON FREENODE%0A%0A-----------------------------------%0ARELEASE:%2017.0.0.0B2.DEV106%20ON%202017-11-
02%2003:48%0ASHA:%20824D796775F05D99B211D0A27729FDBA490EBAB3%0ASOURCE:%20HTTPS://GIT.OPENSTACK.ORG/CGIT/OPENSTACK/NOVA/TREE/DOC/SOURCE/USER/ARCHITECTURE.RST%0AURL:
HTTPS://DOCS.OPENSTACK.ORG/NOVA/LATEST/USER/ARCHITECTURE.HTML&FIELD.TAGS=)

 QUESTIONS? (HTTP://ASK.OPENSTACK.ORG)

 OpenStack Documentation 

nova 17.0.0.0b2.dev106
(../index.html)

Compute service (../install/index.html)

Contributor Documentation (../contributor/index.html)

Technical Reference Deep Dives (../reference/index.html)

Page Contents

Components

OpenStack
Projects (http://openstack.org/projects/)
OpenStack Security (http://openstack.org/projects/openstack-security/)
Common Questions (http://openstack.org/projects/openstack-faq/)
Blog (http://openstack.org/blog/)
News (http://openstack.org/news/)

Community
User Groups (http://openstack.org/community/)
Events (http://openstack.org/community/events/)
Jobs (http://openstack.org/community/jobs/)
Companies (http://openstack.org/foundation/companies/)
Contribute (http://docs.openstack.org/infra/manual/developers.html)

Documentation
OpenStack Manuals (http://docs.openstack.org)
Getting Started (http://openstack.org/software/start/)
API Documentation (http://developer.openstack.org)
Wiki (https://wiki.openstack.org)

https://docs.openstack.org/nova/latest/user/architecture.html 3/3

You might also like