Self-Managing Computer Systems An Introduction
description
Transcript of Self-Managing Computer Systems An Introduction
Self-Managing Computer Systems An Introduction
Ying Lu
Giving credit where it is due:
Most slides are from Mark Jelasity, University of Bologna, Italy
I have modified them and added new slides
2
Outline
Background– Historical perspective– Current state of IT
What do we need?– Desired self-* properties
How do we get there?– Autonomic computing
3
XIX century technology
Car– 1900s: “mostly burden and challange” (Joe Corn)
Manual transmission, adjusting spark plug, etc, Skills of a mechanic for frequent breakdown Chauffeur needed to operate
– 1930s: becomes usable Infrastucture: road network, gas stations Interface greatly simplified, more reliable
4
XIX century technology
Electricity– Early XXth century
Households and firms have own generators “vice president of electricity” (like now: CIO)
– One generation later power grid: simplified, ubiquitous power plug, no personnel
5
XIX century technology
Individual Computers
You had to be a computer scientist to operate early computers
Computers are now in the office, classroom and home 6
Usual path of technology
Originally, all kinds of technology need lots of human involvment
– New inventions are typically “geeky”, need expertise to install and maintain
– In general, the “default” seems to be human work, due to its flexibility and adaptivity: in an early stage it is always superior to alternatives
7
Usual path of technology
Eventually, humans are removed completely or mostly by the technology becoming simple (for humans) and standardized– To increase adoption and sales (electricity, cars, etc)– To decrease cost (industrial revolution, agriculture)– To allow super-human performance (space aviation)
Simplicity of usage often means increased overlall system complexity
8
IT now
IT project failure or delay– 66% due to complexity, 98% for large projects (over
$10m) IT spending
– 20 years ago: 75% new hardware 25% fixing existing systems
– Now: 70-80% fixing and maintaining exisiting systems
“ IT is in a state that we should be ashamed of: it’s embarrasing”Greg Papadopoulos, chief technologist, Sun
9
Problem statement
Information systems are very complex and costly for humans to install and maintain
This is a major obstacle of progress– In industry
IT costs are becoming prohibitive, no new systems, only maintanance
Merging systems is extremely difficult– For ordinary people
Complex electronic gadgets and computer systems often cause frustration, and discomfort, which hinders adoption
10
What do we need?
11
What do we need?
We need self-managing computer systems Industry and academy are both working
towards this goal– IBM: autonomic computing– Microsoft: dynamic systems initiative– HP: adaptive enterprise– Web services– Cloud computing– Pervasive computing
12
What does self-management involve?
We use IBM’s autonomic computing framework to define basic requirements– High level, user friendly control– Self-configuration– Self-healing– Self-optimization– Self-protection
13
Self-configuration
“ real plug-and-play”– A component (a computer, software service, etc) is
given high level instructions (“join data-center X”, “join application Y”)
Application configuration (self-assembly)– Applications are defined as abstract entities (a set of
services with certain relationships)– When started, an application collects the components
and assembles itself– New components join in the same way
14
Self-optimization
Self-optimization is about making sure a system not only runs but at its optimal– All components must be optimal– The system as a whole must be optimal– These two can conflict– There can be conflicting interests: multi-criteria
optimization [Self-adaptation]
15
Self-healing, self-protection
Self-healing– System components must be self-healing
(dependable, robust, etc)– The system as a whole must be self-healing
(tolerate failing components, incorrect state, etc)– [self-stabilizing, self-repair]
Self-protection– Malicious attacks: DOS, worms, etc
16
How do we get there?
17
How do we get there?
General consensus: open standards are essential (as opposed to MS)
Two approaches– Self-awareness: simplicity through complexity
Self-model (reflection); Environment model; Planning, reasoning, control (GOFAI)
– Self-organization: simplicity through simplicity Emergent functions through very simple cooperative behavior
(biological, social metaphors) These two can compete with or complement each
other
18
Appendix
19
Example – Redundancy in Circuits (1)
Example – Redundancy in Circuits (2)
Triple modular redundancy.