2
A Quick Technical Overview
Tom Fifield
tom@openstack.org
@Tom Fifield
3
Special Thanks to:
Lorin Hochstein
Nimbis Services
lorin@nimbisservices.com
@lhochstein
4
A Motivating Example
What is OpenStack?
6
OpenStack provides access to compute, networking and
storage
7
Access compute resources
Start 5 servers, each with:
• 2 CPUs
• 4 GB of RAM
• 20 GB of storage
User Suspend
server "X"
S...
8
Access networking resources
Create private network with
subnet 10.2.12.0/24
User
Attach IP address
203.0.113.19 to serve...
9
Access block storage resources, 

which attach to servers like disks
Create a 100 GB data
volume and attach it to
server...
10
Access object storage resources, which are accessed
over HTTP
Store file family.png in
container "photos"
User
Make file ...
11
OpenStack includes a web-based Dashboard service
12
Make requests with command-line tools or REST API
$ nova boot --image precise --flavor m1.small
myinstance	
Client
HTTP...
13
Also... Python bindings!
import novaclient.v1_1.client as nvclient
creds = ...
nova = nvclient.Client(**creds)
image = ...
14
ECOSYSTEMSIZE

(Members+Sponsors+Supporters)
CUMULATIVE 

CONTRIBUTORS
AVERAGE MONTHLY 

CONTRIBUTORS
PATCHES

MERGED
1...
15
To Name Just a Few…
…and counting.
What does the architecture look like?
17
System is a collection of RESTful web services
18
Compute service manages VMs on compute nodes
19
Image provides a catalog of virtual machine images
20
Identity handles authentication and service catalog
21
Network service manages connectivity for VMs
22
Block storage manages block devices that attach to VMs
23
Object storage manages binary objects accessed via HTTP
24
Dashboard service provides web interface
Let’s look at an example.
26
Alice is a web developer who needs an Ubuntu server to
deploy her app for testing
27
Start a server using the ‘ubuntu12.04’ image and attach
it to network ‘mynet’
28
1. Get the compute endpoint and an auth token
29
2. Start a new compute server
30
3. Download the ubuntu12.04 image
31
4. Retrieve the image from the object store
32
5. Determine how to connect the VM to ‘mynet’
33
6. Start the virtual machine
34
Alice sees that her server is now running and connects
to it via ssh.
… but how does that work?
36
Each OpenStack service is implemented as Linux
daemons 
Example: 	

