180 likes | 311 Views
Lecture no 20: Software stores. TDT4285 Planlegging og drift av IT-systemer Spring 2007 Anders Christensen, IDI. Ideally: every user can use every software on every system. Decomposition. User space. OS/HW-space. Application space. Application space Consistency across the systems.
E N D
Lecture no 20: Software stores TDT4285 Planlegging og drift av IT-systemer Spring 2007 Anders Christensen, IDI TDT4285 Planl&drift IT-syst
Ideally: every user can use every software on every system. Decomposition User space OS/HW-space Application space TDT4285 Planl&drift IT-syst
Application space Consistency across the systems. Division into packages Development neither central nor coordinated Combinations are typically not tested Coexistence OS/HW space Every OS is its own space Monolithic Centralized model for development and distribution Usually tested Differences TDT4285 Planl&drift IT-syst
Extent of built-in applications Commercial = fewer applications accompanying the system. Locally installed applications Applications accompanying the system O/S and basis system Dotted line is the border between what you upgrade and what you maintain locally TDT4285 Planl&drift IT-syst
Systems for installation and administration Økende nytteverdi av gjenbruk Scripts cfengine Increasing reuse value of components Complex Store Win install Keyboard recording Monolithic Ghost Automagicity Action based State based TDT4285 Planl&drift IT-syst
Push and pull ... • Push is initialized from a central machine. Gives better overview, simple networks and enables an hierarchic method of work. • Pull is initialized from local clients. Gives autonomy, asynchrony and makes possible an anarchistic method of work. TDT4285 Planl&drift IT-syst
Hovedelementer push/pull Initiative to start Server Client Configuration files Database of files to be distributed TDT4285 Planl&drift IT-syst
Push/pull – diagram Push (Control problem) rdist Central initiative store Local initiative cfengine track (Chaotic responsibilities) Pull Local config files Central config files TDT4285 Planl&drift IT-syst
Example: Track and Rdist Key data for track: • Mechanism: pull • Domain: all types of files • Autonomous, local systems • Local configuration file Key data for rdist: • Mechanism: push • Domain: all types of files • Central configuration • Central file database • Clients must trust server TDT4285 Planl&drift IT-syst
Eksample: Store and cfengine Key data for cfengine • Mechanism: pull • Domain: All types of files • Central file database • Central config files • Operations are built into the tool Key data for store • Mechanism: pull • Domain: only third part applications • Supports multiple versions/architectures • Autonomous groups of machines • Distributed database of files. TDT4285 Planl&drift IT-syst
Other packageing systems • RPM for Linux • Ports/packages for FreeBSD • Packaging for Solaris • LUDE • Depot TDT4285 Planl&drift IT-syst
Key points for depots • Centralization. Is the master copy of the software at one central location, or are there many local, autonomous stores • Automation. Are information distributed automatically, or must it be initialized manually. • Architecture. Is there support for multiple architectures? TDT4285 Planl&drift IT-syst
Key points II • Push/pull. Where is the initiative located when files are distributed to other machines, at the sender or the receiver? • Ability to regenerate data. How do you regenerate the contents of a software store. • Configuration. To what extent and how does the system support the setting of local environmnet (e.g. the setting of domain name) TDT4285 Planl&drift IT-syst
Key points III • Updating. How easy is to merge the old localization data with the new distribution version of the same software. • Profiles. Is the system able to handle multiple versions of the same software, e.g. an old version for a stable system, and a new version for a test system? • Transport. How is data transported between machines. TDT4285 Planl&drift IT-syst
Key points IV • Convergence. Does the system have mechanisms to combat divergence and entropy • Robustness. Is the process robust and able to absorb changes in the environment. Does it rely on side effects and chains of events. • Traceability. It is possible to decide which package every file belong, and which files constitute a package. TDT4285 Planl&drift IT-syst
Key points V • Focus. Is the focus directed towards applications, O/S or/and sysadmin routines. • Scalability. • How large (geographic, organizational) is the system that can be supported. • How many machines can be supported? • Does it support division of work? • Autonomy. Is it centralized? TDT4285 Planl&drift IT-syst
Key points VI • De-installation. Can packages be de-installed, and to what extent does the system clean up. • Uniformity. Are any uniformity enforced between packages (e.g. location of libraries, format of documentation, include files etc) • Security. Can the system handle transport of sensitive data over an insecure nettwork? Checksumming? TDT4285 Planl&drift IT-syst
Key points VII • Dependencies. How does the system handle dependencies between packages? • Services. How are services that needs a daemon or entries in common configuration files handled. • ’Hi-score-filer’. How does the system handle datafiles that is updated locally with information that is supposed to (ideally) be updated only at one central instance. TDT4285 Planl&drift IT-syst