Successfully reported this slideshow.
Your SlideShare is downloading. ×

Nova Componets

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 33 Ad

More Related Content

Slideshows for you (20)

Similar to Nova Componets (20)

Advertisement

Recently uploaded (20)

Nova Componets

  1. 1. Nova components
  2. 2. Installations # yum install nova-api nova-cert nova-conductor nova-consoleauth nova-novncproxy nova-scheduler python-novaclient # yum install nova-compute On Controller Node On Compute Node
  3. 3. Components nova-novncproxy nova-cert nova-consoleauth nova-network nova-api-metadata nova-api nova-conductor nova-scheduler nova-computequeue database
  4. 4. Components nova-novncproxy nova-cert nova-consoleauth nova-network nova-api-metadata nova-api nova-conductor nova-scheduler nova-computequeue database
  5. 5. Components nova-novncproxy nova-cert nova-consoleauth nova-network nova-api-metadata Neutron nova-api nova-conductor nova-scheduler nova-computequeue database
  6. 6. Components nova-novncproxy nova-cert nova-consoleauth nova-api nova-conductor nova-scheduler nova-computequeue database
  7. 7. Components nova-api nova-conductor nova-scheduler nova-computequeue database
  8. 8. Nova and External Services
  9. 9. Components > nova-api nova-api nova-conductor nova-scheduler nova-computequeue database HTTP Web Service! Accepts & Responds to User’s Compute API calls Supports OpenStack Compute API, Amazon EC2 API, Admin API. Initiates Orchestration Activities. POST /v2/{tenant_id}/servers/{server_id}/action
  10. 10. Components > nova-api POST /v2/{tenant_id}/servers Request Body { "server": { "name": "server-test-1", "imageRef": "b5660a6e-4b46-4be3-9707-6b47221b454f", "flavorRef": "2", "max_count": 1, "min_count": 1, "networks": [ { "uuid": "d32019d3-bc6e-4319-9c1d-6722fc136a22" } ], "security_groups": [ { "name": "default" }, { "name": "another-secgroup-name" } ] } } 202 Accepted Response Body {
  11. 11. Components > nova-conductor nova-api nova-conductor nova-scheduler nova-computequeue database Database Proxy! Acting as an intermediary between the compute node and the database node and the database.
  12. 12. Components > nova-conductor Why? Auditing database operations, revoking access privileges. That’s Difficult! They host tenant instances. Compute nodes are the least trusted of the services in OpenStack.
  13. 13. Components > nova-conductor They strongly recommends Be isolated to a management network, Use SSL, Create unique user accounts per service endpoint.
  14. 14. Restrict services to executing with parameters, … Prevent directly accessing or modifying. Unfortunately, it complicates fine-grained access control and audit data access. Because, it Focus on improving Security, effectively modifying. Components > nova-conductor -> Compute nodes are the least trusted of the services in OpenStack. Because they host tenant instances. -> Do not deploy it on Compute Nodes.
  15. 15. Components > nova-conductor nova-api nova-conductor nova-scheduler nova-computequeue database push pop push pop
  16. 16. Components > nova-scheduler nova-api nova-conductor nova-scheduler nova-computequeue database Scheduler! Takes VM requests from the queue. Determine on which compute node host it.
  17. 17. Components > nova-scheduler nova-api nova-conductor nova-scheduler queue mysql nova-compute1 nova-compute2 nova-compute3 NEW Instance Instance B takes determines Create Instance
  18. 18. nova-scheduler  Takes a VM instance and determine where it should run (on which host).  2 step process
  19. 19. nova-scheduler • FilterScheduler is a default scheduler – Supports filtering and weighting
  20. 20. • Filtering – RetryFilter • Prevents the scheduler from selecting the host that fails to respond. – AvailablilityZoneFilter • Filters hosts by availability zone. – RamFilter • Select hosts that have sufficient RAM. • Can overcommitment by configuration. – ComputeFilter • Passes all hosts that are operational and enabled. nova-scheduler > filter scheduler
  21. 21. – ComputeCapabilitiesFilter • Satisfy the extra specs associated with the instance type. – ImagePropertiesFilter • Filters hosts based on properties defined on the instance's image. nova-scheduler > filter scheduler
  22. 22. RAM-Filter
  23. 23. Availability Zone-Filter
  24. 24. Compute-Filter
  25. 25. Weighing ●Scheduler applies cost functions on each host and calculates the weight. ●The least weighted host wins.
  26. 26. • Weighing – Each time the scheduler selects a host and subsequent selections are adjusted accordingly. – Virtually consumes resources. nova-scheduler > filter scheduler
  27. 27. In the end... ●The scheduler manager sends an rpc call to the compute manager of selected hosts. ●The compute manager receives it from the queue and runs its create_instance method and we get a running VM instance.
  28. 28. Components > nova-compute nova-api nova-conductor nova-scheduler nova-computequeue database Worker Daemon! Creates and terminates VMs through hypervisor APIs, such as Xen, QEMU, KVM, Vmware, ….
  29. 29. It Supports multiple hypervisors. Because, it Has an abstraction layer, Driver. Components > nova-compute nova-compute Compute Agent (KVM) libvirt KVM VM VM nova-compute Compute Agent (Hyper-v) Hyper-v VM VM nova-scheduler nova-compute Abstraction layer, Driver any hypervisor VM VM
  30. 30. Components > nova-compute nova-api nova-conductor nova-scheduler nova-compute queue database hypervisor VM VM launch
  31. 31. Hypervisor Types • Type-1: bare metal hypervisor • Type-2: hosted hypervisor nova-compute > hypervisors
  32. 32. • Ironic – OpenStack Component for managing and provisioning Bare Metal servers. – Not VMs. – Makes physical servers as easy to provision as VMs in cloud. nova-compute > hypervisors
  33. 33. Components > nova-compute keystone Glance Neutron Cinder Horizon or CLI 4 5 3 1 2 In more detail… Provisioning Instance

×