OpenStack Overview
Rajdeep Dua
April 2014
Twitter : @rajdeepdua
What is OpenStack
Provide scalable, elastic cloud
computing for both public and
private clouds, large and small
Defining OpenStack
• OpenStack is a virtualization platform
which abstracts out Compute, Storage and
Networking from the u...
OpenStack Github Activity
Trends : OpenStack vs Other Open
Source Cloud Projects
Source : Google trends
OpenStack has won the
Open Source battle
OpenStack Deployments : 2013
Source OpenStack survey Oct 2013
Top 10 countries
13
14
23
24
24
25
39
57
63
336
IT
BR
DE
AU
...
Finance 1%
Healthcare 1%
Retail 1%
Manufacturing/Indu
2%
Government / Defen
Film/Media 3%
Unspecified 3%
Other 6%
Telecomm...
Business Drivers for Adopting
OpenStack
4
48
52
65
86
87
95
95
95
98
Other
Attracting talent
Control
Time to market
Abilit...
OpenStack Components
OpenStack - Components
Component Component Function Definition
Nova Compute Provides virtual servers on demand
Glance Imag...
OpenStack Components..
OpenStack – Compute
Nova
OpenStack – Compute
• Tool to orchestrate cloud.
• Main Functions
– Manage running instances
– Manage access to the cloud ...
OpenStack Computes
• Hypervisors Supported
Hypervisor
KVM Kernel Virtual Machine
Xen Based on Citrix Xen Server
vSphere 4....
Nova Architecture
• Nova is architected as a distributed application with many components
• Majority of these are custom-w...
Nova Architecture – Service to
Manager Mapping
• Each Service has an associated Manager class which
manages the API calls ...
Nova Runtime Components
Nova - API Service
• API Service is the entry point for all the REST
service requests
• The API endpoints are basic http R...
Nova – RPC Communication
• API uses RPC Messaging to communicate with
various services like Compute, Conductor,
Scheduler
...
Service Workers
• Every Service is associated with one or more
workers.
• Each worker is spawned in a separate process
and...
Nova Scheduler
• Component responsible for scheduling a VM
provisioning call on one the hosts
• It can choose from multipl...
Drivers for Virtualization
• Base class for all the driver implementations is
nova.virt.compute.ComputeDriver
• All the dr...
Driver for KVM
Driver for ESXi and vCenter
Neutron
What is Neutron
• Networking service to virtualize Network
Management
• Neutron is to networking what Nova for
Compute
Why Neutron
• Enterprise Networks are complex
• Traditional Open Stack Networking has
limitations
• New Concepts like SDN ...
Limitations of Nova-Network
• Single VLAN for all the VMs
• Limited by the number of
VLANs which can be
created – 4096
• L...
Neutron
• Provides tools and control for Enterprise class
Networking
– Services Firewalls, Load Balancers, Virtual Routers...
Challenges from Cloud on Networking
• Massive Scale
• Cost Effective
• Vendor Agnostic
• Dynamic and programmatic configur...
Neutron Basics
• Provides API for configuration of Virtual
Networks and connecting VMs
• Connect Virtual and Physical Swit...
Neutron Principles
• Implementation Abstraction : Networking
implementation at Physical level is abstracted
• Association ...
Neutron API Abstractions
• Network
• Subnet
• Ports
• Routers
Network-Subnet-port
Neutron Components
Neutron Components – neutron
daemon
• Neutron daemon
exposes the REST APIs
for Nova and Horizon
interaction
• Passes on th...
Neutron Components – neutron
daemon
• Neutron daemon
exposes the REST APIs
for Nova and Horizon
interaction
• Passes on th...
Neutron Components –
l3 agent and l3 metering agent
• L3 agent : Provides L3/NAT
forwarding to provide
external network ac...
Neutron Components –
l3 agent and l3 metering agent
• plugin-in agent : Runs on
each hypervisor to perform
local vswitch c...
Neutron Create a VM Flow
Plugin Architecture
• Allows Network/Port abstraction with multiple
implementations
– Process All API Calls and pass them ...
Neutron– Pluggin Architecture
Neutron-Plugin-Nova Interaction
Neutron Plugins
• Open Source plugins based on OpenVSwitch
and Linux bridge – hardware Independent
• Vendors plugins
– NSX...
Example SDN : OpenDay Light
OpenDaylight
• OpenDaylight is an Open Source Software project
under the Linux Foundation with the goal of
furthering the ...
OpenDaylight Framework
Example – vSphere and NSX
Integration with OpenStack
Key Takeaways
• Open Stack is a SDN agnostic and Hypervisor
Agnostic Open Source Framework
• Open Source also brings its o...
Openstack Overview
Prochain SlideShare
Chargement dans…5
×

