33
The Obsoletion of the OS EuroBSDcon 2011, Maarssen [email protected]

The Obsoletion of the OS

Embed Size (px)

Citation preview

Page 1: The Obsoletion of the OS

The Obsoletion of theOS

EuroBSDcon 2011, Maarssen

[email protected]

www.princexml.com
Prince - Non-commercial License
This document was created with Prince, a great way of getting web content onto paper.
Page 2: The Obsoletion of the OS
Page 3: The Obsoletion of the OS

the Unix OS▪ 1970s — comprehensive platform complete with

apps

▪ 1990s — nice platform to run third-party apps

▪ 2010s — thin sub-middleware layer

Page 4: The Obsoletion of the OS

operating system▪ meeting point

▪ implementation repo

▪ academic vehicle

Page 5: The Obsoletion of the OS

good ol' times▪ data

▪ server OS (Unix)

▪ user

Page 6: The Obsoletion of the OS

wasted effort ...▪ server OS (FreeBSD, etc)

▪ server middleware (hadoop, etc)

▪ server app (Facebook PHP, etc)

Page 7: The Obsoletion of the OS

... wasted effort▪ client OS (PC-BSD, etc)

▪ client middleware (browsers, etc)

▪ client app (Facebook JS, etc)

Page 8: The Obsoletion of the OS

Chrome OS▪ consolidating client side

▪ only in concept

Page 9: The Obsoletion of the OS

large systems▪ Google, Facebook, Twitter, ...

▪ a small company cluster

▪ any two machines, e.g. client-server

Page 10: The Obsoletion of the OS
Page 11: The Obsoletion of the OS

TCP/IP is evil▪ never meant for intrasystem comms

▪ utterly tenacious

▪ preempted real distributed systems engineering

Page 12: The Obsoletion of the OS

the cloud▪ does not tolerate inconveniences in the OS

▪ happy to move any piece of logic up

▪ happy to forget about the OS altogether (baremetal Java!)

Page 13: The Obsoletion of the OS

should BSD care?▪ wasted effort

▪ highly fragmented distributed engineering effort

▪ extremely poor quality of net result

Page 14: The Obsoletion of the OS

a way forward▪ look for obvious things to move down into the OS

▪ provide useful conveniences

▪ set the trend and define guidelines

Page 15: The Obsoletion of the OS

the usual impediment▪ the larger the system —

▪ — the more the experience and ideas

▪ — the less time to speak and contribute

Page 16: The Obsoletion of the OS

complexitymanagement

Page 17: The Obsoletion of the OS
Page 18: The Obsoletion of the OS
Page 19: The Obsoletion of the OS
Page 20: The Obsoletion of the OS
Page 21: The Obsoletion of the OS

real life

Page 22: The Obsoletion of the OS

role aware rc▪ one /etc for all machines

▪ infectious boot: pxe, hdd, usb

▪ / in git

Page 23: The Obsoletion of the OS

rc.conf.dcase `hostname -s` inz[0-9]*|h22|nemea|h4|lw[1-2])

nginx_enable="YES"nginx_profiles="default zdata";;

esac

Page 24: The Obsoletion of the OS

machine generateddata

▪ don't try to print human readable

▪ don't try to parse human readable

▪ expect multiple hosts

▪ cron(8), periodic(8)

▪ apache-style logs, logs in SQL

Page 25: The Obsoletion of the OS

task contracts▪ access to data

▪ resource allocation

▪ real-life metrics

Page 26: The Obsoletion of the OS

task baby-sitting▪ launchd, fcs

▪ crontab: pgrep || start

▪ monitd, etc

Page 27: The Obsoletion of the OS

AAA▪ LDAP/GSS

▪ master.passwd(5), group(5) in git(1)

Page 28: The Obsoletion of the OS

SW fault tolerance▪ watchdogd(8)

▪ timelimit(1)

▪ custom wrappers

▪ rctl(8), capsicum

Page 29: The Obsoletion of the OS

HW fault tolerance▪ ipmitool

▪ disk error counters

▪ memory testing

Page 30: The Obsoletion of the OS

massive execution▪ zz -grole1,role2 -Xrole3,role4 uptime

▪ distributed uptime, df, w, top, ...

Page 31: The Obsoletion of the OS

storage▪ RAID, HAST hard to justify on a scale

▪ ZFS limited to one node

▪ no useful distributed fs

▪ UFS2 + nginx + custom dispatcher

Page 32: The Obsoletion of the OS

the good bits▪ ssh hpn

▪ rctl

▪ pkgng

▪ SU+J

▪ bsnmpd

Page 33: The Obsoletion of the OS

questions?we're funding! (and

hiring)[email protected]