Kommentare ausblenden
Kommentare ausblenden

Kommentare (0)

Alle benötigten Software-Komponenten können von der WebOffice10.9-DVD unter WebOffice10.9-DVD\Software\WebOffice FTS-Index\Solr Cloud kopiert werden:

WebOffice_FTS-Index_Setup.msi

zookeeper.zip

WebOffice_config.zip

 

Die Schritte unterteilen sich in folgende Abschnitte:

 

1.Zookeeper Ensemble installieren

a.Zookeeper entpacken

b.ID der Zookeeper Instanz anpassen

c.Konfiguration des Zookeeper Servers anpassen

d.Konfiguration des Windows Service anpassen

e.Windows Service für Zookeeper installieren

f.Verifizieren, dass alle Instanzen in das Zookeeper Quorums eingebunden sind

 

2.SolrCloud installieren

a.WebOffice FTS-Index (sprich: eine Solr Instanz) installieren

b.Root-Verzeichnis in Zookeeper erstellen

c.Konfiguration der Collection WebOffice in Zookeeper ablegen

d.FTS-Index mit dem Zookeeper-Ensemble verbinden („Cloud-Modus“)

e.Solr Collection WebOffice erstellen und auf alle FTS-Instanzen verteilen

i.http-Szenario

ii.https-Szenario

1. Zookeeper Ensemble installieren

Zookeeper entpacken

Für Zookeeper gibt es keine Setup.exe-Datei. Es genügt den Ordner WebOffice Zookeeper aus zookeeper.zip an den Gewünschten Ort zu entpacken (z.B. C:\Program Files (x86)\VertiGIS\WebOffice Zookeeper).

Verzeichnis WebOffice Zookeeper entpackt

Verzeichnis WebOffice Zookeeper entpackt

icon_warning

ACHTUNG!

Der Ordner WebOffice Zookeeper enthält zwei Instanzen. Wenn (unserer Empfehlung entsprechend) pro Host nur eine Instanz laufen soll, muss das Verzeichnis instance2 gelöscht werden.

Dies muss für jede Zookeeper Instanz einzeln durchgeführt werden.

ID der Zookeeper Instanz anpassen

Jede Zookeeper Instanz eines Ensembles hat eine eigene Ganzzahl-ID. Diese ID muss über alle beteiligten Hosts hinweg eindeutig sein, unabhängig davon wie viele Instanzen auf einer einzelnen Maschine installiert sind.

 

Die ID wird an folgenden Stellen hinterlegt:

Die Datei instance1/data/myid muss als Inhalt die ID haben

Das Verzeichnis instance1 wird umbenannt nach instance{ID}
 

Konfiguration der Instanz mit der ID 3

Konfiguration der Instanz mit der ID 3

icon_warning

ACHTUNG!

Dies muss für jede Zookeeper Instanz einzeln durchgeführt werden.

Konfiguration des Zookeeper Servers anpassen

In der Datei Zookeeper/instance{ID}/conf/zoo.cfg muss der Port der Instanz sowie die Beschreibung des gesamten Ensembles angepasst werden.

icon_comment

Die Liste der Instanzen des Quorums ist für alle Instanzen identisch. Die Listeneinträge setzen sich wie folgt zusammen:

server.{ID}={Hostname bzw. IP}:{ZK_QUORUM Port}:{ZK_ELECTION Port}

 

Der clientPort (ZK_CLIENT) kann für jede Instanz individuell festgelegt werden. Wenn alle Instanzen auf einem eigenen Host laufen, macht es jedoch Sinn überall denselben ZK_CLIENT zu verwenden.

Konfiguration in Datei "zoo.cfg"

Konfiguration in Datei "zoo.cfg"

 

icon_warning

ACHTUNG!

Dies muss für jede Zookeeper Instanz einzeln durchgeführt werden.

Konfiguration des Windows Service anpassen

In der Datei Zookeeper/instance{ID}/conf/wrapper.conf kann konfiguriert werden wie der Windows Service heißen soll mit dem Zookeeper gestartet wird.

icon_comment

Der Wert wrapper.ntservice.name ist ein technischer Name. Falls mehrere Zookeeper Instanzen auf demselben Host laufen, muss dieser Name für jede Instanz eineindeutig sein.

 

