110 likes | 239 Views
DIRAC Configuration Service. R. Graciani Casajus I. Stokes-Rees. Overview. Introduction Architecture Client Local Configuration Master Server Slave Server Outlook. Introduction. Evolution from InformationService Aims:
E N D
DIRAC Configuration Service R. Graciani Casajus I. Stokes-Rees
Overview • Introduction • Architecture • Client • Local Configuration • Master Server • Slave Server • Outlook DIRAC Configuration Service
Introduction • Evolution from InformationService • Aims: • Allow DIRAC applications to get configuration parameters and locate resources. • High reliability and remove single point of failure. DIRAC Configuration Service
Architecture • Clients: • Merge Local and Remote Configurations. • Keep local cache of Remote. • Local Configuration: • .ini files • Remote Configuration: • Configuration Servers • Master-Slave paradigm for servers. DIRAC Configuration Service
Client (I) • From DIRAC.InformationServices.ConfigurationService.CSClient import cfgSvc • cfgSvc initialized from dirac.ini. • cfgSvc.reinitialize( iniList ) • cfgSvc.getSections() • cfgSvc.getOptions( Section ) • cfgSvc.getValue( Section, Option, Default ) DIRAC Configuration Service
Client (II) • These methods always return S_OK or S_ERROR dictionaries (never raise exceptions). • Uses [ConfigurationService]/List to find Remote configuration Servers • Merges Local Data with Remote Data, keeping local more pre-emptive. • Keeps on memory cache of Remote Data. DIRAC Configuration Service
.ini files • Data Format: • Organized in Key-Value Options grouped in Sections. [Dirac] Site = LCG.CERN.ch Mode = test … • One or more .ini files can be merged into a Local Configuration. • $DIRACROOT/etc/dirac.ini is default. DIRAC Configuration Service
Master Server • Remote Configuration is kept on a 1-Master:n-Slaves setup. • Master: • Has Read and Write interfaces. • Keeps versioned master copy of Remote Configuration. • Updates version when data is changed. • Includes: • HGSE CLI to write. • HGSE (unsecure) and Web Interfaces to read. DIRAC Configuration Service
Slave Servers • Have only Read interface. • Get a copy of the Remote Configuration. • Check Master for current version and updates. • Include: • HGSE (unsecure) and Web Interfaces to read. DIRAC Configuration Service
Outlook • Complete migration from old InformationService methods to new ConfigurationService ones. • Uniform treatment of .ini files in CLI’s and scripts (arguments). DIRAC Configuration Service