The Final Install - 2020 AFS Technologies...

46
The Final Install - and the final upgrade too? Software, ready to run on AFS 2010-05-26 AFS & Kerberos Best Practices Workshop

Transcript of The Final Install - 2020 AFS Technologies...

Page 1: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

The Final Install- and the final upgrade too?

Software, ready to run on AFS

2010-05-26

AFS & Kerberos Best Practices Workshop

Page 2: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

The Final Install

• The task we undertake

• The role of certain file system properties

• Why AFS is good or might be better

• What the outcome actually is

Page 3: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Software is a Problem

Page 4: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Software is a Problem

• Installation and updates (per host)

• Customization (per host)

• Dependency resolution (per host)

• The end user needs lead to clashes

Page 5: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Software is a Problem

• Installation and updates (per host)

• Customization (per host)

• Dependency resolution (per host)

• The end user needs lead to clashes

Page 6: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Software is a Problem

• Installation and updates (per host)

• Customization (per host)

• Dependency resolution (per host)

• The end user needs lead to clashes

Page 7: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Software is a Problem

• Installation and updates (per host)

• Customization (per host)

• Dependency resolution (per host)

• The end user needs lead to clashes

Page 8: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Pains, continued

• Limited choice of software, because:

• Local name space is limited

• The dependency hell fills it up

• Various needs => software clashes

Page 9: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

How software runs(popular view)

Page 10: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Running programs(for those who know)

Page 11: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Running programs(for those who know)

Page 12: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Running programs(for those who know)

Page 13: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Why don’t we ?..

• Installation would go fine

• Customization - ?

• Dependency resolution - ?

• All the conflicting needs - ?

Page 14: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Previous attempts

• ND

• NFS sharing of /usr and alike

• CMU/CS Depot

Page 15: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

State of the art• Packaging:

• Hard for software industry

• Painful for the users

• Per software installers/updaters

• Source build/install

Page 16: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

User-centered?

• Configuration is efficient for groups

• Wrongly approximated via hosts

• Installation in a home dir, even shared?

• Still host-centric

Page 17: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

User-centered!

• User centricity should mean that the

software environment follows the

user’s needs, independently of which

hosts are used.

➡No host dependencies

• (at least as few as possible)

Page 18: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

But how?

• A global file system could house all the

software there is!

• But namespace usage must change

Page 19: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Which host dependencies do we

have to deal with?

• Hardware

• Kernel

• Installation

• Configuration

• Data

Page 20: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Hardware

• Hardware dependencies will remain

• Fortunately most hardware has the

same basic characteristics, although

implemented differently

• Current trend for mobile devices

increases hardware diversity, though

Page 21: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Kernel

• Most kernels export a POSIX API

✓ (Even Windows)

• Not a big problem

- Mobile devices exhibit diversity again

Page 22: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Installation

dependencies

• Let’s eliminate installation

• A good network based file system with a

global namespace helps a lot

Page 23: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Configuration• Config can be both user, group and host

centered

• We must eliminate unnecessary host

centered config

• User and group centered config must

live in the network

• A good network based file system with a

global namespace helps a lot

Page 24: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Data

• A good network based file system with a

global namespace helps a lot

Page 25: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

A good file system?

• Needs to implement the most essential

file access operations

• i.e. open,close,read,write,exec,stat etc.

• Have a global way of naming files:

• Same name for the same file,

irrespective of host

• Cacheing for performance

Page 26: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

More things needed

• Authentication server->client

• Integrity protection

• Nice to have:

• Client->Server authentication

Page 27: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Not much choice

• DCE/DFS

• Coda

• AFS (with dynroot)

Page 28: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Chips (1997-2001)

• Chalmers University of Technology

• DCE/DFS

Page 29: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Dapty

• A mostly complete software environment.

• Inititally built on top of Coda

• Now built also for AFS

• /afs/0l.se/dapty/{alpha,beta,gamma}

Page 30: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Dapty• About 1800 programs in PATH

• Requires:

• an ia32-compatible processor

• a Linux or BSD kernel

• AFS or Coda client

• X11 server for GUI apps

Page 31: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Dapty• Supports multiple versions of the same

software simultaneously

- even on the same host

- no installation

- ready to run

• Follows the user, not the host

• Config may live in the network FS as well

Page 32: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Dapty includes e.g.

• Full gcc/g++ build environment

• All the binutils

• IceWM based desktop

• Iceape, OpenOffice etc

• ...

Page 33: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Disclaimer

• Current AFS implementation is a proof

of concept

• Just one server

• Limited bandwidth (under 100 MBit/s)

• Some software may be aged

Page 34: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

How does AFS perform?starting Ooo 2.3 on a workstation - ping rtt to the

server, seconds with cold and warm cache to open

a text document

FS Ping Cold Warm

Coda 0.35ms 29s ~4s

Coda 8/20ms 205s ~4s

AFS 18ms 154s ~4s

Page 35: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

How was it

implemented?• Software units

• Nonsensical paths

- Eliminates name clashes

• Build templates

• Auto tools considered harmful

Page 36: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Hard to crack issues

• Hardware configuration

• Software trying to be intelligent,

behaving stupid

• Software trying to be reliable, asking for

trouble

Page 37: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Commercial apps

• How to put commercial apps on Dapty

• Requires another licensing mindset

Page 38: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Did we succeed?

• Installation and updates

• Customization

• Dependency resolution

• The end user needs / clashes

Page 39: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Did we succeed?

Installation and updates

• Customization

• Dependency resolution

• The end user needs / clashes

Page 40: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Did we succeed?

Installation and updates

Customization

• Dependency resolution

• The end user needs / clashes

Page 41: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Did we succeed?

Installation and updates

Customization

Dependency resolution

• The end user needs / clashes

Page 42: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Did we succeed?

Installation and updates

Customization

Dependency resolution

The end user needs / clashes

Page 43: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

The net result

• Not long ago – heresy

”Cloud Computing”!

Page 44: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

The net result

• Not long ago – heresy

• ”Cloud Computing”!

Page 45: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

Making bucks

• Many products can be built upon this

• Huge potential market for software

maintenance and more

• Customers can be hard to reach

Page 46: The Final Install - 2020 AFS Technologies Workshopworkshop.openafs.org/afsbpw10/talks/wed_3/ljungbjorn_fi.pdf · The Final Install - and the final upgrade too? Software, ready to

http://www.aetey.se

mailto: see-the-web-page

(a moving target!)

Rune Ljungbjörn, Christer Bernérus