Konfiguration in Datei "wrapper.conf"

Konfiguration in Datei "wrapper.conf"

icon_warning

ACHTUNG!

Dies muss für jede Zookeeper Instanz einzeln durchgeführt werden.

Windows Service für Zookeeper installieren

Auf dem Rechner muss unter Erweiterte Systemeinstellungen > Umgebungsvariablen die Systemvariable ZOOKEEPER_HOME auf den Installationspfad gesetzt werden.

Systemvariable ZOOKEEPER_HOME

Systemvariable ZOOKEEPER_HOME

 

In der Windows Eingabeaufforderung (cmd.exe, mit Administratorberechtigung) kann über das Script C:\Program Files (x86)\VertiGIS\WebOffice Zookeeper\instance{ID}\bin\windows-x86-64\InstallNTService.bat ein Windows Dienst erstellt werden.

Windows Service installieren und starten

Windows Service installieren und starten

Der Dienst kann anschließend über das Skript StartNTService.bat oder über die Liste der Dienste gestartet werden.

icon_comment

Voraussetzung für das Starten dieses Dienstes ist eine Installation von Java auf der jeweiligen Zookeeper Maschine.

 

Windows Service für Zookeeper

Windows Service für Zookeeper

icon_warning

ACHTUNG!

Dies muss für jede Zookeeper Instanz einzeln durchgeführt werden.

Verifizieren, dass alle Instanzen in das Zookeeper Quorums eingebunden sind

Nachdem alle Zookeeper Services gestartet worden sind, ist es sinnvoll zu verifizieren, dass alle Instanzen auch wie erwartet erreichbar sind.

 

Dies kann z.B. mit den Tools netstat.exe, telnet.exe oder nc.exe gemacht werden.

icon_cross-reference

Zusätzliche Informationen dazu in Kapitel Netzwerktools.

icon_warning

ACHTUNG!

Dies muss für jede Zookeeper Instanz einzeln durchgeführt werden.

2. SolrCloud installieren

WebOffice FTS-Index (sprich: eine Solr Instanz) installieren

Eine FTS-Index Instanz kann wie gewohnt über das Setup (WebOffice_FTS-Index_Setup.msi) installiert werden.

icon_cross-reference

Zusätzliche Informationen dazu befinden sich im Kapitel Installation von WebOffice FTS-Index.

icon_warning

ACHTUNG!

Für das Load-Balancing muss die Security-Einstellung (IP-Filtering) der FTS-Index Instanzen angepasst werden. Konkret muss die IP des Rechners, auf welchem der LoadBalancer läuft, in der Datei server/etc/jetty-ipfilter.xml von allen beteiligten Solr-Instanzen eingetragen werden, damit der Zugriff erlaubt wird.

Eine Anleitung dazu befindet sich im Kapitel Konfiguration von WebOffice FTS-Index.

icon_warning

ACHTUNG!

Dies muss für jede Solr Instanz einzeln durchgeführt werden.

Root-Verzeichnis in Zookeeper erstellen

Zookeeper legt die zu synchronisierenden Konfigurationen nicht auf dem Dateisystem ab, sondern hält sie im Memory.

Mit solr.cmd ist es möglich in Zookeeper aufzulisten, Verzeichnisse anzulegen oder zu löschen.

Es ist dabei nicht entscheidend an welche Instanz des Zookeeper Ensembles der Befehl abgesetzt wird.

 

Auflisten der Elemente im root von Zookeeper:

WebOffice FTS-Index\bin\solr.cmd zk ls / -z localhost:12181

 

Die Konfigurationen für Solr sollen von anderen Elementen getrennt abgelegt werden, dafür wird ein neues Verzeichnis „/solr“ angelegt:

WebOffice FTS-Index\bin\solr.cmd zk mkroot /solr -z localhost:12181

 

Verzeichnis für Solr Konfigurationen in Zookeeper erstellen

Verzeichnis für Solr Konfigurationen in Zookeeper erstellen

 

icon_warning

ACHTUNG!

Dies muss NUR EINMAL durchgeführt werden. Die Änderungen werden automatisch auf die anderen Zookeeper Instanzen synchronisiert.

