ToSCA: Klassen
Das Klassenkonzept von ToSCA basiert auf dem Klassenbegriff von Cfengine. Jede Aktion, die durch ToSCA-Tools ausgeführt wird, ist jeweils an eine bestimmte Klasse gebunden. Die Aktion wird für einen Host genau dann ausgeführt, wenn der Host zu dieser Klasse gehört. Das gleiche trifft auf die Auswahl von Konfigurationsdateien, ToSCA-Repositories usw. zu.
Es existieren folgende Typen von Klassen:
Klassentyp | Beispiele |
---|---|
BS-Familien-Klasse | LINUX, WIN7 |
Minor-SP-Klasse | SL_6.5_X86, SL_6.5_x86_64, W7_6.1_X86, FE_18_x86_64 |
Major-SP-Klasse | SL_6_X86, SL_6_x86_64, FE_18_x86_64 |
Architektur Independent SP-Klasse | SL_6, FE_18 |
Hostklasse | attila, etzel |
Funktionsklasse | FU_URZ_COMPUTE_SERVER, FU_URZ_LIZENZ_SERVER |
Verbund-Funktionsklasse | CFU_SERVER, CFU_POOL |
Attributklasse | AT_BBMON_SERVER, AT_PRINT_IPP |
any (generisch) | – (jede Hostklasse) |
SP-Klassen: Minor-, Major-, AI-SP
Jeder Host gehört zu einer ToSCA-Systemplattform. Mit der Systemplattform ist automatisch auch die (übergeordnete) Klasse der BS-Familie definiert.
Entsprechend der allgemeinen Notation einer Systemplattform
<distribution>_<bs-version>_<arch>
ergeben sich für jeden Host folgende SP-Klassen:
- Minor-SP-Klasse (auch kurz SP-Klasse)
- Major-SP-Klasse
- Architektur Independent SP-Klasse (AI-SP-Klasse)
Die Major-SP-Klasse unterscheidet sich von der Minor-SP-Klasse nur dann, wenn es innerhalb einer BS-Version verschiedene Updates gibt. Für Windows-Systeme existieren z. B. keine Major-SP-Klassen.
Die Architektur Independent SP-Klasse abstrahiert von der Architektur und von den evtl. Updates der BS-Version. Für Windows Server 2008R2-Systeme existieren keine AI-SP-Klassen, da nur die 64-Bit-Architektur unterstützt wird.
Minor-SP | Major-SP | AI-SP | BS-Familie |
---|---|---|---|
SL_6.5_X86 | SL_6_X86 | SL_6 | LINUX |
SL_6.5_x86_64 | SL_6_x86_64 | SL_6 | LINUX |
FE_18_x86_64 | FE_18_x86_64 | FE_18 | LINUX |
W7_6.1_X86 | – | – | WIN7 |
W7_6.1_x86_64 | – | – | WIN7 |
W2008_6.1_x86_64 | – | – | WIN7 |
Diese Klassenbezeichner werden z. B. für Repository-Verzeichnisse benutzt. Da Klassenbezeichner in Cfengine kein Zeichen "." (Punkt) enthalten dürfen, ergeben sich entsprechend modifierte Bezeichner für Cfengine -Klassen:
ToSCA-Klasse | entsprechende Cfengine-Klasse |
---|---|
SL_6.5_X86 | SL_65_X86 |
SL_6.5_x86_64 | SL_65_x86_64 |
W7_6.1_X86 | 7_61_X86 |
W2008_6.2_x86_64 | W2008_62_x86_64 |
Host-Klasse
Der Hostname legt fest, zu welcher Host-Klasse er gehört. Zusammen mit der SP-Klasse ist damit jeder Host in Cfengine eindeutig adressierbar.
Klasse any
Jeder Host gehört per Definition zur vordefinierten Klasse any. Sie wird benutzt, wenn Cfengine -Aktionen für alle Hosts ausgeführt werden sollen.
Funktionsklassen (FU-Klassen)
In ToSCA wird für jeden Host (innerhalb einer SP-Klasse) genau eine Funktionsklasse (FU-Klasse) festgelegt. Demzufolge muss jeder Host einer FU-Klasse angehören. Die FU-Klassen sind disjunkt, d. h., jeder Host darf genau einer FU-Klasse angehören.
Die Klassenbezeichnung folgt Namenskonventionen
<institution> ... Kürzel für die Institution, z.B. Professur <functionname> ... Bezeichnung der Funktion, des Dienstes usw.
Das Suffix des Bezeichners für FU-Klassen ist relevant für die Einordnung in bestimmte ToSCA-Strukturen, z. B. das Monitoring:
DEVEL_MISC ... Host ist ein Test- oder Entwicklungsrechner
WS ... Host ist ein Arbeitsplatzrechner (ausser Pool-Rechner)
Eine spezielle Namenskonvention gilt für Ausbildungspools:
<institution> ... Kürzel für die Institution, z.B. Professur <location> ... Standort-Kürzel <room> ... Raum-Nummer
Beispiele:
FU_URZ_FILE_SERVER ... Fileserver des URZ in Produktion FU_UB_LIBERO_DEVEL_MISC ... Testsystem der UB für das Lokalsystem LIBERO FU_CPHYS_WS ... Arbeistplatzrechner der Professur Computerphysik (CPHYS) FU_POOL_SN_066 ... zentraler Pool in der Strasse der Nationen im Raum 066
FU-Klassen werden ggf. auf Anforderung von den ToSCA-Admins eingerichtet.
Verbund-Funktionsklassen (CFU-Klassen)
Mitunter besitzen verschieden FU-Klassen gemeinsame Konfigurationseigenschaften. Zum Beispiel ist allen Nutzern erlaubt, sich auf einem beliebigen Poolrechner anzumelden. Deshalb werden alle Klassen der Form
in der CFU-Klasse CFU_POOL zusammengefasst.
Auf allen Pool- und Arbeitsplatzrechner soll eine gemeinsame Mindestmenge von Softwarepaketen installiert sein. Deshalb umfasst die Klasse CFU_DESKTOP alle FU-Klassen FU_POOL_<xyz> und FU_<xyz> _WS.
Die Namenskonvention lautet
CFU-Klassen werden ggf. auf Anforderung von den ToSCA-Admins eingerichtet.
Attribut-Klassen (AT-Klassen)
In einigen Situationen ist es unvermeidlich, Rechner unterschiedlichster FU-Klassen in einer sogenannten Attribut-Klasse (überlappend) zusammenzufassen. Zum Beispiel wird die identische Konfiguration für alle Rechnersysteme mit einer Zugangssteuerung über das Web-Trust-Center mittels einer AT-Klasse bereitgestellt.
Die Namenskonvention lautet
AT-Klassen werden von den ToSCA-Admins nach sorgfältiger Prüfung bei Bedarf eingerichtet.
Beispiele: zu welchen ToSCA-Klassen gehört ein bestimmter Host?
Angenommen, ein Host mit dem Namen attila hat die Funktion eines Referenz-Servers (FU-Klasse FU_REFERENZ_SERVER) für die Systemplattform Scientific Linux 5.1 (32 Bit). Dann sind für attila folgende Klassen definiert:
Klassentyp | Klasse |
---|---|
Host-Klasse | attila |
FU-Klasse | FU_REFERENZ_SERVER |
CFU-Klasse | CFU_SERVER |
Minor-SP-Klasse | SL_5.1_X86 |
Major-SP-Klasse | SL_5_X86 |
AI-SP-Klasse | SL_5 |
BS-Familien-Klasse | LINUX |
Angenommen, ein Host mit dem Namen etzel hat die Funktion eines Lizenz-Servers (FU-Klasse FU_LIZENZ_SERVER) für die Systemplattform Windows 2003.
Dann sind für etzel folgende Klassen definiert:
Klassentyp | Klasse |
---|---|
Host-Klasse | etzel |
FU-Klasse | FU_LIZENZ_SERVER |
CFU-Klasse | CFU_SERVER |
Minor-SP-Klasse | W2003_5.2_X86 |
Major-SP-Klasse | W2003_5.2_X86 |
AI-SP-Klasse | W2003_5.2 |
BS-Familien-Klasse | NT |