Inhalte bei einer Clusterimplementierung von IBM Connections erneut indexieren

Wenn Sie eine vollständige Neuindexierung einer Clusterimplementierung von IBM® Connections durchführen, findet die Neuindexierung im Hintergrund statt, während das System Anforderungen des vorhandenen Index verarbeitet. Nach abgeschlossener Neuindexierung können Sie zum neuen Index wechseln. Der Aktualisierungsprozess umfasst einen Ripple-Neustart der Suchknoten.

Vorbereitende Schritte

Sie müssen den wsadmin-Client verwenden, um Verwaltungsbefehle zu verwenden. Informationen zum Starten des wsadmin-Clients finden Sie unter wsadmin-Client starten.
Bei dieser Prozedur wird zum Beispiel der folgende Cluster mit drei Knoten verwendet:
  • Deployment Manager-Knoten, Hostname: connections.swg
  • Suchknoten 1, Hostname: icappnode1.swg

    Indexspeicherposition:/local/IBM/LotusConnections/data/local/search/index

  • Suchknoten 2, Hostname: icappnode2.swg

    Indexspeicherposition: /local/IBM/LotusConnections/data/local/search/index

Vorgehensweise

  1. Überprüfen Sie, ob Sie Rootberechtigungen für alle drei Server haben.
  2. Verwenden Sie die folgenden Befehle, um zu überprüfen, ob beide Suchknoten über genügend freien Plattenspeicherplatz für Basislistendateien und einen neuen Index verfügen. Erforderlich ist mindestens die dreifache Größe des aktuellen Index:
    :df -kh
    du -ksh /local/IBM/LotusConnections/data/local/search/index
  3. Erstellen Sie einen Platzhalter für den neuen Index auf Knoten 1. Führen Sie dazu die folgenden Schritte aus:
    1. Stellen Sie über SSH eine Verbindung zum Suchknoten 1 her und wechseln Sie zum Rootbenutzer.
    2. Erstellen Sie leere Verzeichnisse für die Hintergrundfunktionen für die Crawlersuche und die Indexierung:
      mkdir --parents /local/tmp/index.2014.Apr.06
      cd /local/tmp/index.2014.Apr.06
      mkdir ./backgroundCrawl ./backgroundFileExtraction ./backgroundIndex
  4. Beginnen Sie mit der Indexierung auf Knoten 1. Führen Sie dazu die folgenden Schritte aus:
    1. Stellen Sie über SSH eine Verbindung zum Deployment Manager-Knoten her und wechseln Sie zum Rootbenutzer.
    2. Starten Sie wsadmin. Geben Sie dazu die folgenden Befehle ein:
      cd /local/IBM/WebSphere8/AppServer/profiles/Dmgr01/bin 
      ./wsadmin.sh -lang jython 
      execfile("searchAdmin.py")
    3. Starten Sie die Indexierung und die Crawlersuche im Hintergrund für alle configurierten Services. Geben Sie dazu den folgenden Befehl ein:
      SearchService.startBackgroundIndex("/local/tmp/index.2014.Apr.06/ backgroundCrawl ", 
      "/local/tmp/index.2014.Apr.06/ backgroundFileExtraction ", "/local/tmp/index.2014.Apr.06/ 
      backgroundIndex ", "all_configured")
  5. Überwachen und überprüfen Sie, ob die Indexierung auf Knoten 1 abgeschlossen wird. Führen Sie dazu die folgenden Schritte aus:
    1. Stellen Sie über SSH eine Verbindung zum Suchknoten 1 her und wechseln Sie zum Rootbenutzer.
    2. Überwachen Sie den Fortschritt in der Datei SystemOut.log von Knoten 1 auf Warn- oder Fehlernachrichten. Beispiel:
      .CLFRW0577I: Search has started background crawling and indexing. 
      Index will be built in /local/tmp/index.2014.Apr.06/backgroundIndex.
    3. Wenn der Prozess ordnungsgemäß abgeschlossen wird, wird die folgende Markierungsdatei erstellt: /local/tmp/index.2014.Apr.06/ backgroundIndex/INDEX.READY
  6. Kopieren Sie den neuen Index in Knoten 2. Führen Sie dazu die folgenden Schritte aus:
    1. Stellen Sie über SSH eine Verbindung zum Suchknoten 2 her und wechseln Sie zum Rootbenutzer.
    2. Geben Sie die folgenden Befehle ein:
      mkdir /local/tmp/index.2014.Apr.06
      scp -r root@icappnode1:/local/tmp/index.2014.Apr.06/backgroundIndex /local/tmp/index.2014.Apr.06/
      Anmerkung: Bei diesem Schritt wird der aktive Index nicht ersetzt.
  7. Bereiten Sie die Ersetzung des aktiven Index vor. Führen Sie dazu die folgenden Schritte auf dem Deployment Manager-Knoten aus:
    1. Zeichnen Sie alle aktivierten Indexierungstasks auf. Geben Sie dazu den folgenden Befehl ein:
      SearchService.listTasks()
    2. Inaktivieren Sie alle aktivierten Indexierungstasks. Geben Sie dazu den folgenden Befehl für jede aktivierte Task ein:
      SearchService.disableTask("taskname")
    3. Vergewissern Sie sich, dass keine Tasks mehr aktiv sind. Der folgende Befehl sollte in einer leeren Ausgabe resultieren:
      SearchService.listRunningTasks()
  8. Ersetzen Sie den aktiven Index auf Knoten 1. Führen Sie dazu die folgenden Schritte aus:
    1. Stoppen Sie den WebSphere Application Server auf Suchknoten 1.
    2. Verschieben Sie den Originalindex aus der aktiven Position. Geben Sie dazu den folgenden Befehl ein:
      mv /local/IBM/LotusConnections/data/local/search/index/* 
      /local/IBM/LotusConnections/data/local/search/index.previous
    3. Verschieben Sie den neuen Index an die aktive Position. Geben Sie dazu den folgenden Befehl ein:
      mv /local/tmp/index.2014.Apr.06/backgroundIndex/*
      /local/IBM/LotusConnections/data/local/search/index 
    4. Starten Sie WebSphere Application Server auf Suchknoten 1.
  9. Ersetzen Sie den aktiven Index auf Knoten 2. Führen Sie dazu die folgenden Schritte aus:
    1. Stoppen Sie WebSphere Application Server auf Suchknoten 2.
    2. Verschieben Sie den Originalindex aus der aktiven Position. Geben Sie dazu den folgenden Befehl ein:
      mv /local/IBM/LotusConnections/data/local/search/index/*
      /local/IBM/LotusConnections/data/local/search/index.previous
    3. Verschieben Sie den neuen Index an die aktive Position. Geben Sie dazu den folgenden Befehl ein:
      mv /local/tmp/index.2014.Apr.06/backgroundIndex/*
      /local/IBM/LotusConnections/data/local/search/index  
    4. Starten Sie WebSphere Application Server auf Suchknoten 2.
  10. Nehmen Sie die Indexierung über den neuen Index wieder auf. Gehen Sie dazu wie folgt vor:
    1. Schließen Sie wsadmin auf dem Deployment Manager-Knoten und öffnen Sie ihn erneut. Geben Sie die folgenden Befehle ein:
      cd /local/IBM/WebSphere8/AppServer/profiles/Dmgr01/bin
      ./wsadmin.sh -lang jython   
      execfile("searchAdmin.py")
    2. Löschen Sie alle Traces des vorherigen Index aus der Datenbank. Geben Sie dazu den folgenden Befehl ein:
      SearchService.notifyRestore("true")
    3. Aktivieren Sie alle Tasks. Geben Sie für jede Task, die Sie zuvor inaktiviert haben, den folgenden Befehl ein:
      SearchService.enableTask("taskname");