Alfresco Upgrade / Update Prozedur

Dieses Howto beschreibt die Schritte um eine Alfresco 4.2.d Installation nach Alfresco 4.2.f zu erhöhen.

Alfresco Installation

Alfresco
2 Server 1 Server für die Alfresco Installation
1 Server für Daten und Index
Alfresco Home der “alten” Installation /opt/alfresco-4.2.d
Softlink auf Alfresco Home /opt/alfresco
Installation Default installations-Routine
Postgres-SQL Ja, Installiert über die normale Installations-Routine von Alfresco
Index SOLR
Alfresco Service Ja. Servicename “alfresco”, Installiert über die normale Installations-Routiene von Alfresco

Upgrade Prozedur

  • Stop Alfresco Server:
    sudo /opt/alfresco-4.2.d/alfresco.sh stop
  • Alfresco-Service entfernen:
  • sudo update-rc.d -f alfresco remove
  • Ich betreibe Alfresco auf zwei ESXi Servern. Sobald Alfresco gestopp ist, über die ESXi Konsole ein Snapshot zu erstellen. Damit könnte im Worst-Case Fall wieder auf diesen Stand zurückgefahren werden.
  • Backup der Alfresco Installation (ohne alf_data) erstellen. Das Verzeichnis alf_data befindet sich auf dem NFS-Server (Mount).
    Ein unmount durchführen:

    sudo umount ajax:/localnfs/alfresco/alf_data
  • Backup-Verzeichnis auf dem NFS-Server mounten
    sudo mount ajax:/localnfs/backup
  • Das alfresco-Verzeichnis backupen
    sudo cp -r /opt/alfresco-4.2.d /mnt/backup
  • alf_data wieder mounten
    sudo mount ajax:/localnfs/alfresco/alf_data
  • Auf der alten Installation das Indexieren ausschalten:
    sudo vi /opt/alfresco-4.2.d/tomcat/shared/classes/alfresco-global.properties
    ### Solr indexing ###
    
    index.subsystem.name=solr
    dir.keystore=${dir.root}/keystore
    solr.port.ssl=8443

    ändern nach

    ### Solr indexing ### 
    index.subsystem.name=noindex 
    dir.keystore=${dir.root}/keystore 
    #solr.port.ssl=8443
    
    
  • Alfresco Server Starten und Stoppen (dazwischen 5min warten)
    sudo /opt/alfresco-4.2.d/alfresco.sh start && sleep 300 && sudo /opt/alfresco-4.2.d/alfresco.sh stop
  • Postgres starten
    sudo /opt/alfresco-4.2.d/alfresco.sh start postgresql
  • Die gesamte Alfresco-Datenbank dumpen
    cd /opt/alfresco-4.2.d/postgresql/bin/
    ./pg_dump -h localhost -U alfresco alfresco > /tmp/alfrescodbdump
  • Postgres stoppen
    sudo /opt/alfresco-4.2.d/alfresco.sh stop postgresql
  • Das Alfresco Start-Script löschen bzw. wegsichern.
    sudo mv /etc/init.d/alfresco /mnt/backup/alfresco-4.2.d
  • Jetzt noch, wenn nötig, alle Alfresco Log-Files sichern
  • Jetzt den neuen Alfresco-Release, in meinem Falle Alfresco-4.2.d über die installations-Routine installieren.
  • Postgres und evtl. auch JAVA mit installieren.
  • Die Installation in ein *NEUES* Verzeichnis durchführen.
  • Am besten dieselben Passwörter wie bei der alten Installation verwenden.
  • Wenn nachgefragt wird ob Share gestartet werden soll, diese Frage mit *NEIN* beantworten
    chmod +x alfresco-community-4.2.d-installer-linux-x64.bin
    sudo ./alfresco-community-4.2.f-installer-linux-x64.bin
    Language Selection
    
    Please select the installation language
    [1] English - English
    [2] French - Français
    [3] Spanish - Español
    [4] Italian - Italiano
    [5] German - Deutsch
    [6] Japanese - 日本語
    [7] Dutch - Nederlands
    [8] Russian - Русский
    [9] Simplified Chinese - 简体中文
    [10] Norwegian - Norsk bokmål
    [11] Brazilian Portuguese - Português Brasileiro
    Please choose an option [1] : 5
    ----------------------------------------------------------------------------
    Willkommen beim Alfresco Community Setup Assistenten
    
    ----------------------------------------------------------------------------
    Installationstyp
    
    [1] Einfach: Server werden mit der Standardkonfiguration installiert
    [2] Erweitert: Serverports und Diensteigenschaften werden konfiguriert.: Außerdem können optionale Komponenten für die Installation ausgewählt werden.
    Bitte wählen Sie eine Option [1] : 2
    
    ----------------------------------------------------------------------------
    Selektieren Sie die Komponenten, die Sie installieren wollen. Deselektieren Sie
    die Komponenten, die Sie nicht installieren wollen. Klicken Sie Weiter um die
    Installation fortzusetzen, wenn Sie Ihre Auswahl getroffen haben.
    
    Java [Y/n] :Y
    
    PostgreSQL [Y/n] :Y
    
    Alfresco : Y (Cannot be edited)
    
    SharePoint [Y/n] :n
    
    Web Quick Start [y/N] : N
    
    Integration von Google Docs [Y/n] :Y
    
    LibreOffice [Y/n] :Y
    
    Ist die obenstehende Auswahl richtig? [Y/n]: Y
    
    ----------------------------------------------------------------------------
    Installationsordner
    
    Bitte wählen Sie einen Ordner für die Installation von Alfresco Community aus
    
    Wählen Sie einen Ordner aus [/opt/alfresco-4.2.f]:
    
    ----------------------------------------------------------------------------
    Datenbankserver-Parameter
    
    Bitte geben Sie den Port für Ihre Datenbank ein.
    
    Datenbankserverport [5432]:
    
    ----------------------------------------------------------------------------
    Port-Konfiguration für Tomcat
    
    Bitte geben Sie die Konfigurationsparameter für Tomcat ein, die Sie verwenden
    möchten.
    
    Webserver-Domäne: [127.0.0.1]:
    
    Tomcat Serverport: [8080]: 80
    
    Tomcat Shutdown-Port: [8005]:
    
    Tomcat-SSL-Port [8443]: 443
    
    Tomcat AJP-Port: [8009]:
    
    ----------------------------------------------------------------------------
    Alfresco FTP-Port
    
    Bitte wählen Sie eine Port-Nummer, die der integrierte Alfresco FTP-Server
    verwenden kann.
    
    Port: [21]:
    
    ----------------------------------------------------------------------------
    Alfresco RMI-Port
    
    Bitte wählen Sie eine Port-Nummer für Alfresco, um Remote-Befehle ausführen zu
    können.
    
    Port: [50500]:
    
    ----------------------------------------------------------------------------
    Admin-Passwort
    
    Bitte geben Sie ein Passwort für den Alfresco Administrator-Account ein.
    
    Admin-Passwort: :
    Passwort wiederholen: :
    ----------------------------------------------------------------------------
    Als Dienst installieren
    
    Optional können Sie Alfresco Community als Dienst registrieren. Hierdurch wird
    er automatisch beim Starten des Rechners mit gestartet.
    
    Alfresco Community als Dienst installieren? [Y/n]: Y
    
    
    ----------------------------------------------------------------------------
    LibreOffice-Serverport
    
    Bitte geben Sie den standardmäßig zu verwendenden Port für den
    LibreOffice-Server ein.
    
    LibreOffice-Serverport [8100]:
    
    ----------------------------------------------------------------------------
    Das Setup ist jetzt bereit, Alfresco Community auf Ihrem Computer zu
    installieren.
    
    Wollen Sie fortfahren? [Y/n]: Y
    
    ----------------------------------------------------------------------------
    Bitte warten Sie, während das Setup Alfresco Community auf Ihrem Computer
    installiert.
    
     Installiere
     0% ______________ 50% ______________ 100%
    
    ----------------------------------------------------------------------------
    Das Setup hat die Installation von Alfresco Community auf Ihrem Computer
    beendet.
    
    Die Liesmich Datei anzeigen [Y/n]: n
    
    Alfresco Community Share starten [Y/n]: n
  • Nun die wichtigsten Konfigurationen in der neuen Installation durchführen und das Indexieren ausschalten:
    sudo vi /opt/alfresco-4.2.f/tomcat/shared/classes/alfresco-global.properties

    => Tomcat-Port, Hostname, etc.

    sudo vi /opt/alfresco-4.2.f/tomcat/shared/classes/alfresco-global.properties
    ### Solr indexing ###
    index.subsystem.name=solr
    dir.keystore=${dir.root}/keystore
    solr.port.ssl=8443

    ändern nach

    ### Solr indexing ###
    index.subsystem.name=noindex
    dir.keystore=${dir.root}/keystore
    #solr.port.ssl=8443
    
  • Nun die Postgresql-Datenbank der NEUEN Installation starten:
    sudo /opt/alfresco-4.2.f/alfresco.sh start postgresql
  • Die Datenbank “alfresco” der neuen Installation löschen:
    cd /opt/alfresco-4.2.f/postgresql/bin/
    ./dropdb -U alfresco alfresco -h localhost -i
    Database "alfresco" will be permanently removed.
    Are you sure? (y/n) y
    Password:
    $ ./createdb -T template0 alfresco -h localhost
    Password:
    $ ./psql -U alfresco alfresco -h localhost < /tmp/alfrescodbdump
    Password:
    (...)
    ALTER TABLE
    ALTER TABLE
    REVOKE
    REVOKE
    GRANT
    GRANT
    $ exit

     

  • Nun die Postgresql-Datenbank der NEUEN Installation stoppen:
    sudo /opt/alfresco-4.2.f/alfresco.sh stop postgresql
  • Nun wird ein neues alf_data, basierend auf der neuen Installation, mit den “alten” contentstore und contentstore.deleted aufgebaut.
    Das Verzeichnis alf_data der neuen Installation auf den NFS-Server kopieren

    sudo cp -r /opt/alfresco_4.2.f/alf_data /mnt/backup/alf_data

    Auf den NFS-Server neues Verzeichnis erstellen

    sudo mkdir /localnfs/alfresco_4.2.f

    Auf dem NFS-Server das neue alf_data aufbauen

    sudo cp -r /localnfs/backup/alf_data /localnfs/alfresco_4.2.f/

    contentstore und contentstore.deletet in das neue alf_data kopieren

    sudo cp -r /localnfs/alfresco/alf_data/contentstore /localnfs/alfresco_4.2.f/alf_data/
    sudo cp -r /localnfs/alfresco/alf_data/contentstore.deleted /localnfs/alfresco_4.2.f/alf_data/

     

  • Nun die alte Alfresco-Installation auf dem NFS-Server umbenennen und die neue Alfresco-Installation nach “alfresco” benennen.
    sudo mv /localnfs/alfresco /localnfs/alfresco_alt
    
    sudo mv /localnfs/alfresco_4.2.f /localnfs/alfresco
  • Nun den NFS-Server neu starten
    sudo service nfs-kernel-server restart
    
  • Der so erstellt neue externe Speicher wird nun nach
    /opt/alfresco-4.2.f/alf_data/

    gemounted.

  • Nun den neuen Alfresco-Server starten und stoppen
    sudo /opt/alfresco-4.2.f/alfresco.sh start
    sudo /opt/alfresco-4.2.f/alfresco.sh stop
    
  • Das Indexing auf der neuen Installation wieder einschalten.
    vi /opt/alfresco-4.2.f/tomcat/shared/classes/alfresco-global.properties
    
    ### Solr indexing ###
    
    index.subsystem.name=noindex
    dir.keystore=${dir.root}/keystore
    #solr.port.ssl=8443

    ändern nach

    ### Solr indexing ###
    index.subsystem.name=solr
    dir.keystore=${dir.root}/keystore
    solr.port.ssl=8443
  • Nun alle Konfigurations- und XML-Files von der alten Installation auf die neue übernehmen.
    /opt/alfresco-4.2.f/tomcat/shared/classes/alfresco/extensions web-extensions
  • Alfresco Java-Memory anpassen. Siehe hier.
  • Den neuen Alfresco Server neu starten und das Log-File überprüfen.
  • Alte installation bei Zeiten löschen.