Funktionsweise des GIS-Servers
ArcGIS Server besteht aus mehreren Komponenten, die auf mehrere Rechner verteilt werden können. Jede Komponente des ArcGIS Server-Systems erfüllt eine bestimmte Funktion bei der Verwaltung, Aktivierung und Deaktivierung sowie bei der Lastverteilung der Ressourcen, die einer Gruppe von Services zugewiesen sind.
Die Komponenten von ArcGIS Server können folgendermaßen zusammengefasst werden:
- GIS-Server – Hostet und führt Services aus. Der GIS-Server besteht aus einem SOM-Computer (Server Object Manager) und mindestens einem SOC-Computer (Server Object Container).
- Webserver – Hostet Webanwendungen und Web-Services, die die auf dem GIS-Server ausgeführten Objekte verwenden.
- Clients – Mit Webbrowsern kann eine Verbindung mit Webanwendungen hergestellt werden, die auf dem Webserver ausgeführt werden. Desktop-Anwendungen können über HTTP (HyperText Transfer Protocol) eine Verbindung mit ArcGIS-Web-Services auf dem Webserver herstellen oder direkt über ein LAN bzw. WAN eine Verbindung mit dem GIS-Server aufbauen.
Zu einem ArcGIS Server-System gehören zudem eine Reihe von Services, Webanwendungen und KML-Netzwerk-Links, die auf dem Server veröffentlicht wurden, sowie eine Manager-Anwendung zum Erstellen und Verwalten dieser Elemente. Diese Gruppe aus Services und Anwendungen wird zusammen mit dem zugehörigen Web- und GIS-Server als ArcGIS Server-Instanz bezeichnet.
GIS-Server
Der GIS-Server besteht aus einem SOM (Server Object Manager) und mindestens einem SOC (Server Object Container). Mit dem SOM werden die über einen oder mehrere SOCs verteilten Services verwaltet. Wenn eine Anwendung über ein LAN oder WAN eine direkte Verbindung mit einem GIS-Server herstellt, wird zuerst eine Verbindung mit dem SOM hergestellt, der dann eine freie Service-Instanz sucht, die dem Client für die Lebensdauer der Transaktion zugewiesen werden soll.
Die SOCs hosten die vom SOM verwalteten Services. Alle Services werden auf allen SOC-Computern ausgeführt. Daher ist es wichtig, dass alle SOC-Computer Zugriff auf die zum Ausführen der einzelnen Services notwendigen Ressourcen und Daten haben. Sie können den Kapazitätswert eines SOC-Computers festlegen und so die Anzahl von laufenden Service-Instanzen einschränken, die gleichzeitig gehostet werden können.
Jeder SOC-Computer kann mehrere SOC-Prozesse hosten. In jedem SOC-Prozess können mehrere Service-Instanzen derselben Service-Konfiguration ausgeführt werden. Der SOM koordiniert das Starten und Beenden von SOC-Prozessen mit dem ArcSOCMon-Prozess, der den Status der Container-Prozesse verwaltet, falls die Verbindung zum SOM getrennt wird oder der SOM unerwartet ausfällt. Die in den SOC-Prozessen gehosteten Objekte sind ArcObjects-Komponenten, die im Zuge der Installation von ArcGIS Server auf dem SOC-Computer installiert werden.
SOM, ArcSOCMon und SOC sind Prozesse, die auf einem Computer ausgeführt werden. Ein einzelner Computer kann in einer ArcGIS Server-Konfiguration sowohl als SOM als auch als SOC fungieren. Alle zu einer ArcGIS Server-Konfiguration gehörigen Computer verfügen über einen ArcSOCMon-Prozess. Gegebenenfalls können der Webserver und das Web Application Develope Framework (ADF) neben dem SOM und dem SOC ausgeführt werden. Das heißt, ArcGIS Server kann auf nur einem Computer bereitgestellt werden. Dieser Typ der Konfiguration ist zu Entwicklungs- und Testzwecken sowie für kleine Bereitstellungen nützlich.
Serververzeichnisse
Der Server verwaltet verschiedene Arten von Verzeichnissen, in denen Dateien gespeichert werden, die zur einwandfreien Funktionsweise des Servers erforderlich sind.
- In Ausgabeverzeichnissen werden vom Server benötigte temporäre Dateien gespeichert. Gelegentlich werden diese Dateien als Ausgabe, wie z. B. als Bilder von Karten, an die Benutzer zurückgegeben. Für einige Arten von Services wie Geodaten-Services sind Ausgabeverzeichnisse erforderlich. Für andere Services sind sie optional oder nicht erforderlich.
- In Cache-Verzeichnissen werden Caches mit vorab gerenderten Bildern gespeichert, mit denen die Anzeigegeschwindigkeit von Karten- und Globusdaten-Services erhöht werden kann. Weitere Informationen hierzu finden Sie unter Was ist Karten-Caching? und unter Funktionsweise von Globe-Caches erfahren Sie mehr über das Caching.
- Im Auftragsverzeichnis werden die von Geoverarbeitungs-Services benötigten Dateien gespeichert. Bei der Geoverarbeitung ist oft Speicherplatz für temporäre Dateien und Informationen zu laufenden Aufträgen erforderlich. Diese Elemente werden im Auftragsverzeichnis gespeichert.
- Das Eingabeverzeichnis enthält Karten-Service-Definitionsdateien (MSD), die erstellt werden, wenn Sie einen Service von ArcMap mit der Werkzeugleiste "Karten-Service-Publishing" veröffentlichen.
- Im Indexverzeichnis werden von Such-Services generierte Indexdateien gespeichert. Diese Indizes können später verwendet werden, um GIS-Ressourcen innerhalb der Organisation schnell zu finden. Weitere Informationen zum Index und dessen Generierung finden Sie unter Such-Services.
Prozesse, die vom GIS-Server gestartet werden
Die Windows-Dienste ArcGIS Server Object Manager und ArcGIS SOC Monitor bilden den GIS-Server. Der ArcGIS Server Object Manager-Service startet die folgenden Prozesse, die auf einem funktionierenden GIS-Server stets ausgeführt werden, selbst wenn alle GIS-Services beendet wurden:
ArcSOM.exe – 1 Instanz
- Server Object Manager-Prozess – Fungiert als Broker für Anforderungen an die verschiedenen Services
ArcSOC.exe – 1 Instanz
- Serververzeichnis-Manager – Bereinigt die ArcGIS Server-Verzeichnisse
Der Serververzeichnis-Manager-Prozess kann auf jedem SOC-Computer erstellt werden und unterscheidet sich von anderen ArcSOC.exe-Prozessen nur durch seine Größe. Der Verzeichnisprozess ist im Allgemeinen kleiner als die ArcSOC.exe-Prozesse, die GIS-Services darstellen.
Der ArcGIS SOC Monitor-Service ist auf jedem Computer einer ArcGIS Server-Bereitstellung vorhanden. Dieser Service ist dafür zuständig, den folgenden Prozess auf jedem Computer zu starten, und wird auf einem fehlerfreien GIS-Server stets ausgeführt:
ArcSOCMon.exe – 1 Instanz pro Computer (auch auf einem eigenständigen SOM-Computer, aber nicht auf einem eigenständigen Web-Services-Computer)
- Der SOC-Monitorprozess ArcSOCMon.exe handhabt das Lesen und das Schreiben von ArcGIS Server-Protokollen und überwacht den Status von ArcSOC.exe-Prozessen, die auf einem SOC-Computer ausgeführt werden. Dies erleichtert das Wiederherstellen der ArcGIS Server-Bereitstellung in Fällen, in denen die Verbindung zwischen SOM und den mit ihm verknüpften SOC-Computern durch einen Netzwerk- oder Hardwarefehler getrennt wird. Wenn die Verbindung des SOMs erneut hergestellt wird, müssen die ausgeführten SOC-Instanzen nicht neu gestartet werden, sondern können stattdessen einfach erneut zugeordnet werden.
Möglicherweise wird Ihnen auffallen, dass Prozesse namens ArcSOMP.exe und ArcSOCP.exe auf dem Computer ausgeführt werden. Trotz dieser bekannt aussehender Namen sind diese Prozesse nicht Bestandteil von ArcGIS Server. Sie werden von ArcGIS Desktop erstellt und verwendet, damit Geoverarbeitungswerkzeuge im Hintergrund ausgeführt werden können, während Sie andere Tasks ausführen.
Überwachen des Status von SOC-Computern
SOM und ArcSOCMon überwachen zusammen die SOCs, die sie steuern, um herauszufinden, ob diese über eine ordnungsgemäße Verbindung verbunden sind. Wenn die Verbindung zwischen einem ArcGIS Server-SOC-Computer und dem SOM durch einen zeitweiligen Netzwerkfehler oder das Herunterfahren des SOC-Computers unterbrochen oder getrennt wird, versucht der SOM-Computer zuerst, die Verbindung mit dem SOC-Computer wiederherzustellen, und dann markiert er den SOC-Computer als deaktiviert. Deaktivierte Computer werden in regelmäßigen Abständen abgefragt, um zu sehen, ob sie ausgeführt werden und dem Server wieder hinzugefügt werden können.
Sie können dieses Abfrageverhalten zu einem bestimmten Grad steuern, indem Sie die <MachinePing*>Tags in der Datei Server.dat bearbeiten. Weitere Informationen zur Datei Server.dat und den Bedeutungen dieser Tags finden Sie unter Serverkonfigurationsdateien.
Wenn ein Computer deaktiviert werden soll, werden alle Service-Instanzen, die er gehostet hat, anderen SOC-Computern im ArcGIS Server neu zugewiesen. Wenn der deaktivierte SOC-Computer wieder aktiviert werden soll, wird er dem ArcGIS Server erneut hinzugefügt und es werden wieder Service-Instanzen an den Computer verteilt.
Wenn der SOM selbst durch einen Netzwerk- oder Hardwarefehler deaktiviert wird, dann hält der ArcSOCMon-Prozess die ArcSOC.exe-Prozesse am Laufen, bis der SOM erneut verbunden oder neu gestartet werden kann.
Webserver
Der Webserver hostet Webanwendungen und Web-Services. Beispiele für Webanwendungen sind Anwendungen für die Kartenerstellung und Anwendungen für die entkoppelte Bearbeitung sowie alle anderen Anwendungen, die ArcObjects nutzen und für Webbrowser geeignet sind.
Web-Services können beispielsweise Karten- und Geokodierungs-Services verfügbar machen, mit denen Desktop-GIS-Benutzer eine Verbindung herstellen und die über das Internet verwendet werden können. Sie können Ihre eigenen nativen Web-Services erstellen, deren Parameter zwar keine ArcObjects-Typen sind, die jedoch eine bestimmte GIS-Funktion erfüllen. Beispiel: Sie können den Web-Service "NächstesKrankenhausSuchen" programmieren, der X- und Y-Koordinaten als Eingabe akzeptiert und ein anwendungsdefiniertes Krankenhausobjekt mit Eigenschaften wie Adresse, Name und Anzahl der Betten zurückgibt.
Webanwendungen stellen innerhalb der Organisation über das LAN eine Verbindung mit GIS-Servern her. Daher kann die Webanwendung bzw. der Web-Service als Client des GIS-Servers bezeichnet werden. Benutzer stellen über das Internet bzw. das Intranet eine Verbindung mit Webanwendungen und Web-Services her. Die gesamte Logik der Webanwendung wird jedoch auf dem Webserver ausgeführt und sendet HTML (Hypertext Markup Language) an den Browser-Client. Die Webanwendung selbst nutzt Objekte und Funktionen des GIS-Servers. Auf diese Weise können Webanwendungen entwickelt werden, die ArcObjects auf dem Server so nutzen wie Desktopanwendungen, die im Client-/Servermodus über das LAN bzw. WAN eine Verbindung mit dem GIS-Server herstellen.
Wenn Benutzer mit dem Browser interagieren, werden Anforderungen an die Webanwendung gesendet, die wiederum Anforderungen an den SOM sendet. Der SOM gibt einen Proxy für ein Serverobjekt bzw. für Serverobjekte zurück, die auf dem GIS-Server ausgeführt werden. Die Webanwendung arbeitet über den Proxy so mit dem Objekt, als wäre dieses Teil des Webanwendungsprozesses. Die gesamte Ausführung findet jedoch auf dem GIS-Server statt.
Clients
Clients eines ArcGIS Server-Systems können folgende Komponenten aufweisen:
Webbrowser
Jede Person, die über einen Webbrowser und eine Internetverbindung verfügt, kann mit einer geeigneten Webanwendung GIS-Tasks mit Services durchführen. Die Web ADFs für .NET- und Java – sowie die ArcGIS-APIs für JavaScript, Flex und Silverlight – stellen Werkzeuge zum Erstellen von Webanwendungen bereit, die Services nutzen. Die Endbenutzer dieser Webanwendungen müssen weder über GIS-Software noch über ArcObjects auf ihrem Computer verfügen.
ArcGIS Explorer
ArcGIS Explorer ist eine freie, einfache Desktop-Anwendung für Datenvisualisierung und Navigation. Um das Navigieren und Darstellen von Daten zu erleichtern, können Sie die ArcGIS Server-Services in ArcGIS Explorer als Daten hinzufügen. Für erweiterte Funktionalität können Sie mit dem ArcGIS Explorer SDK benutzerdefinierte Tasks entwickeln, die mit den Services funktionieren.
ArcGIS Desktop
Mit ArcGIS Desktop können Sie Verbindungen mit ArcGIS Server-Services herstellen. Zu den Anwendungen, die auf Services zugreifen können, gehören ArcMap, ArcCatalog, ArcGlobe und ArcReader.
Mit ArcCatalog oder dem Fenster Katalog in ArcMap können Sie im LAN oder WAN eine Verbindung mit einem GIS-Server herstellen. Sie können außerdem den URL eines GIS-Servers bzw. eines bestimmten Web-Services angeben, um über das Internet eine Verbindung mit einem GIS-Server herzustellen.
GIS-Serveradministratoren können zudem mit ArcCatalog eine Reihe von Services und ihre Eigenschaften verwalten. Administratoren können über das LAN/WAN eine Verbindung mit dem GIS-Server herstellen und mit ArcCatalog Services hinzufügen bzw. entfernen und festlegen, wie Services ausgeführt werden sollen (Services können nicht über das Internet verwaltet werden). Darüber hinaus legen Administratoren die Containercomputer fest, die für die Server verfügbar sind, sowie die Verzeichnisse, in die Server ihre Ausgabe schreiben können.
ArcGIS Engine-Anwendungen
ArcGIS Engine-Anwendungen können den GIS-Server auf verschiedene Weise nutzen. Am einfachsten ist dabei die Verwendung von Services in Form von Daten in Karten- oder Globe-Dokumenten. ArcGIS Engine-Entwickler können auch Anwendungen programmieren, die Daten für komplexe Tasks wie räumliche Analysen, für die nur auf dem Server lizenzierte Erweiterungen erforderlich sind, an den GIS-Server senden. Umgekehrt kann die Anwendung auch Daten vom Server anfordern, um Editiervorgänge und Analysen in der Benutzeroberfläche der ArcGIS Engine-Anwendung zu ermöglichen.
Instanzen von ArcGIS Server
Bei einer ArcGIS Server-Instanz handelt es sich um eine Gruppierung aus einem Webserver, einem zugehörigen GIS-Server und einer Reihe von Services und Anwendungen. Mit ArcGIS Server wird standardmäßig eine Instanz namens ArcGIS installiert. Sie können jedoch weitere Instanzen hinzufügen. In großen Bereitstellungen können mehrere ArcGIS Server-Instanzen die Aufteilung von Ressourcen auf verschiedene Abteilungen innerhalb der Organisation erleichtern. Es sollte beachtet werden, dass die Begriff Instanz auch häufig verwendet wird, wenn von einzelnen Service-Konfigurationen die Rede ist. (Beispiel:"Der Server hat drei Instanzen des Karten-Service erstellt."). Diese Art von Instanzen sollte nicht mit der ArcGIS Server-Instanz verwechselt werden.
Die Instanz ist physisch auf dem Datenträger als Ordner im virtuellen Stammverzeichnis vorhanden. Dieser Ordner kann virtuelle Verzeichnisse enthalten, die Manager und die SOAP- und REST-Endpunkte von Services, die von der Instanz ausgeführt werden, verfügbar machen. Die Instanz kann auch andere Ressourcen, z. B. KML-Netzwerk-Links, verfügbar machen. Bei einer Standardinstallation können Sie das anzeigen, was in einer Instanz enthalten ist, indem Sie zu C:\Inetpub\wwwroot\ArcGIS navigieren.
Eine Instanz kann entweder Services Manager, Applications Manager oder beide Komponenten (was es Ihnen ermöglichen würde, in Manager sowohl Services zu verwalten als auch und Webanwendungen zu erstellen) enthalten. Eine Instanz kann potenziell auch keinen Manager enthalten, wenn Sie beabsichtigen, eine Instanz zu erstellen, die nur die Web-Services-Komponente der Installation verfügbar macht.
Um eine neue Instanz zu erstellen, verwenden Sie das Werkzeug "ArcGIS Instance Administrator", das Sie finden unter <ArcGIS-Installationspfad>\DotNet\AddInstance.exe. Sie müssen den Namen der neuen Instanz, deren Portnummer, den verwendeten SOM-Computer sowie den Namen und das Kennwort für das ArcGIS-Web-Services-Konto angeben.
Wenn die neue Instanz eine Manager-Komponente enthält, wird im Startmenü von Windows eine neue Verknüpfung zum Manager angezeigt. Der Name der neuen Instanz wird auch zum Aufbau einer Verbindung mit ihren Web-Services verwendet, da der URL zum Herstellen einer Verbindung mit ArcGIS Server über das Internet "http://<Servername>/<Instanzname>/services" lautet.
Netzwerkumgebungen
ArcGIS Server kann in Windows-Domänen- oder Windows-Arbeitsgruppenumgebungen ausgeführt werden.
Wenn Sie ArcGIS Server in einer Windows-Arbeitsgruppenumgebung verwenden, müssen Sie die folgenden Schritte ausführen, um eine ordnungsgemäße Authentifizierung gegenüber dem GIS-Server sicherzustellen:
- Alle Benutzer müssen lokale Benutzer sein. Alle während der GIS-Server-Postinstallation definierten Konten (SOC-Konto, SOM-Konto und ArcGIS-Web-Services-Konto) und alle Benutzer, die den Gruppen agsusers oder agsadmin hinzugefügt werden, müssen lokale Benutzer sein.
- Für diese lokalen Benutzerkonten müssen auf allen Computern derselbe Benutzername und dasselbe Kennwort (Groß-/Kleinschreibung wird beachtet) verwendet werden.
- Die lokalen Sicherheitseinstellungen müssen wie folgt gegenüber den Standardeinstellungen geändert werden:
- Navigieren Sie zu Systemsteuerung > Verwaltung > Lokale Sicherheitsrichtlinie.
- Klicken Sie im linken Kataloginhaltsverzeichnis auf Sicherheitseinstellungen > Lokale Richtlinien > Sicherheitsoptionen.
- Doppelklicken Sie auf Netzwerkzugriff: Modell für gemeinsame Nutzung und Sicherheitsmodell für lokale Konten.
- Klicken Sie auf Klassisch - lokale Benutzer authentifizieren sich als sie selbst und anschließend auf OK.