Tuesday, November 4, 2014

OpenStack Series: Part 4 – Nova – Compute Service

Nova is the module that handles the management of virtual machine instances in the OpenStack infrastructure by being an abstraction layer that interfaces with supported hypervisors

A list of supported hypervisors for Nova can be found here.  Supported hypervisor includes the KVM (libvirt/QEMU), ESXi from VMware, Hyper-V from Microsoft and XenServer.  It is interested to know that Nova categorize the hypervisors into 3 groups based on the number of testing done with the drivers that interface with the hypervisor.

Group A

These drivers are fully supported. Test coverage includes:
  • unit tests that gate commits
  • functional testing that gate commits
Drivers in this group include:
  • libvirt (qemu/KVM on x86)

Group B

These drivers are in a bit of a middle ground. Test coverage includes:
  • unit tests that gate commits
  • functional testing providing by an external system that does not gate commits, but advises patch authors and reviewers of results in gerrit (the code review system).
Drivers in this group include:
  • Hyper-V
  • VMware
  • XenServer 6.2

Group C


These drivers have minimal testing and may or may not work at any given time. Use them at your own risk. Test coverage includes:
  • (maybe) unit tests that gate commits
  • no public functional testing
Drivers in this group include.
  • baremetal
  • docker          <- I believe due to popularity, Docker is coming back in Kilo.
  • Xen via libvirt
  • LXC via libvirt
NOTE: Drivers in Group C will be deprecated by the Icehouse release. See DeprecationPlan for details.

I think the hypervisor technology is the most matured for VMware's ESXi/vCenter Server.  However, user has to pay licensing fee.  On the other hand, KVM is free with Linux and is becoming more and more "enterprise ready".  Of course if we compare the feature between VMware, KVM the number will favor ESXi.  We have to take into consideration that not all the features are necessary for most enterprise requirement and user will have to decide which hypervisor has the best ROI (Return on Investment).

The Nova Developer Guide has a good description of the sub-components that make up of Nova services: 
Nova consists of seven main components, with the
  1. Cloud Controller component representing the global state and interacting with all other components.
  2. API Server acts as the Web services front end for the cloud controller.
  3. Compute Controller provides compute server resources,
  4. Object Store component provides storage services.
  5. Auth Manager provides authentication and authorization services.
  6. Volume Controller provides fast and permanent block-level storage for the compute servers.
  7. Network Controller provides virtual networks to enable compute servers to interact with each other and with the public network.
Scheduler selects the most suitable compute controller to host an instance.

This diagram shows the inter-relationship of the different Nova components.


image source: http://docs.openstack.org/developer/nova/_images/Novadiagram.png

Please note that Message Queue and back-end database are also vital to the operation of Nova.

For Message Queue, it can be any AMPQ message queue but the more popular ones used by OpenStack are RabbitMQ, Apache Qpid (used by Red Hat OpenStack) and ZeroMQ.

For back-end database, the popular used in OpenStack are sqlite3, MySQL or PostgreSQL.

An article by Ken Pepple describes Nova very well in three sentences along with a diagram:
This complicated, but not overly informative, diagram as it can be summed up in three sentences:
  • End users (DevOps, Developers and even other OpenStack components) talk to nova-api to interface with OpenStack Nova
  • OpenStack Nova daemons exchange info through the queue (actions) and database (information) to carry out API requests
  • OpenStack Glance is basically a completely separate infrastructure which OpenStack Nova interfaces through the Glance API
- See more at: http://ken.pepple.info/openstack/2011/04/22/openstack-nova-architecture/#sthash.I0qjs82T.dpuf

  • End users (DevOps, Developers and even other OpenStack components) talk to nova-api to interface with OpenStack Nova
  • OpenStack Nova daemons exchange info through the queue (actions) and database (information) to carry out API requests
  • OpenStack Glance is basically a completely separate infrastructure which OpenStack Nova interfaces through the Glance API


image source: http://ken.pepple.info/openstack/2011/04/22/openstack-nova-architecture/

Nova-networking is still being use in some use cases.  User can choice between using nova-networking or Neutron.

This is only an brief introduction for OpenStack Nova.  There are a lot more in OpenStack Nova that we can look into and I will share more on this topic in the coming days.



Related Post:
OpenStack Series:Part 1  How do you look at OpenStack?
OpenStack Series:Part 2  What’s new in the Juno Release
OpenStack Series:Part 3  Keystone – Identity Service
OpenStack Series: Part 5  Glance - Image Service
OpenStack Series: Part 6  Cinder - Block Storage Service
OpenStack Series: Part 7  Swift - Object Storage Service
OpenStack Series: Part 8  Neutron - Networking Service
OpenStack Series: Part 9  Horizon - a web based UI Service
OpenStack Series: Part 10 Heat - Orchestration Service
OpenStack Series: Part 11 Ceilometer - Monitoring and Metering Service
OpenStack Series: Part 12 Trove - Database Service
OpenStack Series: Part 13 Docker in OpenStack
OpenStack Series: Part 14 Sahara - Data Processing Service
OpenStack Series: part 15 Messaging and Queuing System in OpenStack
OpenStack Series: Part 16 Ceph in OpenStack
OpenStack Series: Part 17 Congress - Policy Service
OpenStack Series: Part 18 Network Function Virtualization in OpenStack
OpenStack Series: Part 19 Storage Polices for Object Storage
OpenStack Series: Part 20 Group-based Policy for Neutron
Reference:
"HypervisorSupportMatrix." - OpenStack. N.p., n.d. Web. 04 Nov. 2014.
"Nova Concepts and Introduction¶." Nova Concepts and Introduction — Nova 2012.1.2-dev Documentation. N.p., n.d. Web. 04 Nov. 2014.
"Ken Pepple." OpenStack Nova Architecture. N.p., n.d. Web. 04 Nov. 2014.

