german cancio – wp4 developments partner logo system management: node configuration & software...

23
German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern. ch

Upload: edwina-alexander

Post on 04-Jan-2016

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments

PartnerLogo

System Management:Node Configuration &

Software Package Management

[email protected]

Page 2: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 2

System management Architecture

The pillars: Central Configuration Database

Node Configuration Management

Base system installation

Software Package Management

Monitoring

Page 3: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 3

Node Configuration Management

Page 4: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 4

Client Server

XML

HLDL

PAN

DBMNotification+ Transfer

Low Level API

High Level API

ComponentAccess API

GUINode Configuration Management

Page 5: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 5

Node Configuration Management (NCM)

Client software running on the node which takes care of “implementing” what is in the configuration profile

Sits on top of the low-level Config access library (NVA-API)

Modules: “Components”

Component support libraries

Framework

Page 6: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 6

NCM: Components

“Components” (like SUE “features” or LCFG ‘objects’) are responsible for updating local config files, and notifying services if needed

Components register their interest in configuration entries or subtrees, and get invoked in case of changes

Components do only configure the system Usually, this implies regenerating and/or updating local config files (eg.

/etc/sshd_config) One method only: Configure()

Use standard system facilities (SysV scripts) for managing services Reuse the standard facilities: most services come with a SysV script. Components can notify services using SysV scripts when their configuration

changes. Components are kept small&simple

Page 7: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 7