Compute Service
37
Daemons use non-blocking I/O with eventlet to handle
multiple requests
OpenStack
daemon
Eventlet
38
Daemons maintain persistent state using an SQL
database via SQLAlchemy
OpenStack
daemon
SQLAlchemy
39
Daemons communicate using remote procedure call
over message queue
OpenStack
daemon
kombu
eventlet.
green.
zmq
qpid
mes...
40
Let’s go back to the earlier example
41
“Start a new compute server” request comes in to the
nova-api daemon
42
Ask nova-scheduler to find a compute node that can
fulfill the request
43
Dispatch the request to nova-compute on a node that
has enough resources
44
Download the image from the Image service
45
Get network connection info from Networking service
46
Ask the hypervisor to start the virtual machine
So, what is OpenStack?
48
49
Customisation
‣  OpenStack doesn’t quite do what you need?
‣  Add it, but contribute back if possible
‣  Many things ar...
50
Interacting with the Community
‣  All development is open
‣  Etherpad → Blueprint → Coded → Reviewed → Released
‣  Coll...
51
Interacting with the Community
l  Ask OpenStack! (http://ask.openstack.org/)
l  https://wiki.openstack.org/wiki/Mailing...
52
See you in Hong Kong
November 5-8, register now!


λ openstack.org/summit	

Design Sessions: not a classic track with s...
Thank you for 

supporting OpenStack
Tom Fifield
tom@openstack.org
@Tom Fifield
Ask Questions at ask.openstack.org
"OpenStack — more than just software". Tom Fifield, OpenStack
Upcoming SlideShare
Loading in …5
×

"OpenStack — more than just software". Tom Fifield, OpenStack

3,450 views

Published on

OpenStack is much more than a Cloud Technology platform. It's also a thriving ecosystem of companies, and a fast-moving open source project. These three forces are accelerating one of the biggest changes to IT infrastructure we've seen. Dell, HP, IBM, Intel, Red Hat and two hundred others of the largest IT names in the world are already on board.

Do you like saving money on IT infrastructure? Or coding cool large-scale systems? Or automating systems to make your job easier? Come and learn about this fantastic piece of software and its community. One last point that might interest you - there's strong demand internationally for OpenStack engineers.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,450
On SlideShare
0
From Embeds
0
Number of Embeds
2,929
Actions
Shares
0
Downloads
19
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

"OpenStack — more than just software". Tom Fifield, OpenStack

  1. 1. 2 A Quick Technical Overview Tom Fifield tom@openstack.org @Tom Fifield
  2. 2. 3 Special Thanks to: Lorin Hochstein Nimbis Services lorin@nimbisservices.com @lhochstein
  3. 3. 4 A Motivating Example
  4. 4. What is OpenStack?
  5. 5. 6 OpenStack provides access to compute, networking and storage
  6. 6. 7 Access compute resources Start 5 servers, each with: • 2 CPUs • 4 GB of RAM • 20 GB of storage User Suspend server "X" Snapshot server "X"
  7. 7. 8 Access networking resources Create private network with subnet 10.2.12.0/24 User Attach IP address 203.0.113.19 to server "X" Allow access to ports 80 and 443 for the "web" group
  8. 8. 9 Access block storage resources, 
 which attach to servers like disks Create a 100 GB data volume and attach it to server "X" User Take a snapshot of volume "Q"
  9. 9. 10 Access object storage resources, which are accessed over HTTP Store file family.png in container "photos" User Make file logo.png in container "acme" visible to everyone
  10. 10. 11 OpenStack includes a web-based Dashboard service
  11. 11. 12 Make requests with command-line tools or REST API $ nova boot --image precise --flavor m1.small myinstance Client HTTP POST /servers { "server": { "imageRef": ... "flavorRef": ... "name": "myinstance", } }
  12. 12. 13 Also... Python bindings! import novaclient.v1_1.client as nvclient creds = ... nova = nvclient.Client(**creds) image = nova.images.find(name="precise") flavor = nova.flavors.find(name="m1.small") nova.servers.create(image=image, flavor=flavor, name="myinstance")
  13. 13. 14 ECOSYSTEMSIZE
 (Members+Sponsors+Supporters) CUMULATIVE 
 CONTRIBUTORS AVERAGE MONTHLY 
 CONTRIBUTORS PATCHES
 MERGED 1017 230 7,260 (Grizzly Release Cycle – Six Months) 230
Companies TOP 10 Countries 1) United States
 2) China
 3) India
 4) Great Britain
 5) Australia 12,154 6) France
 7) Russia
 8) Canada
 9) Ireland
 10) Germany INDIVIDUAL MEMBERS Project is very active with many contributors Data from May 2013
  14. 14. 15 To Name Just a Few… …and counting.
  15. 15. What does the architecture look like?
  16. 16. 17 System is a collection of RESTful web services
  17. 17. 18 Compute service manages VMs on compute nodes
  18. 18. 19 Image provides a catalog of virtual machine images
  19. 19. 20 Identity handles authentication and service catalog
  20. 20. 21 Network service manages connectivity for VMs
  21. 21. 22 Block storage manages block devices that attach to VMs
  22. 22. 23 Object storage manages binary objects accessed via HTTP
  23. 23. 24 Dashboard service provides web interface
  24. 24. Let’s look at an example.
  25. 25. 26 Alice is a web developer who needs an Ubuntu server to deploy her app for testing
  26. 26. 27 Start a server using the ‘ubuntu12.04’ image and attach it to network ‘mynet’
  27. 27. 28 1. Get the compute endpoint and an auth token
  28. 28. 29 2. Start a new compute server
  29. 29. 30 3. Download the ubuntu12.04 image
  30. 30. 31 4. Retrieve the image from the object store
  31. 31. 32 5. Determine how to connect the VM to ‘mynet’
  32. 32. 33 6. Start the virtual machine
  33. 33. 34 Alice sees that her server is now running and connects to it via ssh.
  34. 34. … but how does that work?
  35. 35. 36 Each OpenStack service is implemented as Linux daemons Example: Compute Service
  36. 36. 37 Daemons use non-blocking I/O with eventlet to handle multiple requests OpenStack daemon Eventlet
  37. 37. 38 Daemons maintain persistent state using an SQL database via SQLAlchemy OpenStack daemon SQLAlchemy
  38. 38. 39 Daemons communicate using remote procedure call over message queue OpenStack daemon kombu eventlet. green. zmq qpid message queue
  39. 39. 40 Let’s go back to the earlier example
  40. 40. 41 “Start a new compute server” request comes in to the nova-api daemon
  41. 41. 42 Ask nova-scheduler to find a compute node that can fulfill the request
  42. 42. 43 Dispatch the request to nova-compute on a node that has enough resources
  43. 43. 44 Download the image from the Image service
  44. 44. 45 Get network connection info from Networking service
  45. 45. 46 Ask the hypervisor to start the virtual machine
  46. 46. So, what is OpenStack?
  47. 47. 48
  48. 48. 49 Customisation ‣  OpenStack doesn’t quite do what you need? ‣  Add it, but contribute back if possible ‣  Many things are pluggable ‣  Eg Object Storage Middleware Pipeline ‣  Eg Compute Scheduler ‣  Eg Dashboard ‣  Get a DevStack running and play!
  49. 49. 50 Interacting with the Community ‣  All development is open ‣  Etherpad → Blueprint → Coded → Reviewed → Released ‣  Collaboratively design features ‣  Competitors working together ‣  Every line of code reviewed by at least two people ‣  An extensive continuous integration and testing infrastructure Documentation, Translation, Infrastructure is all Collaborative
  50. 50. 51 Interacting with the Community l  Ask OpenStack! (http://ask.openstack.org/) l  https://wiki.openstack.org/wiki/MailingLists l  https://wiki.openstack.org/IRC l  Your local user group l  The comments section on that almost-related blog
  51. 51. 52 See you in Hong Kong November 5-8, register now!
 λ openstack.org/summit Design Sessions: not a classic track with speakers and presentations - generally an open brainstorming discussion on a given feature Conference Sessions: Keynotes, Case Studies, Ecosystem, Operations, Strategy, Workshops
  52. 52. Thank you for 
 supporting OpenStack Tom Fifield tom@openstack.org @Tom Fifield Ask Questions at ask.openstack.org

×