74 comments:

  1. I am searching for list hypervisor that OpenStack support. I found all answers in this blog regarding OpenStack hypervisor support and all other important information. Thanks for sharing

    ReplyDelete
    Replies

    1. Great Article. Thank you for sharing! Really an awesome post for every one.

      IEEE Final Year projects Project Centers in India are consistently sought after. Final Year Students Projects take a shot at them to improve their aptitudes, while specialists like the enjoyment in interfering with innovation. For experts, it's an alternate ball game through and through. Smaller than expected IEEE Final Year project centers ground for all fragments of CSE & IT engineers hoping to assemble. Final Year Projects for CSE It gives you tips and rules that is progressively critical to consider while choosing any final year project point.

      JavaScript Online Training in India

      JavaScript Training in India

      The Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

      Delete
  2. Quantum Binary Signals

    Professional trading signals sent to your cell phone every day.

    Start following our trades today & gain up to 270% a day.

    ReplyDelete
  3. BlueHost is definitely the best web-hosting provider with plans for all of your hosting requirements.

    ReplyDelete
  4. This comment has been removed by the author.

    ReplyDelete
  5. Thank you for your thoughts.. its very useful to update my knoeledge DevOps training in chennai

    ReplyDelete
  6. Thanks for your sharing such a useful information. this was really helpful to me

    zhosters
    Education

    ReplyDelete
  7. Great!it is really nice blog information.after a long time i have grow through such kind of ideas.thanks for share your thoughts with us.
    vmware training institutes in bangalore
    vmware training
    vmware Courses in T nagar
    vmware Training Institutes in T nagar

    ReplyDelete
  8. This information is impressive; I am inspired by your post writing style & how continuously you describe this topic. After reading your post, thanks for taking the time to discuss this, I feel happy about it and I love learning more about this topic.

    best openstack training in chennai | openstack course fees in chennai | openstack certification in chennai | redhat openstack training in chennai

    ReplyDelete
  9. This is a good post. This post give truly quality information. I’m definitely going to look into it. Really very useful tips are provided here. thank you so much. Keep up the good works.
    Best Android Training in Chennai
    Android Course in Chennai with placement
    Android Training Center in Chennai
    Aws Certification in Chennai
    Amazon Web Services Training in Chennai
    AWS Training centers in Chennai

    ReplyDelete
  10. This is really too useful and have more ideas and keep sharing many techniques. Eagerly waiting for your new blog keep doing more.
    Regards,
    Tableau training in Chennai | Tableau Courses Training in Chennai | Tableau training Institute in Chennai

    ReplyDelete
  11. Very Informative blog...Glad to find your blog...Keep Sharing...
    Testing & Training on Selenium

    ReplyDelete
  12. This comment has been removed by the author.

    ReplyDelete
  13. Pretty article! I found some useful information in your blog....

    so here we provide,

    We provide you with flexible services and complete hybrid network solutions. It can provide your organisation with exceptional data speeds, advanced external security protection, and high-resilience by leveraging the latest SD-WAN and networking technologies to monitor, manage and strengthening your organisation’s existing network devices.

    https://www.quadsel.in/networking/>
    https://twitter.com/quadsel/
    https://www.linkedin.com/company/quadsel-systems-private-limited/
    https://www.facebook.com/quadselsystems/

    #quadsel #network #security #technologies #managedservices #Infrastructure #Networking #OnsiteResources #ServiceDeskSupport #StorageServices #WarrantyAMCServices #datacentersolutions #DataCenterBuild #EWaste #InfraConsolidation #DisasterRecovery #NetworkingServices #ImagingServices #MPS #Consulting #WANOptimisation #enduserservices

    ReplyDelete
  14. I have gone through your blog, it was very much useful for me and because of your blog, and also I gained many unknown information, the way you have clearly explained is really fantastic. Kindly post more like this, Thank You. thanksa lot guys
    Ai & Artificial Intelligence Course in Chennai
    PHP Training in Chennai
    Ethical Hacking Course in Chennai Blue Prism Training in Chennai
    UiPath Training in Chennai

    ReplyDelete
  15. Thank you for sharing such a nice and interesting blog with us. oracle training in chennai

    ReplyDelete
  16. Great Article. Thank you for sharing! Really an awesome post for every one.

    IEEE Final Year projects Project Centers in India are consistently sought after. Final Year Students Projects take a shot at them to improve their aptitudes, while specialists like the enjoyment in interfering with innovation. For experts, it's an alternate ball game through and through. Smaller than expected IEEE Final Year project centers ground for all fragments of CSE & IT engineers hoping to assemble. Final Year Projects for CSE It gives you tips and rules that is progressively critical to consider while choosing any final year project point.

    JavaScript Online Training in India

    JavaScript Training in India

    The Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

    ReplyDelete
  17. Thank you for your fantastic article for DevOps. Plenty of useful information here. I learn more things from this website.
    DevOps Training in Chennai

    DevOps Course in Chennai

    ReplyDelete
  18. I believe there are many more pleasurable opportunities ahead for individuals that looked at your site. Primavera p6 Training Online | Primavera Training Chennai

    ReplyDelete