Konfiguration der Collection WebOffice in Zookeeper ablegen

Der Ordner WebOffice_config kann in einem temporären Verzeichnis (z.B. C:\Temp\WebOffice_config) entpackt werden und wird dann in den Speicher von Zookeeper hochgeladen.

icon_warning

ACHTUNG!

Der Pfad des temporären Verzeichnisses darf keine Sonderzeichen oder Leerzeichen enthalten.

 

Die temporär entpackten Daten werden mit dem folgenden Befehl hochgeladen:

solr.cmd zk upconfig -n WebOffice -d C:/Temp/WebOffice_config -z localhost:12181/solr

 

icon_warning

ACHTUNG!

Der Parameter -z muss in der Form [Postname/IP][Port][Root] angegeben werden. Der Wert „/solr“ ist dabei entscheidend, da sonst die hochgeladenen Konfigurationen nicht im gewünschten Verzeichnis landen und später von den FTS-Index Instanzen nicht gefunden werden.

 

Hochladen der WebOffice Konfiguration nach Zookeeper

Hochladen der WebOffice Konfiguration nach Zookeeper

 

Mit dem Befehl ls kann überprüft werden welche Konfigurationen in Zookeeper vorhanden sind:

solr.cmd zk ls /solr -r -z localhost:12181

 

icon_comment

Die Konfiguration von FTS-Index wird nun zentral innerhalb von Zookeeper verwaltet.

Das lokale Konfigurations-Verzeichnis WebOffice FTS-Index/server/solr/WebOffice kann daher gelöscht werden. Beachten Sie dabei, dass das Windows Service WebOffice FTS-Index gestoppt sein muss.

Es wird im Cloud-Modus nicht benötigt und führt daher höchstens zu Verwirrung.

Ebenso kann das temporäre Verzeichnis (z.B. C:\Temp\WebOffice_config) gelöscht werden.

icon_warning

ACHTUNG!

Dies muss NUR EINMAL durchgeführt werden. Die Änderungen werden automatisch auf die anderen Zookeeper Instanzen synchronisiert.

FTS-Index mit dem Zookeeper-Ensemble verbinden („Cloud-Modus“)

In der Datei FTS-Index/bin/solr.in.cmd wird im Parameter ZK_HOST einerseits die Liste aller Zookeeper Instanzen des Ensembles und abschließend auch das neu erstellte /solr-Verzeichnis angegeben, wo die Konfigurationen abgelegt werden sollen.

icon_comment

Geben Sie die IP-Adressen der jeweiligen Zookeeper Hosts an.

 

set ZK_HOST=server1:12181,server2:12181,server3:12181/solr

 

Konfiguration für "Cloud" -Modus in Datei "solr.in.cmd"

Konfiguration für "Cloud" -Modus in Datei "solr.in.cmd"

 

icon_warning

ACHTUNG!

Es ist darauf zu achten, dass jede einzelne Zookeeper Instanz aufgelistet ist (und nicht eine Zookeeper Instanz mehrmals), da andernfalls keine Ausfallsicherheit garantiert ist.

Ebenso ist es entscheidend den Pfad „/solr“ am Ende anzugeben, damit die hochgeladenen Konfigurationen gefunden werden können.

 

Der Windows Dienst WebOffice FTS-Index (Port 8983) muss nun neu gestartet werden und befindet sich ab dann im Cloud-Modus. Dies ist daran erkennbar, dass im Solr Webinterface der Menüeintrag Cloud zur Verfügung steht.

Außerdem sind keine Collections oder Cores definiert, da die Konfiguration nun von Zookeeper bezogen wird.

Solr WebInterface im "Cloud"-Modus

Solr WebInterface im "Cloud"-Modus

 

icon_warning

ACHTUNG!

Dies muss für jede Solr Instanz mit installiertem WebOffice FTS-Index einzeln durchgeführt werden.

 

Die abschließende Konfiguration ist abhängig davon, ob Sie WebOffice FTS-Index in einem http oder https-Szenario verwenden.

Fahren Sie bei Punkt B) fort, wenn die Konfiguration in einem https-Szenario erfolgen soll.

A) Solr Collection „WebOffice“ erstellen und auf alle FTS-Instanzen verteilen (http-Szenario)

