OmniOS Motivation and Design ~ LISA 2012

2,246 views
2,144 views

Published on

Published in: Technology
1 Comment
3 Likes
Statistics
Notes
No Downloads
Views
Total views
2,246
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
15
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

OmniOS Motivation and Design ~ LISA 2012

  1. 1. / Motivation & Design Building an Illumos-based OS Friday, December 14, 12
  2. 2. Hi, I’m @postwait • Theo Schlossnagle • Founder of OmniTI • Avid open source developer • Illumos contributor Friday, December 14, 12
  3. 3. Motivation Galaxy Quest (1999) Sir Alexander Dane You're just going to have to figure out what it wants. What is its motivation? Jason Nesmith It's a rock monster. It doesn't have motivation. Sir Alexander Dane See, that's your problem, Jason. You were never serious about the craft. Friday, December 14, 12
  4. 4. Where the world is going... Friday, December 14, 12
  5. 5. Where the world is today... Friday, December 14, 12
  6. 6. Where the world is today... Friday, December 14, 12
  7. 7. Where the world is today... Friday, December 14, 12
  8. 8. Where the world is today... Friday, December 14, 12
  9. 9. Some brief history • We ran a lot of Solaris (10 GA⇾u9 + SXCE) Friday, December 14, 12
  10. 10. Some brief history • We ran a lot of Solaris (10 GA⇾u9 + SXCE) • I learned that I like: DTrace, crossbow Friday, December 14, 12
  11. 11. Some brief history • We ran a lot of Solaris (10 GA⇾u9 + SXCE) • I learned that I like: DTrace, crossbow • I learned that I love: ABI stability, zones Friday, December 14, 12
  12. 12. Some brief history • We ran a lot of Solaris (10 GA⇾u9 + SXCE) • I learned that I like: DTrace, crossbow • I learned that I love: ABI stability, zones • I learned that I need: ZFS, open source Friday, December 14, 12
  13. 13. Some brief history • We ran a lot of Solaris (10 GA⇾u9 + SXCE) • I learned that I like: DTrace, crossbow • I learned that I love: ABI stability, zones • I learned that I need: ZFS, open source • The future was bright Friday, December 14, 12
  14. 14. The Oracle Solar(is) Ecplise: 2013/08/13 http://mail.opensolaris.org/pipermail/opensolaris-discuss/2010-August/059310.html Friday, December 14, 12
  15. 15. Pouring a 40 for Sun... and moving on. Friday, December 14, 12
  16. 16. UNIX lives on in many of us Friday, December 14, 12
  17. 17. The motivation • We have a lot of customers with “traditional deployments” (servers, not instances) • We would likely have bought Solaris 11, if I could build it from source. • We needed a path of least resistance for our Solaris 10 users... that delivered on the promises Sun made. Friday, December 14, 12
  18. 18. Actual Motivation It so happens there is a business model. Friday, December 14, 12
  19. 19. Goals: set ‘em Friday, December 14, 12
  20. 20. Goals ABI Stability, ZFS, Zones, Crossbow, DTrace, Open Source #1 Friday, December 14, 12
  21. 21. Goals ABI Stability, ZFS, Zones, Crossbow, DTrace, Open Source #1 (+ KVM courtesy of Joyent) Friday, December 14, 12
  22. 22. Goals Traditionally installable (on disk) via network #2 Friday, December 14, 12
  23. 23. Goals Traditionally installable (on disk) via network #2 kayak ZFS-based disk imaging Friday, December 14, 12
  24. 24. Goals Bring userland recent to prolong life #3 Friday, December 14, 12
  25. 25. Goals Bring userland recent to prolong life #3 Sadly, Illumos needs OpenSSL, libxml2 and zlib Friday, December 14, 12
  26. 26. Goals Bring userland recent to prolong life #3 gcc 4.6.3 (4.4 for kernel) Sadly, Illumos needs OpenSSL, libxml2 and zlib (1.0.1) (2.9.0) (1.2.7) Friday, December 14, 12
  27. 27. Goals Build all of OmniOS with core OmniOS A subjective, “thick” take on JEOS #4 Friday, December 14, 12
  28. 28. Goals Build all of OmniOS with core OmniOS A subjective, “thick” take on JEOS #4 Only 111 pieces of software Friday, December 14, 12
  29. 29. Goals Build all of OmniOS with core OmniOS A subjective, “thick” take on JEOS #4 Only 111 pieces of software “Put that shit in a box and ship it.” Friday, December 14, 12
  30. 30. Goals Consistent multi instruction-set-architecture (ISA) support #5 Friday, December 14, 12
  31. 31. Goals Consistent multi instruction-set-architecture (ISA) support #5 Ship both 32-bit & 64-bit libs consistently Friday, December 14, 12
  32. 32. Goals Establish a rigorous major release cycle (every 6 months) #6 Friday, December 14, 12
  33. 33. Goals Establish a rigorous major release cycle (every 6 months) #62012-04 r151002 . . . . 2012-10 r151004 Friday, December 14, 12
  34. 34. Goals Establish a non-disruptive minor update cycle (every week) #7 Friday, December 14, 12
  35. 35. Goals Establish a non-disruptive minor update cycle (every week) #72012-04.2 r151002a 2012-04.4 r151002b . . . . 2012-10.2 r151002z Friday, December 14, 12
  36. 36. Goals Commercial support for mission-criticality and/or compliance requirements #8 Friday, December 14, 12
  37. 37. Goals Commercial support for mission-criticality and/or compliance requirements #8 Friday, December 14, 12
  38. 38. Kayak Installs Simple Stupid • Kayak (http://omnios.omniti.com/browse.php/core/kayak) • builds an altroot install • zfs sends it (to a file, then over HTTP) • makes a miniroot (served over TFTP) • written in shell (sysadmins rejoice) • tiny python web server (not required) Friday, December 14, 12
  39. 39. Release Cycles r151002a Friday, December 14, 12
  40. 40. Release Cycles r151002a r151003 Friday, December 14, 12
  41. 41. Release Cycles r151002a r151003 irregular spasmodic change Friday, December 14, 12
  42. 42. Release Cycles r151002a r151003 irregular spasmodic change r151002c Friday, December 14, 12
  43. 43. Release Cycles r151002a r151003 irregular spasmodic change r151002c r151002d Friday, December 14, 12
  44. 44. Release Cycles r151002a r151003 irregular spasmodic change r151002c r151002d 1week Friday, December 14, 12
  45. 45. Release Cycles r151002a r151003 irregular spasmodic change r151002z r151002c r151002d 1week Friday, December 14, 12
  46. 46. Release Cycles r151002a r151003 irregular spasmodic change freeze r151002z r151002c r151002d 1week Friday, December 14, 12
  47. 47. Release Cycles r151002a r151003 irregular spasmodic change freeze r151002z r151002c r151002d r151004a 1week Friday, December 14, 12
  48. 48. Release Cycles r151002a r151003 irregular spasmodic change freeze r151002z r151002c r151002d r151004a 26 weeks 1week Friday, December 14, 12
  49. 49. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151002z r151002c r151002d r151004a 26 weeks 1week Friday, December 14, 12
  50. 50. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change Friday, December 14, 12
  51. 51. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151004b r151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change Friday, December 14, 12
  52. 52. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151004b r151004c r151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change Friday, December 14, 12
  53. 53. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151004b r151004c r151004e r151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change Friday, December 14, 12
  54. 54. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151004b r151004c r151004e r151004zr151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change Friday, December 14, 12
  55. 55. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151004b r151004c r151004e r151004zr151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change freeze Friday, December 14, 12
  56. 56. Release Cycles r151002a r151003 r151005 irregular spasmodic change freeze r151004b r151004c r151004e r151004zr151002z r151002c r151002d r151004a 26 weeks 1week irregular spasmodic change freeze Friday, December 14, 12
  57. 57. Available on EC2 Friday, December 14, 12
  58. 58. Operating System Holy War Outcomes Friday, December 14, 12
  59. 59. Operating System Holy War Outcomes Editor: vi (naturally) Friday, December 14, 12
  60. 60. Operating System Holy War Outcomes Editor: vi (naturally) Filesystem: ZFS (obviously) Friday, December 14, 12
  61. 61. Operating System Holy War Outcomes Editor: vi (naturally) Filesystem: ZFS (obviously) Packaging: IPS (WTF?!) Friday, December 14, 12
  62. 62. IPS Controversy ✓IPS sucks (yes, like the rest) ✓IPS made new problems to solve ✓IPS is uncommon Friday, December 14, 12
  63. 63. IPS Justification • IPS builds are part of Illumos • ipkg zone is something we use • I’m disaffected: "It's packaging other people's software that makes system administrators violent people" - http://www.youtube.com/watch?v=ieCTIPG43no • Avoid “solutions:” I’m looking at you facets • Minimal use of incorporations Friday, December 14, 12
  64. 64. IPS niceties • IPS is a network resource • pkgsend is tool, not a framework • All HTTP micro assets (cacheable) • Handles all the BE magic • Without the “features” it just works Friday, December 14, 12
  65. 65. What we learned. • We built packages for Solaris 10 ...and for Linux ...and for FreeBSD • Because we’re a snowflake ...just like very one else. • Rule: “keep your shit to yourself.” Friday, December 14, 12
  66. 66. Minimal: not useful • OmniOS only ships “core” • no web server. no database. no proxy cache. no PHP. no Ruby. no bind. • we ship perl, use your own. • we ship python, use your own. Friday, December 14, 12
  67. 67. Minimal: awesome-sauce We use OmniOS... like a layered cake Publisher URL ms.omniti.com http://pkg.omniti.com/omniti-ms/ perl.omniti.com http://pkg.omniti.com/omniti-perl/ Friday, December 14, 12
  68. 68. Distro Construction Kit OmniOS as a base for building more comprehensive Illumos distributions Friday, December 14, 12
  69. 69. Adieu • Thanks • Go get it as Vagrant box, ISO, USB, or AMI http://omnios.omniti.com/wiki.php/Installation http://www.flickr.com/photos/theaucitron/5810163712 http://www.flickr.com/photos/jefflippold/7237388878/ http://www.flickr.com/photos/angietorres/4564135455/ http://www.flickr.com/photos/adavey/2102499200/ http://www.flickr.com/photos/68751915@N05/6551534889/ http://www.flickr.com/photos/61423903@N06/8085629858/ http://www.flickr.com/photos/marc-flores/6629287755/ Friday, December 14, 12

×