Openstack Overview

1 964 vues

Publié le

This presentation covers overview of OpenStack and its components. We also briefly discuss

Publié dans : Technologie
1 commentaire
16 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
1 964
Sur SlideShare
0
Issues des intégrations
0
Intégrations
34
Actions
Partages
0
Téléchargements
0
Commentaires
1
J’aime
16
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Openstack Overview

  1. 1. OpenStack Overview Rajdeep Dua April 2014 Twitter : @rajdeepdua
  2. 2. What is OpenStack Provide scalable, elastic cloud computing for both public and private clouds, large and small
  3. 3. Defining OpenStack • OpenStack is a virtualization platform which abstracts out Compute, Storage and Networking from the underlying Hardware • All the components are managed through a central Dashboard
  4. 4. OpenStack Github Activity
  5. 5. Trends : OpenStack vs Other Open Source Cloud Projects Source : Google trends OpenStack has won the Open Source battle
  6. 6. OpenStack Deployments : 2013 Source OpenStack survey Oct 2013 Top 10 countries 13 14 23 24 24 25 39 57 63 336 IT BR DE AU GB CA FR CN IN US
  7. 7. Finance 1% Healthcare 1% Retail 1% Manufacturing/Indu 2% Government / Defen Film/Media 3% Unspecified 3% Other 6% Telecommunications 7%Academic / Research 11% Information Technology 63% Other 19% Industries 1-20 employees 26% 21-100 employees 16% 101 to 500 employees 14% 501 to 1,000 employees 5% 1,001 to 5,000 employees 10% 5,001 to 10,000 employees 8% More than 10,000 employees 21% Organization size
  8. 8. Business Drivers for Adopting OpenStack 4 48 52 65 86 87 95 95 95 98 Other Attracting talent Control Time to market Ability to innovate, compete Flexibility of underlying technology… Avoiding vendor lock-in Open technology Operational efficiency Cost savings Source OpenStack survey Oct 2013
  9. 9. OpenStack Components
  10. 10. OpenStack - Components Component Component Function Definition Nova Compute Provides virtual servers on demand Glance Image Service Provides a catalog of images used to create VMs Swift Object Storage Provides Object Storage Horizon Web based UI Provides a way to interact with other OpenStack services Neutron Networking Service Provides Network as a Service Cinder Block Storage Service Provides Block Storage Service for guest VMs Keystone Identity Services Provides Authorization and Authentication services for Ceilometer Monitoring Service Collects metrics from various Open Stack Components
  11. 11. OpenStack Components..
  12. 12. OpenStack – Compute Nova
  13. 13. OpenStack – Compute • Tool to orchestrate cloud. • Main Functions – Manage running instances – Manage access to the cloud through users and tenants • OpenStack compute relies in the underlying hypervisors to spawn actual instances
  14. 14. OpenStack Computes • Hypervisors Supported Hypervisor KVM Kernel Virtual Machine Xen Based on Citrix Xen Server vSphere 4.1, 5.1 VMWare’s hypervisor QEMU Quick Emulator LXC Linux Containers : User Control Packages for Linux Containers
  15. 15. Nova Architecture • Nova is architected as a distributed application with many components • Majority of these are custom-written Python daemons of two varieties: – API Service : Web Server Gateway Interface (WSGI)* applications to receive and mediate API calls – nova-compute : Nova Compute Service – nova-volume : Nova Volume Service – nova-network : Nova Network service which connects to Neutron – nova-cert : Manages the x509 certificates – nova-scheduler : Scheduler to choose the host to run instances on – nova-conductor : Updates DB on behalf of other APIs like network, volumes etc
  16. 16. Nova Architecture – Service to Manager Mapping • Each Service has an associated Manager class which manages the API calls to the underlying implementation – API Service : – nova-compute : nova.compute.ComputeManager – nova-volume : nova.volume.VolumeManager – nova-network : nova.network.NetworkManager – nova-cert : nova.cert.CertManager – nova-scheduler : nova.scheduler.SchedulerManager – nova-conductor : nova.conductor.CondutorManager
  17. 17. Nova Runtime Components
  18. 18. Nova - API Service • API Service is the entry point for all the REST service requests • The API endpoints are basic http REST which handle authentication, authorization, and basic command and control functions using various API interfaces • Forwards the API requests to ComputeManager and Scheduler.
  19. 19. Nova – RPC Communication • API uses RPC Messaging to communicate with various services like Compute, Conductor, Scheduler • RPC is currently implemented using AMPQ messaging
  20. 20. Service Workers • Every Service is associated with one or more workers. • Each worker is spawned in a separate process and helps in scaling out the associated service
  21. 21. Nova Scheduler • Component responsible for scheduling a VM provisioning call on one the hosts • It can choose from multiple algorithms to choose the host. • Example of some of these algorithms
  22. 22. Drivers for Virtualization • Base class for all the driver implementations is nova.virt.compute.ComputeDriver • All the drivers extend this class for implementing the functionality
  23. 23. Driver for KVM
  24. 24. Driver for ESXi and vCenter
  25. 25. Neutron
  26. 26. What is Neutron • Networking service to virtualize Network Management • Neutron is to networking what Nova for Compute
  27. 27. Why Neutron • Enterprise Networks are complex • Traditional Open Stack Networking has limitations • New Concepts like SDN and Tunneling protocols need a more extendible model
  28. 28. Limitations of Nova-Network • Single VLAN for all the VMs • Limited by the number of VLANs which can be created – 4096 • Little or No Control
  29. 29. Neutron • Provides tools and control for Enterprise class Networking – Services Firewalls, Load Balancers, Virtual Routers • Provide APIs to build advanced network Configurations
  30. 30. Challenges from Cloud on Networking • Massive Scale • Cost Effective • Vendor Agnostic • Dynamic and programmatic configuration
  31. 31. Neutron Basics • Provides API for configuration of Virtual Networks and connecting VMs • Connect Virtual and Physical Switches • Provide Pluggin mechanism for different control components.
  32. 32. Neutron Principles • Implementation Abstraction : Networking implementation at Physical level is abstracted • Association of an Interface with a Network is an explicit step • Plugins can expose extensions from the core APIs
  33. 33. Neutron API Abstractions • Network • Subnet • Ports • Routers
  34. 34. Network-Subnet-port
  35. 35. Neutron Components
  36. 36. Neutron Components – neutron daemon • Neutron daemon exposes the REST APIs for Nova and Horizon interaction • Passes on the messages to the agents running on Neutron Service Host as well as Nova Compute
  37. 37. Neutron Components – neutron daemon • Neutron daemon exposes the REST APIs for Nova and Horizon interaction • Passes on the messages to the agents running on Neutron Service Host as well as Nova Compute
  38. 38. Neutron Components – l3 agent and l3 metering agent • L3 agent : Provides L3/NAT forwarding to provide external network access for VMs on tenant networks. Some plug-ins use this agent. • L3 metering Agent : Provides L3 traffic measurements for tenant networks. • Run on the main Neutron Service
  39. 39. Neutron Components – l3 agent and l3 metering agent • plugin-in agent : Runs on each hypervisor to perform local vswitch configuration. The agent that runs depends on the plug-in that you use, and some plug-ins do not require an agent. • dhcp agent: Provides DHCP services to tenant networks. • Run on each Nova Compute Node
  40. 40. Neutron Create a VM Flow
  41. 41. Plugin Architecture • Allows Network/Port abstraction with multiple implementations – Process All API Calls and pass them to the underlying Physical Layer – Manage Virtual Switches – Triggered by Nova interfaces being attached to a network
  42. 42. Neutron– Pluggin Architecture
  43. 43. Neutron-Plugin-Nova Interaction
  44. 44. Neutron Plugins • Open Source plugins based on OpenVSwitch and Linux bridge – hardware Independent • Vendors plugins – NSX (VMware) – Big Switch Networks – Floodlight – Open Daylight Controller – Cisco – Brocade
  45. 45. Example SDN : OpenDay Light
  46. 46. OpenDaylight • OpenDaylight is an Open Source Software project under the Linux Foundation with the goal of furthering the adoption and innovation of Software Defined Networking (SDN) through the creation of a common industry supported platform
  47. 47. OpenDaylight Framework
  48. 48. Example – vSphere and NSX Integration with OpenStack
  49. 49. Key Takeaways • Open Stack is a SDN agnostic and Hypervisor Agnostic Open Source Framework • Open Source also brings its own challenges to the product in terms of complexity • Lot of value added services being built around OpenStack – Trove, Savanna, Solum, Congress

×