Nun wird aus dem bereits hochgeladenen Konfigurationsset eine neue Collection erstellt und diese wird auf alle verfügbaren FTS-Instanzen repliziert.

solr.cmd create -p 8983 -c WebOffice -n WebOffice -shards 1 -replicationFactor 2

 

Erstellung der Collection WebOffice auf zwei verfügbaren Solr Instanzen

Erstellung der Collection WebOffice auf zwei verfügbaren Solr Instanzen

 

icon_comment

Die Warnung WARNING: Using _default configset … erscheint durch ein Bug in Solr und kann vernachlässigt werden wenn darauffolgend die zu erwartenden Meldungen Re-using existing configuration … und Created collection … angezeigt werden.

icon_warning

ACHTUNG!

Dies muss NUR EINMAL durchgeführt werden. Die Änderungen werden automatisch auf die anderen Zookeeper Instanzen synchronisiert.

 

Im Solr WebInterface kann unter dem Menüpunkt Cloud überprüft werden, ob die Erstellung erfolgreich war:

http://localhost:8983/solr/#/~cloud

Menüpunkt "Nodes": Zeigt alle beteiligten Solr-Instanzen an

Menüpunkt "Nodes": Zeigt alle beteiligten Solr-Instanzen an

 

Menüpunkt "Graph": Die Collection "WebOffice" ist auf zwei Solr Knoten repliziert

Menüpunkt "Graph": Die Collection "WebOffice" ist auf zwei Solr Knoten repliziert

 

 

B) Solr Collection „WebOffice“ erstellen und auf alle FTS-Instanzen verteilen (https-Szenario)

Voraussetzung hierfür ist eine konfigurierte verschlüsselte Verbindung via SSL/TLS, welches im Kapitel Konfiguration von WebOffice FTS-Index beschrieben ist.

icon_comment

Alle beteiligten Zookeeper Hostnamen bzw. IP-Adressen müssen im verwendeten SSL/TLS-Zertifikat als Subject Alternative Name (SAN) gelistet sein. Ansonsten kann der SSL-Handshake nicht erfolgreich durchgeführt werden.

 

Im Falle einer https-Kommunikation zwischen den Zookeeper-Instanzen muss folgender Befehl in der Eingabeaufforderung (CMD) abgesetzt werden:

WebOffice FTS-Index\server\scripts\cloud-scripts\zkcli.bat -zkhost server1:12181,server2:12181,server3:12181/solr -cmd clusterprop -name urlScheme -val https

 

wo_fts_application_cloud_install15

icon_cross-reference

Für mehr Details siehe auch Apache Solr Reference Guide.

 

Nun kann aus dem bereits hochgeladenen Konfigurationsset eine neue Collection erstellt werden, welche auf alle verfügbaren FTS-Instanzen repliziert wird.

solr.cmd create -p 8983 -c WebOffice -n WebOffice -shards 1 -replicationFactor 2

 

Erstellung der Collection WebOffice auf zwei verfügbaren Solr Instanzen

Erstellung der Collection WebOffice auf zwei verfügbaren Solr Instanzen

 

icon_comment

Die Warnung WARNING: Using _default configset … erscheint durch ein Bug in Solr und kann vernachlässigt werden wenn darauffolgend die zu erwartenden Meldungen Re-using existing configuration … und Created collection … angezeigt werden.

icon_warning

ACHTUNG!

Dies muss NUR EINMAL durchgeführt werden. Die Änderungen werden automatisch auf die anderen Zookeeper Instanzen synchronisiert.

 

Im Solr WebInterface kann unter dem Menüpunkt Cloud überprüft werden, ob die Erstellung erfolgreich war:

https://localhost:8983/solr/#/~cloud

Menüpunkt "Nodes": Zeigt alle beteiligten Solr-Instanzen an

Menüpunkt "Nodes": Zeigt alle beteiligten Solr-Instanzen an

 

Menüpunkt "Graph": Die Collection "WebOffice" ist auf zwei Solr Knoten repliziert

Menüpunkt "Graph": Die Collection "WebOffice" ist auf zwei Solr Knoten repliziert

Kommentare (0)

Ⓒ Copyright 2022 by VertiGIS GmbH