MySQL Cluster 7 - DOAG Deutsche ORACLE ...€¢ Grid 11.2 plus Oracle Enterprise Edition 11.2 • Storage auf Openfiler 2.1 über iSCSI angebunden • RAC mit 3 Knoten • Basisinstallation
Post on 15-Apr-2018
221 Views
Preview:
Transcript
science + computing ag
IT-Dienstleistungen und Software für anspruchsvolle Rechnernetze
Tübingen | München | Berlin | Düsseldorf
RAC ProzessarchitekturIst der Überblick noch zu retten?
DOAG Nürnberg, Jahrestreffen 2010Thorsten Grebe (t.grebe@science-computing.de)
© 2010 science + computing agSeite 2
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 3
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 5
Definition aus:
Clusterware Administration and Deployment Guide (e16794, 08.2010)
Aus dem Glossar:
Oracle Clusterware
Software that allows groups (clusters) of connected servers
to operate or be controlled as a unit.
Oracle Clusterware stack
The Oracle Clusterware stack includes Oracle Clusterware,
Event Manager, Cluster Synchronization Services, and Oracle ASM (if used).
Begriffsklärung: Was ist Clusterware?
Begriffsklärung
RAC-Semantik
Clusterware Stack = Clusterware + EVM + CSS + ASM
© 2010 science + computing agSeite 6
Aus Anhang E (CRSCTL Command Reference):
Aus Befehlshilfe:
Begriffsklärung: Was ist Clusterware?
Begriffsklärung
Definition aus:
Clusterware Administration and Deployment Guide (e16794, 08.2010)
crsctl stop cluster
... Oracle Clusterware stops the Oracle Clusterware stack...
RAC-Semantik
Clusterware Stack = Clusterware + EVM + CSS + ASM
[root@node1 ~]# crsctl stop --help
...
crsctl stop crs [-f]
Stop OHAS on this server
...
crsctl stop cluster [[-all]|[-n <server>[...]]] [-f]
Stop CRS stack
CRS Stack != CRS
CRS Stack = Cluster = Clusterware Stack ?
CRS = High Availability Services ?
© 2010 science + computing agSeite 7
Definition aus:
Clusterware Administration and Deployment Guide (e16794, 08.2010)
Aus Introduction to Oracle Clusterware 1-1:
Aus Introduction to Oracle Clusterware 1-7:
What is Oracle Clusterware?
Oracle Clusterware enables servers to communicate...
Oracle Clusterware provides the infrastructure...
Begriffsklärung ?
The Oracle Clusterware Stack
Oracle Clusterware consists of two separate stacks: an upper stack anchored by the
Cluster Ready Services (CRS) daemon (crsd) and a lower stack anchored by the
Oracle High Availability Services daemon (ohasd).
Clusterware (Stack) = zwei Stacks, nämlich:
Stack 1 wird kontrolliert vom CRSD Cluster Ready Services Stack
Stack 2 wird kontrolliert vom OHASD High Availability Services Stack
2 Stacks oder 3 Stacks?
Erkenntnis: Der Umgang mit den Begriffen Clusterware (Stack),
CRS (Stack), High Availability Services (Stack) ist entspannt.
© 2010 science + computing agSeite 8
Die Stacks der/des Clusterware (Stacks)Auszug aus
Clusterware Administration and Deployment Guide (e16794, 08.2010), Seite 1-8:
The Cluster Ready Services Stack
The list in this section describes the processes that comprise CRS. ...
■ Cluster Ready Services (CRS)...
■ Cluster Synchronization Services (CSS)...
■ Oracle ASM...
■ Cluster Time Synchronization Service (CTSS)...
■ Event Management (EVM)...
■ Oracle Notification Service (ONS)...
■ Oracle Agent (oraagent)...
■ Oracle Root Agent (orarootagent)...
The Oracle High Availability Services Stack
The list in this section describes the processes that comprise
the Oracle High Availability Services stack. ...
■ Cluster Logger Service (ologgerd)...
■ System Monitor Service (osysmond)...
■ Grid Plug and Play (GPNPD)....
■ Grid Interprocess Communication (GIPC)...
■ Multicast Domain Name Service (mDNS)...
■ Oracle Grid Naming Service (GNS)...
Begriffsklärung ?
© 2010 science + computing agSeite 9
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 10
RAC - Testsystem
• Oracle VM Template Oracle Enterprise Linux (OEL) 5.4 64bit
• Grid 11.2 plus Oracle Enterprise Edition 11.2
• Storage auf Openfiler 2.1 über iSCSI angebunden
• RAC mit 3 Knoten
• Basisinstallation mit ASM und ACFS-Dateisystem
Die Prozesse: Testsystem
© 2010 science + computing agSeite 11
[oracle@node1 ~]$ ps -ef | egrep 'init.d|grid'
root ... /bin/sh /etc/init.d/init.ohasd run
root ... /opt/oracle/app/grid/11.2.0/bin/ohasd.bin reboot
oracle ... /opt/oracle/app/grid/11.2.0/bin/oraagent.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/gipcd.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/mdnsd.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/gpnpd.bin
root ... /opt/oracle/app/grid/11.2.0/bin/cssdmonitor
root ... /opt/oracle/app/grid/11.2.0/bin/cssdagent
root ... /opt/oracle/app/grid/11.2.0/bin/orarootagent.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/ocssd.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/diskmon.bin -d -f
root ... /opt/oracle/app/grid/11.2.0/bin/octssd.bin reboot
oracle ... /opt/oracle/app/grid/11.2.0/bin/evmd.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/oclskd.bin
root ... /opt/oracle/app/grid/11.2.0/bin/crsd.bin reboot
root ... /opt/oracle/app/grid/11.2.0/bin/oclskd.bin
oracle ... /opt/oracle/app/grid/11.2.0/bin/evmlogger.bin -o ...
oracle ... /opt/oracle/app/grid/11.2.0/bin/oraagent.bin
root ... /opt/oracle/app/grid/11.2.0/bin/orarootagent.bin
oracle ... /opt/oracle/app/grid/11.2.0/opmn/bin/ons -d
oracle ... /opt/oracle/app/grid/11.2.0/opmn/bin/ons -d
oracle ... /opt/oracle/app/grid/11.2.0/jdk/jre//bin/java ...eonsd ...
root ... /opt/oracle/app/grid/11.2.0/bin/gnsd.bin ...
oracle ... /opt/oracle/app/grid/11.2.0/bin/tnslsnr LISTENER -inherit
2. Architektur / Installation
$ ps -ef | egrep -i 'init.d|grid|acfs|oks|asm|ora_|orcl' | grep -v grep | wc -l
118
ca. 120 RAC Prozesse auf jedem Knoten
nach Basisinstallation mit ASM und ACFS
Die Prozesse
© 2010 science + computing agSeite 12
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 13
Zeichnung aus Metalink-Note 1053147.1 (11gR2 Clusterware and Grid Home - What You Need to Know)
Komplexität
Clusterware Prozesse: Die logische Sicht
einzelne
Prozesse
Ressourcen
nicht sichtbar auf
Prozessebene
dutzende
Prozesse
ursprünglich aus: Clusterware Administration and Deployment Guide (E10717-03, 08.2009)
(es fehlen Diskmon,GIPCD,
ACFS-Treiber, ACFS-Registry,
Diskgroup, Services)
?
© 2010 science + computing agSeite 14
Zeichnung aus Metalink-Note 1053147.1 (11gR2 Clusterware and Grid Home - What You Need to Know)
Komplexität
Clusterware Prozesse: Die logische Sicht
einzelne
Prozesse
Ressourcen
nicht sichtbar auf
Prozessebene
dutzende
Prozesse
ursprünglich aus: Clusterware Administration and Deployment Guide (E10717-03, 08.2009)
(es fehlen Diskmon,GIPCD,
ACFS-Treiber, ACFS-Registry,
Diskgroup, Services)
?
Stand 4.9.2010, Fehlerhafte Dokumentation zur Abbildung
http://download.oracle.com/docs/cd/E11882_01/rac.112/e10717/img_text/cwadd004.htm
The orarootagent starts ctssd,
the CSSD Monitor,
diskmon (Disk Monitor daemon),
gipcd (Grid IPC daemon),
and crsd.
Sind Überblick, Vollständigkeit und Fehlerfreiheit bei dem
aktuellen Komplexitätsgrad der Clusterware nicht mehr
miteinander vereinbar?
© 2010 science + computing agSeite 15
ursprünglich aus: Clusterware Administration and Deployment Guide (E10717-03, 08.2009)
Komplexität
Clusterware Prozesse: Die logische Sicht
Level 1
Vier Level zum Clusterstart:Level 2
Level 3
Level 4
Level 1: Ohasd
Agenten
CSSD-Monitor
Level 2: HA-Ressourcen
ACFS-Treiber
Level 3: Agenten
Level 4: CRS-Ressourcen
Zeichnung aus Metalink-Note 1053147.1 (11gR2 Clusterware and Grid Home - What You Need to Know)
crsctl status res -t -init
crsctl status res -t
© 2010 science + computing agSeite 16
Clusterware Prozesse: Die logische Sicht- Korrektur
?
?
?
Nach Korrektur:
• CSSD-Monitor fehlt (neu)
(noch falsch im Kommentar)
• network fehlt (neu)
• ora.gns.vip fehlt (neu)
• cssdagent verwaist (neu)
• GNSD jetzt unter CRS-Oraagent
und unter OHASD-Rootagent
NEU: Zeichnung aus dem Clusterware Administration and Deployment Guide (E16794-07, 08.2010)
© 2010 science + computing agSeite 17
NEU: Zeichnung aus dem Clusterware Administration and Deployment Guide (E16794-07, 08.2010)
Clusterware Prozesse: Die logische Sicht- Korrektur
?
?
?
Nach Korrektur:
• CSSD-Monitor fehlt (neu)
(noch falsch im Kommentar)
• network fehlt (neu)
• ora.gns.vip fehlt (neu)
• cssdagent verwaist (neu)
• GNSD jetzt unter CRS-Oraagent
und unter OHASD-Rootagent
alte Version von August 2009
© 2010 science + computing agSeite 18
Clusterware Prozesse: Die logische Sicht- Korrektur
?
GNSD
?
Nach Korrektur:
• CSSD-Monitor fehlt (neu)
(noch falsch im Kommentar)
• network fehlt (neu)
• ora.gns.vip fehlt (neu)
• cssdagent verwaist (neu)
• GNSD jetzt unter CRS-Oraagent
und unter OHASD-Rootagent
Tragik der Korrektur?
Zu komplex?
NEU: Zeichnung aus dem Clusterware Administration and Deployment Guide (E16794-07, 08.2010)
© 2010 science + computing agSeite 19
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 20
25
Clusterware Prozesse: Die Chronologische Sicht
oraagent.bin 2
oraagent.bin 1
3
mdnsd.bin
Multicast Domain
Name Service
mDNS5 gipcd.binGIPC4
gpnpd.binGPNP6
Grid Plug & Play
OHASD (r)2
9
crsd.bin (r)19
orarootagent.bin 222
init.ohasd (r)1
11
I/O-Fencing in
Exadata Storage
diskmon.bin CTSSoctssd.bin (r)
Cluster Time
Synchronization
Service
12
evmd.binEVM13
evmlogger.bin14
ons 224
2120
ons 1
23
Notification
Service
eONS
29
tnslsnrListener
27
tnslsnr28
SCAN-
Listener
ASM-Instanz16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2829
Kill Daemon 1
oclskd.bin17
oclskd.bin
Kill Daemon 2
cssdmonitor7
cssdagent.bin8
ocssd.bin10
CSS
CSSD
15 oks_wkq
acfsioerrorlog
acfs_bast[0-7]
18 oks_rbld 3x
oks_conn
asmError0
asmShutdown
26 oks_comm 3x
acfsvol0
acfsds0
acfssnap0
SCAN VIP
Node VIP
Network
GNS VIP
ACFS Registry
Ressourcen
CRS
ASM Res.?Ressourcen
DB Res.
Diskgroups
gnsd
orarootagent.bin 1
Services
GNS
DB-Instanz30
© 2010 science + computing agSeite 21
25
Clusterware Prozesse: Die Chronologische Sicht
oraagent.bin 2
oraagent.bin 1
3
mdnsd.bin
Multicast Domain
Name Service
mDNS5 gipcd.binGIPC4
gpnpd.binGPNP6
Grid Plug & Play
OHASD (r)2
9
crsd.bin (r)19
orarootagent.bin 222
init.ohasd (r)1
11
I/O-Fencing in
Exadata Storage
diskmon.bin CTSSoctssd.bin (r)
Cluster Time
Synchronization
Service
12
evmd.binEVM13
evmlogger.bin14
ons 224
2120
ons 1
23
Notification
Service
eONS
29
tnslsnrListener
27
DB-Instanz30tnslsnr
28
SCAN-
Listener
ASM-Instanz16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2829
Kill Daemon 1
oclskd.bin17
oclskd.bin
Kill Daemon 2
cssdmonitor7
cssdagent.bin8
ocssd.bin10
CSS
CSSD
15 oks_wkq
acfsioerrorlog
acfs_bast[0-7]
18 oks_rbld 3x
oks_conn
asmError0
asmShutdown
26 oks_comm 3x
acfsvol0
acfsds0
acfssnap0
SCAN VIP
Node VIP
Network
GNS VIP
ACFS Registry
Ressourcen
CRS
ASM Res.?Ressourcen
DB Res.
Diskgroups
gnsd
orarootagent.bin 1
Services
GNS
Level 1
Level 2
Level 3
Level 4Die "logische" Sicht auf die Clusterprozesse stimmt nicht
exakt mit der "chronologischen" Sicht auf Prozessebene überein.
© 2010 science + computing agSeite 22
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 23
The Cluster Ready Services Stack
The list in this section describes the processes that comprise CRS. ...
■ Cluster Ready Services (CRS)...
■ Cluster Synchronization Services (CSS)...
■ Oracle ASM...
■ Cluster Time Synchronization Service (CTSS)...
■ Event Management (EVM)...
■ Oracle Notification Service (ONS)...
■ Oracle Agent (oraagent)...
■ Oracle Root Agent (orarootagent)...
The Oracle High Availability Services Stack
The list in this section describes the processes that comprise
the Oracle High Availability Services stack. ...
■ Cluster Logger Service (ologgerd)...
■ System Monitor Service (osysmond)...
■ Grid Plug and Play (GPNPD)....
■ Grid Interprocess Communication (GIPC)...
■ Multicast Domain Name Service (mDNS)...
■ Oracle Grid Naming Service (GNS)...
CSS wird direkt vom
OHASD gestartet
ASM, CTSS, EVM
werden von OHASD-
Agenten gestartet,
gehören aber in den
CRS-Stack
Nicht in der Standard-
installation (CHM muss
manuell nachinstalliert
werden)
es fehlen:
ACFS-Prozesse
Kill-Daemon
Diskmon
OHASD-Agenten
DB-Instanz
GNS steht unter Kontrolle
des CRS-Stacks
Verwirrend
Die Stacks der ClusterwareAuszug aus
Clusterware Administration and Deployment Guide (e16794, 08.2010), Seite 1-8:
Clusterware Prozesse: Die funktionale Sicht
© 2010 science + computing agSeite 24
25
Clusterware Prozesse: Die Chronologische Sicht
oraagent.bin 2
oraagent.bin 1
3
mdnsd.bin
Multicast Domain
Name Service
mDNS5 gipcd.binGIPC4
gpnpd.binGPNP6
Grid Plug & Play
OHASD (r)2
9
crsd.bin (r)19
orarootagent.bin 222
init.ohasd (r)1
11
I/O-Fencing in
Exadata Storage
diskmon.bin CTSSoctssd.bin (r)
Cluster Time
Synchronization
Service
12
evmd.binEVM13
evmlogger.bin14
ons 224
2120
ons 1
23
Notification
Service
eONS
29
tnslsnrListener
27
DB-Instanz30tnslsnr
28
SCAN-
Listener
ASM-Instanz16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2829
Kill Daemon 1
oclskd.bin17
oclskd.bin
Kill Daemon 2
cssdmonitor7
cssdagent.bin8
ocssd.bin10
CSS
CSSD
15 oks_wkq
acfsioerrorlog
acfs_bast[0-7]
18 oks_rbld 3x
oks_conn
asmError0
asmShutdown
26 oks_comm 3x
acfsvol0
acfsds0
acfssnap0
SCAN VIP
Node VIP
Network
GNS VIP
ACFS Registry
Ressourcen
CRS
ASM Res.?Ressourcen
DB Res.
Diskgroups
gnsd
orarootagent.bin 1
Services
GNS
OHASD
Stacklaut Doku
CRS Stacklaut Doku
© 2010 science + computing agSeite 25
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 26
[root@node1 ~]# crsctl stop --help
...
crsctl stop crs [-f]
Stop OHAS on this server
...
crsctl stop cluster [[-all]|[-n <server>[...]]] [-f]
Stop CRS stack
Was nach crsctl stop cluster übrig bleibt, muss der OHASD-Stack sein.
Clusterware Prozesse: Die wahre Sicht
© 2010 science + computing agSeite 27
25
oraagent.bin 2
oraagent.bin 1
3
mdnsd.bin
Multicast Domain
Name Service
mDNS5 gipcd.binGIPC4
gpnpd.binGPNP6
Grid Plug & Play
OHASD (r)2
9
crsd.bin (r)19
orarootagent.bin 222
init.ohasd (r)1
11
I/O-Fencing in
Exadata Storage
diskmon.bin CTSSoctssd.bin (r)
Cluster Time
Synchronization
Service
12
evmd.binEVM13
evmlogger.bin14
ons 224
2120
ons 1
23
Notification
Service
eONS
29
tnslsnrListener
27
DB-Instanz30tnslsnr
28
SCAN-
Listener
ASM-Instanz16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2829
Kill Daemon 1
oclskd.bin17
oclskd.bin
Kill Daemon 2
cssdmonitor7
cssdagent.bin8
ocssd.bin10
CSS
CSSD
15 oks_wkq
acfsioerrorlog
acfs_bast[0-7]
18 oks_rbld 3x
oks_conn
asmError0
asmShutdown
26 oks_comm 3x
acfsvol0
acfsds0
acfssnap0
SCAN VIP
Node VIP
Network
GNS VIP
ACFS Registry
Ressourcen
CRS
ASM Res.?Ressourcen
DB Res.
Diskgroups
gnsd
orarootagent.bin 1
Services
GNS
# crsctl stop clusterClusterware Prozesse: Die wahre Sicht
4
3
6
9
oraagent.bin 1
mdnsd.bin
Multicast Domain
Name Service
mDNS5 gipcd.binGIPC
gpnpd.binGPNP
Grid Plug & Play
OHASD (r)2init.ohasd (r)1
15 oks_wkq
acfsioerrorlog
acfs_bast[0-7]
orarootagent.bin 1 OHASD
Stackder wahreausgeblendet:
CRS Stackder wahre
Diese Prozesse, die nach crsctl stop cluster (Stop des CRS-Stacks) übrigbleiben,
sind nicht deckungsgleich mit Level 1 oder Level 2 aus Metalink-Note 1053147.1.
Sie sind nicht deckungsgleich mit den Prozessen des OHASD-Stacks aus dem Clusterware Guide.
© 2010 science + computing agSeite 28
25
oraagent.bin 2
oraagent.bin 1
3
mdnsd.bin
Multicast Domain
Name Service
mDNS5 gipcd.binGIPC4
gpnpd.binGPNP6
Grid Plug & Play
OHASD (r)2
9
crsd.bin (r)19
orarootagent.bin 222
init.ohasd (r)1
11
I/O-Fencing in
Exadata Storage
diskmon.bin CTSSoctssd.bin (r)
Cluster Time
Synchronization
Service
12
evmd.binEVM13
evmlogger.bin14
ons 224
2120
ons 1
23
Notification
Service
eONS
29
tnslsnrListener
27
DB-Instanz30tnslsnr
28
SCAN-
Listener
ASM-Instanz16
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2829
Kill Daemon 1
oclskd.bin17
oclskd.bin
Kill Daemon 2
cssdmonitor7
cssdagent.bin8
ocssd.bin10
CSS
CSSD
15 oks_wkq
acfsioerrorlog
acfs_bast[0-7]
18 oks_rbld 3x
oks_conn
asmError0
asmShutdown
26 oks_comm 3x
acfsvol0
acfsds0
acfssnap0
SCAN VIP
Node VIP
Network
GNS VIP
ACFS Registry
Ressourcen
CRS
ASM Res.?Ressourcen
DB Res.
Diskgroups
gnsd
orarootagent.bin 1
Services
GNS
Clusterware Prozesse: Die wahre Sicht
init.ohasd (r)1
# crsctl stop crs
# crsctl stop crs
hat die gleich Wirkung wie
# /etc/init.d/ohasd stop
Kontraintuitive Begriffswahl. "stop crs" stoppt nicht den
CRS-Stack, sondern den
OHASD-Stack
© 2010 science + computing agSeite 29
• Begriffsklärung
• Die Prozesse
• Die logische Sicht
• Die chronologische Sicht
• Die funktionale Sicht
• Die wahre Sicht
• Zusammenfassung
Agenda
© 2010 science + computing agSeite 30
Zusammenfassung
• Postiv:
Die Automatisierung der RAC-Verwaltung wurde in 11gR2 deutlich erweitert.
IP-Adressen werden vom GNS automatisch verwaltet,
GPnP erlaubt das automatisierte Erweitern eines RAC um neue Knoten.
ACFS lässt sich spielerisch verwalten.
• Negativ:
Der Umgang mit den Begriffen Clusterware (Stack), CRS (Stack), OHAS (STACK) ist
nicht immer stimmig.
Die Clusterware Dokumention 11.2 wirkt teilweise unvollständig.
Sehr hoher Komplexitätsgrad.
• Take Home:
Die Clusterprozesse können chronologisch, logisch (Level 1-4) oder funktional
(OHAS-Stack, CRS-Stack) betrachtet werden. Die verschiedenen Sichten lassen
sich nicht 1:1 aufeinander abbilden.
"Die frühen Prozesse", ps -ef
"die Level 1 und Level 2 Prozesse", Metalink 1053147.1
"die Prozesse des OHASD-Stacks", Clusterware Guide
beschreiben nicht das selbe, sondern nur ungefähr das gleiche.
© 2010 science + computing agSeite 31
RAC-Poster
Email: oracle@science-computing.de
Download: http://www.science-computing.de/oracle
top related