mtat.08.021 systems administration2011-03-17 1/37 ulrich norbisrath () university of tartu systems...

37
2011-03-17 1/37 Ulrich Norbisrath (http://ulno.net) University of Tartu Systems Administration http://sysadmin.ulno.net MTAT.08.021 Systems Administration L5: Software Lecture 2011-03-17

Upload: others

Post on 07-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-171/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

MTAT.08.021Systems Administration

L5: Software

Lecture2011-03-17

Page 2: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-172/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software

software – the binding component

storage processorbuses/data paths

Page 3: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-173/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Outline

● Ownership and usage rights ● Installing● Updating● Software library● Tools

Page 4: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-174/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software: ownership, usage rights

Ownership of the copy

● All the (owners) rights for the copy transferred to the end user

● Copyright may remain with the publisher

License to use the copy

● Client is licensed to use the copy of the software, but ownership of the copy remains with the publisher

Page 5: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-175/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Free Software (vaba tarkvara)

● End user owns the copy– Owning the copy ≠ owning the copyright

● Owner's rights and liabilities● Accepting the license grants additional

rights, user will be bounded by the terms of license

● Copyleft vs. permissive

Page 6: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-176/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Free Software

Copyleft● Aim to preserve

freedom of the software

GNU General Public License, Lesser GNUPublic License (weak copyleft)

Permissive● Aim to give more

freedom to the users

BSD License, Apache License (>1.0), MIT License

Page 7: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-177/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Proprietary software(suletud tarkvara)

● Proprietary: „closed“, „commercial“● End user does not own the copy● End user is granted the right to use the copy● Accepting the license is prerequisite of using

the software● No standards, vendors impose their own rules● EULA: End User License Agreement

– How to use the copy, which is licensed– Do you read the EULA?– Consider using EULAlizers

Page 8: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-178/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software: Cost

Freeware (tasuta tarkvara)

Voluntary donations

Free for personal use

Shareware (vabalt levitatav prooviversioon)

Try & buy, trial (prooviversioon)

For charge

Page 9: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-179/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Source Openness

Closed source – only vendor/publisher and their partners can access the code

Shared source – user gains access to the code by signing agreement, ownership remains with vendor

Open source – code accessible by everyone, end-user owns the copy

Access to source does not automatically imply the rights to modify the source

Page 10: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1710/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Counting the Users

● License tied to one workstation - per-seat● Tied to one user - per-user● Installed to many locations, allowed to use N

copies concurrently - concurrent, floating (ujuv litsents)

● License covers whole department/company or faculty/campus – site-licence, campus licence

● License tied to particular hardware – OEM (Original Equipment Manufacturer – confusing term)

Page 11: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1711/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

License Duration

● „Forever“● Annual fee (rent)● Software support/maintenance/assurance

Page 12: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1712/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

License Server

● Keeps track of floating / concurrent licenses ● Upon starting, application performs a check-

out of the license● When the application is closed, a check-in is

performed● No more free licenses to check out?

– application does not start, – ..or starts for a limited period of time..– ..or starts with a limited functionality

Page 13: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1713/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Physical Tokens

● Also known as dongles– A piece of hardware that enables the use of some

software application– Usually an USB device– Sometimes used with license servers

Page 14: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1714/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Installing Software

● Only install what you own or are licensed to use

● Temporary and trial installations– must be clearly distinguished– must not be used to do “real work”

● Software install rights– person with install rights must understand

the concepts of software licensing

Page 15: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1715/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Installing Software

● Mass installations– The only real way to mass install is to automate

● Identical installations: identical problems– Try to parallelize for faster install times

● Applications/systems that were identically installed tend to develop differences over time

– Life-time management should be identical, too– You may benefit from “checkpoints”

Page 16: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1716/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Packaging

Managing large quantities of software installations will get complicated

This can be mitigated by software packages

Package Management System (PMS)

Page 17: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1717/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Activity: The evolution of packaging (20-30min)● In teams collect concepts for installing software(especially automatically) and put them intoa chronological order

● Select 4 most important concepts● Consider: Setup of Content Management System,Installation of K3b in fresh Ubuntu,installing or compiling Lyx for Windows

Page 18: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1718/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Concepts for packages and package management

● Dependency handling● Recommendations● Consistency (do not break anything)● Configuration (restoration)● Distribution● Upgrade avoidance

Page 19: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1719/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Evolution of Packaging (1)

● Source code (or binary code) with half-automated install

tarball (incl Makefile), .jar

● Install packages (incl. removal functions, basic dependencies)

.exe install packages in Windows

Page 20: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1720/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Evolution of Packaging (2)

● Standard package formats with tools to manage them (removal, audit, dependencies, single package manager)

RedHat Package Management (rpm), Debian Package Format (deb), Solaris Package (pkg), Windows

Installer (msi)

● Software repository systems (dependency resolving, central updates, single toolset)

APT, Yum, YAST2/Zypp,CPAN, PEAR

Page 21: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1721/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software Repository

● Set of published software (available over Internet)

● Has structure, meta-info● Compatible with some software management

application● Complex aspects of dependency, version,

update management are kept hidden from the end user

● One system can be connected to many repositories, single tool for management

Page 22: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1722/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Repository Examples

● Install repository for the OS● Drivers from hardware vendors

● N: nVidia, ATI, Intel graphics drivers

● Applications from third-party● N: Packman, rpmforge, EPEL, Blastwave

● For-charge and proprietary software● N: NightStar LX, Eucalyptus

● Repository for SW development libraries● N: CPAN, PEAR, CRAN

Page 23: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1723/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software packaging

Vendor 2 Vendor 3

Vendor 1

OS (distro) ver 1

x86_64

i386

OS (distro) ver 2

x86_64

i386

Updates

1

x86_64

i386

2

x86_64

i386

Driver A + upg

x86_64

i386

Application B OS 1 + upg

x86_64

i386

Application B OS v2 + upg

x86_64

i386

Client 1

Client 2

Page 24: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1724/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software Updates

● Upgrade versions are usually cheaper than full versions

– Functionality updates● Security updates – should be free● Bug fixes – usually free● Software “lifetime” – for how long is the

software version supported?

Page 25: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1725/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software Updates

● Security updates– Security updates must be (semi)automated!– Ideal model:

1. Security update gets published2. Adminstrators test the update – in (semi)automated

way3. If the update passes testing, it will be delivered to all

the systems needing the update via automated infrastructure

Page 26: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1726/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software Updates

● Version updates (upgrades)– Major upgrades need planning– Too quick upgrades will have a negative impact– Learn from the experience of other companies

● If possible, the upgrade should be simultaneous over the company– New and old version may not be fully compatible

Page 27: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1727/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

License Store

● Repository of license tokens (agreements, license files, ..)

● With every token, list of existing installations is kept

● Each new installation should begin with registering itself in the license store

Page 28: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1728/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Software Library

● Structured library of software:– Installation packages of licensed software– Different versions (for testing, in use, archive)– “Install keys” can be either kept in software

library or license store

Page 29: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1729/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Tips, Tools, and Tricks

Page 30: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1730/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Distributed Installation/ Configuration

● Use of– clusterssh (cssh): ssh, which logs in multiple

times– dsh: distributed shell (Demo)– gsh: global shell

● Call yum or apt-get● Debian/CentOS/Fedora... mechanism for

installing multiple machines– FAI, Anaconda script

Page 31: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1731/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Dependency resolution

● Example in aptitude (demo)

Page 32: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1732/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Pinning/update suppression (Demo)

● Updates are not necessarily good all the time.

● You often want to suppress them or only apply very stable updates.

● Process in debian/ubuntu: hold, pinning– /etc/apt/preferences

● Fedora– /etc/yum.conf

Package: *Pin: release o=Debian,a=unstablePin-Priority: -1

Package: *Pin: release o=Debian,a=testingPin-Priority: 1000[main]

exclude = package

Page 33: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1733/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Dependency and Dll Hell

● What happens, if there are multiple versions of a shared library?

● How to manage this is called dependency →or library hell

● Bind to specific versions has →disadvantages

● Very bad case: diversion for graphic drivers (debian/ubuntu example)

Page 34: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1734/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Package yourself

● Checkinstall● Recipe (gentoo, archlinux)● Windows software

– nullsoft– msi packaging tool

● Java: IzPack● Python: Easyinstall● Other option: gnu stow

Page 35: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1735/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Manage configuration

● What to do with configuration files?● How to change?● What if interaction is needed?

Page 36: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1736/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

Discussion

● Installer vs. PMS● Package vs. software library

Page 37: MTAT.08.021 Systems Administration2011-03-17 1/37 Ulrich Norbisrath () University of Tartu Systems Administration  MTAT.08.021 Systems Administration

2011-03-1737/37

Ulrich Norbisrath (http://ulno.net)University of Tartu

Systems Administrationhttp://sysadmin.ulno.net

The Sysadmin Challenge (Bonuspoints!!)

● Present your sysadmin related challenge on discussion board until Monday morning (use your real name!)

● Vote for other challenge (until I announce selection)!● Depending on quality and number of challenges, I will

select several challenges for solving (1pt for selected challengers) – will be announced Monday evening.

● Until Wednesday noon, send solution proposals (slides, screencasts, concepts) to me via email (add sysadmin-challenge to subject).

● Good proposals will get 1pt, I will select up to two presenters, these will get 10 minute slots on Thursday to present and get 2 extra-points when presenting solution.

● You can earn max. 5pts for challenges, 10pts max total.