Wolfgang Friebel, 9. Oktober 2003

Slides:



Advertisements
Ähnliche Präsentationen
OpenLDAP.
Advertisements

Daten unterwegs verfügbar machen AFS Zelle im CMS macht‘s möglich
Designing Software for Ease of Extension and Contraction
Objektorientierte Datenbanken
:33 Architektur Moderner Internet Applikationen – Prolog Copyright ©2003 Christian Donner. Alle Rechte vorbehalten. Architektur Moderner.
Systemverwaltung wie es Ihnen gefällt.
1 Software Solutions GmbH & Co. KG Stresemannstraße Hamburg Entwicklung einer Konvention für Online–Weiterbildungsinformationen.
Musterlösung IT-Struktur an Schulen © Zentrale Planungsgruppe Netze am Kultusministerium Baden-Württemberg Serverpflege Autor: Michael Stütz.
Design Patterns- Entwurfsmuster
Windows auf öffentlichen PCs
AFS an der Universität Bonn
Erweiterung B2B Usermanagement / LDAP-Anbindung
Anbindung an Anwendungen
On a Buzzword: Hierachical Structure David Parnas.
Java: Dynamische Datentypen
DOM (Document Object Model)
Algorithmentheorie 04 –Hashing
XINDICE The Apache XML Project Name: Jacqueline Langhorst
Universität zu Köln Kurs Dedizierte Systeme
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Oracle PL/SQL Server Pages (PSP). © Prof. T. Kudraß, HTWK Leipzig Grundidee: PSP – Internet-Seiten mit dynamischer Präsentation von Inhalten durch Einsatz.
Oracle WebServer - Einführung. © Prof. T. Kudraß, HTWK Leipzig Oracle Web Application Server HTML WebServer ® File system Static HTML PL/SQL Packages.
Eingabeaufforderung (EA) Windows I Nützliche Kommandos (Kommando und /? liefert meist eine Liste von Optionen): cd bzw. chdir: change directory, wechselt.
Erzeugung, Pflege, Aktualisierung von web-Inhalten
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
PC I Kursdauer:3 x 3 Stunden Dozentin:Johanna Vohwinkel.
AFS-Workshop 2005 Statusbericht Rechenzentrum TU Braunschweig
Die Skriptsprache Perl (6) Wolfgang Friebel DESY Zeuthen.
Die Skriptsprache Perl (7)
Die Skriptsprache Perl (8) Wolfgang Friebel DESY Zeuthen.
Access 2000 Datenbanken.
Web-Content-Management-System
Concurrent Versions System
Windows Vista Felix Lutz 14. August 2007.
Linux-HA-Cluster – Heartbeat mit DRBD
NetUSE Web Application Framework Kai Voigt NetUSE AG 28. Februar 2003.
Samba.
Grundschutztools
UML Begleitdokumentation des Projekts
Sommersemester 2004 Jan Drewnak Entwicklung und Einsatz von Geosoftware I Praktikum Sitzung 7 Sitzung 7: User Interfaces in Java.
PHProjekt – eine open source Projektmanagementsoftware
Workshop: Active Directory
Aichinger Christian, Strasser Jürgen
Was umfaßt die CORBA Core Spezifikation? Welche zusätzlichen Komponenten muß ein ORB Produkt beinhalten? Core: CORBA Objekt Modell CORBA Architektur OMG.
Dateisysteme Marcel Waldvogel. Marcel Waldvogel, IBM Zurich Research Laboratory, Universität Konstanz, , 2 Dateisysteme Was ist eine Datei?
Projektarbeit PHP 5.3 / MySQL & Content Management Systems
Systemaufbau / Komponenten
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein Datenmanipulation Lehrbuch, Kapitel 4.
INFORMATIONSSYSTEM ZUR STUDIERENDENVERWALTUNG OPUS-College.
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1)
Welchen Problemen ist man bei heterogener, verteilter Programmierung ausgesetzt? Hardware: nicht einheitliche, inkompatible Systeme, verschiedene Leistungsfähigkeit.
CGI (Common Gateway Interface)
NDK Enterprise Technologien Informationen Infrastruktur und Fallstudie Daniel Nydegger Studienleiter Enterprise System Entwicklung.
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
EPROG Tutorium #4 Philipp Effenberger
Torque in Turbine Team 4 Josef Bohninger Thomas Lindenhofer
1 Mehrsprachigkeit Das Backend von TYPO3 ist mehrsprachig, so dass jeder Redakteur mit TYPO3 Zu einem mehrsprachigen Webauftritt gehört bei einem ausgereiften.
Aufzeichnung von Usability-Daten im www. Client-Side Log : automatisch (maschinell) generiertes Protokoll Client : Rechner mit dem Browser des Users Server:
Dedizierte Systeme Typo3 Installation Dedizierte Systeme – Typo3 Installation – Christoph Stollwerk IT Zertifikat der Philosophischen Fakultät WS 2008/2009.
Zero Administration Kit für Microsoft® Windows® Jörg Kramer University Support Center.
Die Publikations- datenbank des AIT Karl Riedling.
© ARC Solutions GmbH All rights reserved 10. Informatik-Tag, HTWM Dipl.-Inf. Chris Hübsch, ARC Solutions GmbH EINSATZ VON DESIGN PATTERNS BEI DER.
->Prinzip ->Systeme ->Peer – to – Peer
CODA - Installation Installation der Binärdateien –Venus: Client-Programm –Vice: Server-Programm –Für Windows existiert eine Alpha-Version (Coda Client.
IT2 – WS 2005/20061Nov 14, 2005 Visibility  public: Sichtbar in allen Paketen  protected: Sichtbar innerhalb des Pakets und in den Unterklassen  (default,
Modellierung der Wirklichkeit
Dieser Vortrag wird gesponsort von:
Key-Value Paare (KVP) - Metadaten für Kanäle speichern und nach MDF4 exportieren PM (V1.0)
 Präsentation transkript:

Wolfgang Friebel, 9. Oktober 2003 Hierarchische Administration des AFS File Space Wolfgang Friebel, 9. Oktober 2003

Hierarchische AFS Administration zur Zeit bei DESY laufendes Projekt Aufbauend auf Vorarbeiten im CERN Konzept eines allgemeinen Servers (arc, R. Többicke) AFS-Space Managementkonzept des CERN Programm zur Verwaltung des AFS Project Space im CERN (afs_admin, W. Friebel) Neudesign eines allgemeinen Servers Soll Kerberos5 und andere Authentifizierungsprotokolle beherrschen (Ersatz von arc, Basis SASL, P. Boettcher) Adaption von afs_admin und anderen Prozeduren an neuen Server und Implementation DESY spezifischer Abläufe 9. Oktober 2003 AFS Administration

Allgemeine Ziele Bereitstellung einer allgemeinen Arbeitsumgebung zur AFS Administration Wiederverwendung von möglichst viel Software Modularer Entwurf, Bausteine können ersetzt werden Kapselung, nur die notwendigen Schnittstellen sind sichtbar Schaffung und Adaption von Werkzeugen, die auf diesem Konzept aufbauen 9. Oktober 2003 AFS Administration

Gegenwärtige Situation bei DESY Keine oder veraltete Werkzeuge zum Anlegen von Volumes und Mountpoints Delegation von Aufgaben schwer möglich Keine Strategie zur Verteilung von Volumes auf Fileserver Keine automatische Umverteilung von Volumes auf die Fileserver 9. Oktober 2003 AFS Administration

Der Ansatz (1) Kodierung in Perl (schnelle Entwicklungszyklen, ausgereifte stabile Server auf Basis Perl im Einsatz) Benutzung vorhandener Perl Module: AFS.pm (auf CPAN) neueste Version unter www.mpa-garching.mpg.de/~nog Zusätzliches Modul entwickelt: Vos.pm AFS.pm stellt nicht alle Funktionen des AFS API bereit insbesondere fehlend: Funktionen für volume server access Hauptzweck: Parsen der Volume und Partition Informationen (mindestens 2 weitere Perl Module tun in etwa das gleiche, Infos dazu habe ich erst nach Kodieren von Vos.pm erhalten) Bereitstellung eines Mechanismus zum Klassifizieren von Volumes definiere Mengen von Volumes mit gleichen Eigenschaften Volset.pm ist ein Package für solche "Volume Sets" 9. Oktober 2003 AFS Administration

Gruppierung von AFS Volumes Volume sets (Volsets) Jeder Volume gehört zu einem oder mehreren Volsets Hierarchy von Volsets, wobei untergeordnete Volsets Eigenschaften von übergeordneten Volsets erben Der oberste Volset für ein Volume definiert die Affinität zu Partitionen (vice...) Der spezifischste Volset beschreibt Quota, Eigentümer, Administrator, Zugehörigkeit zu Projekten usw. 9. Oktober 2003 AFS Administration

Beschreibung von Volsets Alle Volsets werden in einem File afsadmin.cf beschrieben Es enthält mehrere Abschnitte, die den gesamten AFS space beschreiben Den Namen der AFS Zelle und Regel für den $HOME Pfad Die vorhandenen AFS Server und ihre Funktion Beschreibung der verfügbaren AFS Partitionen und die Names von Volsets, die dort gespeichert werden dürfen (Sammlung von Projektvolumes in Pools). Volume patterns zur Beschreibung der Zuordnung von Volumes zu Volsets Liste von Volset Namen und deren Eigenschaften (mount point, quota, ...) ACL's für Volsets zur Regelung von Volume Administrationsrechten müssen auf Server gehalten werden Code dazu in Entwicklung (bzw. im arcd vom CERN enthalten) 9. Oktober 2003 AFS Administration

Grundlegende Charakteristika Code ist weitgehend frei von Site spezifischem Code Rolle der AFS server muss nicht fest einkodiert werden Beliebige Zahl von Volsets (für Projekte etc.) kann auf eingeschränkte Liste von AFS server Partitionen verteilt werden Schema könnte auch zur Strukturierung der User Volumes (Home directories) benutzt werden 9. Oktober 2003 AFS Administration

Charakteristika (Details) Patterns in afsadmin.cf mit Variablen um einen Volset Namen von einem Volume Namen zu bestimmen, reduziert die Zahl der Patterns Alternative Mechanismen zur Zuordnung von Volumes zu Volsets wären implementierbar (Datenbank) Die Volsets bilden eine Hierarchie (von links nach rechts im Abschnitt [Volumepatterns]), die Volsets erben von ihren Eltern (quota, partition,...) falls sie nicht spezifischere Werte bereitstellen Zugriff auf die Daten (z.B. Quota Information) ist nur über Funktionen möglich (separater Namensraum) Änderung der Implementation ohne Änderung des Interface Funktionen, die intern in den Modules benutzt werden, sind verborgen 9. Oktober 2003 AFS Administration

afsadmin.cf (Beispiel) [AFSSERVERS] #server_name OS server_functions afs02 Linux fs afsdb1 Solaris fs db arc reg [PARTITIONS] #partition_names collection_names afs02/(a,b,c) fixed afsdb1/s sys [VOLUMEPATTERNS] #perl_pattern collection_names \.R$ recover ^s\.(\w+)\b fixed $1 $1_s ^user\b users [VOLSETS] ceres 4G exp/ceres #collection_name quota mount_point ceres_s 2G 9. Oktober 2003 AFS Administration

Gegenwärtiger Stand Vos.pm ist getested, Testsuite (testvos) ist vorhanden (hauptsächlich Parsen von vos exa &co. output) Volset.pm ist getested, gleiche Testsuite, Funktionsumfang hauptsächlich an Bedürfnissen von afs_admin (verteilte Administration des Volume Managements) angepaßt Stubs für allgemeinen Mechanismus zum Cachen von Daten in beiden Perl Modulen vorhanden (Verhalten beeinflußbar) Dokumentation vorhanden (perldoc Vos/Volset) Prozedur zur Verwaltung des AFS Project Space im CERN (afs_admin) existiert (client), Server ist noch arcd, wird im Rahmen des laufenden Projektes ersetzt) 9. Oktober 2003 AFS Administration

Interna Perl Module mit Blick auf Objektorientierung geschrieben. Zur Zeit wird prozedurales Interface angeboten. Übergang auf OO ist einfach, wegen Rückwärtskompatibilität nicht realisiert Alle Informationen werden intern in Strukturen gehalten (anonyme Perl Hashes, die Substrukturen enthalten können (anonyme Hashes oder anonyme Arrays) Die meisten Daten kommen mit time stamps (für Caching) Zugriff auf die Daten von außen ausschließlich über Funktionen (Encapsulation) 9. Oktober 2003 AFS Administration

Codebeispiel # $vol can be volname or volID my $volname=vid2name($vol); # retrieve some volume attribute my $quota=quota($volname); my $timestamp=get_volattrib($volname, '_time'); # get all volsets the volume is in ($volsets[0] is poolname) my @volsets=vol2set($volname); # create a volume (without sanity checks) my $to=choose_disk($volname); # $to contains suitable partition, e.g. filesrv1/a $to =~ s/\// /; arc_execute("vos create $to $volname"); 9. Oktober 2003 AFS Administration

Nächte Schritte Installation von afs_admin bei DESY mit neuem Server Entwicklung eines Kerberos5 Servers nach dem Vorbild von spamd (SpamAssassin) Authentisierung mit SASL (neben Kerberos weitere Mechanismen möglich) Benutzung von Vos.pm und Volset.pm im Serverteil Entwicklung/Adaption weiterer Werkzeuge, die auf diese Perl Module aufbauen (z.B. Loadbalancing durch Verlagern von AFS Volumes) eventuell Entwicklung eines Web-Interfaces oder GUI für afs_admin Anpassungen an neue geplante Versionen von AFS.pm mit erweitertem Funktionsumfang (Ersatz von Vos.pm) 9. Oktober 2003 AFS Administration

afs_admin Kommandos 9. Oktober 2003 AFS Administration create [-q <quota>] [-u <user>] [-p <pool|srv[/part]>] <mnt> <volume> create_mount (<mount_point> <volume_name>)+ create_project -q <quota> [-u <user>] <project> [<mount_point_pattern>] create_replica [-p <pool|srv[/part]>] (<volume> [<srv/part>])+ create_scratch [-q <quota>] [-u <user>] [-p pool] [-w{0..9}] <project> create_volume [-p <pool|srv[/part]>] (<volume> [<srv/part>])+ create_workspace [-q<quota>] [-u<user>] [-p pool] [-w{0..9}] <project> delete <dir_path>+ delete_mount <dir_path>+ delete_project <project> delete_replica [-p <srv[/part]>] (<vol_name_or_ID> [<srv/part>])+ delete_scratch -u <user> -w{0...9} <project> delete_volume [-p <srv[/part]>] (<vol_name_or_ID> [<srv/part>])+ delete_workspace -u <user> -w{0...9} <project> help [command]+ list_acl [<project>+|<dir path>+] list_quota [<project>+|<dir path>+] list_occupancy [-q <max_percentage_quota>] [project|srv[/part]] list_project [-q <max_percentage_quota>] [<project>] move_volume [-p <pool|srv[/part]>] (<volume> [<srv/part>])+ rename <dir_path> <new_volume_name> rename_mount <old_dir_path> <new_dir_path> rename_volume <old_volume_name> <new_volume_name> set_acl <dir_path> <access_list_entries>+ set_owner <owner> <dir_path>+ set_quota <dir_path>|<project_name> [+]<max_quota_in_kbytes> vos_release (<volume name>|<dir path>)+ 9. Oktober 2003 AFS Administration

Servercode für afs_admin Liste der für afs_admin zu implementierenden Funktionen auf dem Server: fs: listacl, setacl, lsmount, mkmount, rmmount vos: addsite, create, release, remove, rename UNIX: chown, mkdir Authorisierung der Nutzer gemäß ACL's 9. Oktober 2003 AFS Administration

Verfügbarkeit Vos.pm und Volset.pm sind auf ftp://ftp.ifh.de/pub/unix/gnu/perl/modules (Vos-1.07.tar.gz und Volset-1.06.tar.gz) AFS.pm ist auf CPAN oder auf http://www.mpa-garching.mpg.de/~nog afs_admin (erfordert laufenden arc daemon) und Servercode dazu (arc Prozeduren) sind bei Bedarf von mir (Wolfgang.Friebel@desy.de) erhältlich, bei Projektende (Winter 2003/2004) auch auf obigem ftp Server 9. Oktober 2003 AFS Administration