Component examplesub Configure {

my ($self) = @_;

# access configuration information

my $config=NVA::Config->new();

my $arch=$config->getValue('/system/architecture’); # low-level API

$self->Fail (“not supported") unless ($arch eq ‘i386’);

# (re)generate and/or update local config file(s)

open (myconfig,’/etc/myconfig’); …

# notify affected (SysV) services if required

if ($changed) {

system(‘/sbin/service myservice reload’); …

}

}

Page 8: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 8

Existing component taxonomy Components can be classified into basic, service-specific and Grid components

Basic components: Manage basic system configurations eg. network,NFS, printers, security, time…

Service specific components: For batch nodes, servers (provided by service managers)

Eg. LSF, PBS, Castor, accounting, root mail, …

Grid components (provided by Grid middleware WP’s) Eg. Globus, GDMP, LCAS, Resource Broker…

Existing components are available both from SUE and LCFG SUE features: Basic and Service specific LCFG components: Basic and Grid components

Need complete classification (which components to port, which ones to rewrite) Functionality -> component

Page 9: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 9

NCM: Component support libraries

Component support libraries for recurring tasks:

Logging and error reporting

Template processor (for fast config file generation)

SUE sysmgt libraries Eg. check/edit files, system information, regexps, crontab,

(x)inetd…

Monitoring integration

Page 10: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 10

NCM: framework

A light weight framework (cdisp) glues the components to the Configuration Client.

Overall functionality:

1. Register which components are interested in which configuration entries/subtrees

2. Upon a config update, look up the components which need to be invoked

3. Ordering of component invocations according to dependencies

4. Invocation of components

Page 11: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 11

NCM Architecture

cdisp

server

client

NVA API

DBM Cache

Invocation

registration &notification

CCConfig

ComponentsComponents

Components

XML

Component libsSUE sysmgtLoggingTemplate processorMonitoring interface

Configure()

Node Config Client

Node Config Mgmt

“Low-level” API

“High-level” API

Page 12: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 12

Base System Installation

Page 13: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 13

Base System Installation

Nodes are installed using the default system installer. Use standard installation infrastructure (DHCP, install servers, repositories)

Configuration information stored in the CDB, generate ks or js files A NCM component generates ks/js files out of node profiles. Template ks/js files used for substituting partition, network, timezone, and other

miscellaneous information Keep the installation simple: installation server should not need any tweaking excepting

adding the NCM required packages. Can be used in combination with existing environment, eg. AIMS for updating NFS & DHCP

servers Site-specific databases should not directly be accessed, only CDB (instead, update CDB

with LANDB and CCDB information)

Hook into Node Configuration Management afterwards (‘post-install’) Start the NCM which downloads the latest node profile It will bring the machine to its state as reflected in the CDB. (Monitoring can be activated at this moment).

Page 14: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 14

Software Package Management

Page 15: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 15

Software Distribution Architecture

 A packaging tool takes care of installing/deinstalling/upgrading packages on a computer node and keeps an inventory of currently installed packages.

 The packages themselves are stored on a managed Software Repository accessible via multiple protocols (eg. HTTP, FTP, shared file system,..)

 Information on which packages are to be deployed on which nodes, and which packages are available on which repositories, is kept in the fabric-wide Configuration Database.

 A 'glue' application (running on the target nodes) computes the necessary package upgrade operations and invokes the packaging tool.

(The SW generation and packaging process is outside the scope.)

Page 16: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 16

Software Package Manager (SPM)

The SPM is the glue application. Functionality:

1. Compares the packages currently installed on the local node with the packages listed in the configuration

2. Computes the necessary install/deinstall/upgrade operations

3. Invokes the packager with the right operation transaction set

The SPM is driven via a local configuration file For batch/servers: A component generates/maintains this cf file out of CDB

information For desktops: Possible to write a GUI for locally editing the cf file

The SPM core is independent of which packaging format is used.

Page 17: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 17

Software Package Manager (II)

Packager: the standard system packaging format is used (rpm for Linux, pkg for Solaris) rpmt (for rpm ‘transactional’) used for transactions handling

• Packager (rpmt) functionality:

1. Read operations (transaction)

2. downloads new packages from Repository

3. orders the transaction operations taking into account dependency information

4. Executes the operations (installs/removes/upgrades)

Page 18: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 18

SPM Architecture

Component

rpmt

Repository

packages

GUI

SPM

Packages (RPM, pkg)

RPM db

Local Configfile

Transaction set

filesystem

Package files

HTTP(S), NFS, FTP

Central Config DB

Installed pkgs

“desired”configuration

Desktops

external

SPM

Page 19: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 19

Software Package Management

Package config flags: Ignore locally installed packages (useful for desktops)

Local exception list, or backup of previous configuration

Reboot when package is upgraded

Do not upgrade package when node is in production (eg. runlevel X)

Standard RPM flags (no dependencies, force, no pre/post installs, etc..)

Issue: per-package flags not supported by standard RPM libraries!

Page 20: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 20

SPM and the CDB

SW packages are modelised in the Global Schema as follows: Repository configuration: List of available repositories, repository

directories, and packages Node configuration: list of used repositories, and list of selected

packages.

(see next slides)

The CDB template inclusion mechanism allows to define multiple default profiles which can then be refined

Production-packages-rh72.tpl -> lxplus7.tpl -> lxplus043 More flexibility than current ASIS profiles (Certified, InProduction)

Page 21: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 21

SW repository structure (maintained by repository managers):

/sw/known_repositories/Arep/url = (host, protocol, prefix dir)

/owner =

/extras =

/directories/dir_name_X/path = (asis)

/platform = (i386_rh61)

/packages/pck_a/name = (kernel)

/version = (2.4.9)

/release = 31.1.cern

/architecture = (i686)

/dir_name_Y /path = (sun_system)

/platform = (sun4_58)

/packages/pck_b/name = (SUNWcsd)

/version = 11.7.0

/release = 1998.09.01.04.16

/architecture = (?)

SPM and Global Schema (I)

Page 22: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 22

Node information (maintained by node administrator)

/sw/used_repositories/0/rep_name_A =

/1/rep_name_B =

/sw/packages/package_name/version =

/arch =

/flags =

/sw/packages/package_name/version =

/arch =

/flags =

SPM and Global Schema (II)

Page 23: German Cancio – WP4 developments Partner Logo System Management: Node Configuration & Software Package Management German.Cancio@cern.ch

German Cancio – WP4 developments - n° 23

Issues

Multiplatform support How to manage components for multiple platforms (now: RH62, RH72, in the

future: RH X.Y, Solaris?) Is the global schema adequate for Solaris? Is the SPM concept adequate for Solaris?

Backwards compatibility: LCFG, SUE Probably not high priority.

Reusing existing software SUE libraries and features LCFG component libraries and components ASIS libs

Dependencies between software package management and node configuration management